《从零搭建k8s集群服务器硬盘配置要求.docx》由会员分享,可在线阅读,更多相关《从零搭建k8s集群服务器硬盘配置要求.docx(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、从零搭建k8s集群L服务器硬盘配置要求一台或者多台服务器,操作系统Centos7;硬盘配置:内存4G, CPU4核,硬盘100G;集群中所有机器之间网络互通;可以访问外网,因为需要拉取镜像;关闭swap分区;2 .搭建k8s集群部署方式目前生产环节部署k8s集群主要有两种方式(t)kubeadm: kubeadm 是k8s 部署工具,提供 kubeadmin init 和 kubeadmjoin,用于快速部署k8s集群;官网地址:Kubeadm | Kubernetes二进制包:从GitHub下载发行部的二进制包,手动部署每个组件,组成k8s 集群;说明:Kubeadm降低部署门槛,但是屏蔽了
2、很多细节,问题很难排查。如果想要 更可控,推荐使用二级制包部署k8s集群,虽然手动部署麻烦点,期间可以学习 很多工作原理,也有利于后期维护。3 .搭建k8s集群准备环境3.1 准备环境角色IPk8s-master192. 168. 23. 12k8s-nodel192. 168. 23. 9k8s-node2192. 168. 23. 103. 2防火墙管理(所有服务器)systemctl stop firewalld #关闭防火墙5. 2. 2生成etcd证书5. 2. 2. 1自签证书颁发结构(CA)创建工作目录mkdir -pv /TLS/ etcd,k8scd TLS/etcd自签CA
3、cat ca-config. json ca-csr. json server-csr.json /opt/etcd/cfg/etcd. conf /usr/lib/systemd/system/etcd. service ca-config. json ca-csr. json kube-proxy-csr. json server-csr. json /etc/hosts /etc/sysctl. d/k8s. conf /opt/kubernetes/cfg/kube-apiserver. conf /opt/kubernetes/cfg/token. csv EOF6cd622a46a
4、f13091337d98f0ac9da4d0, kubelet-bootstrap, 10001, “system:nodebootstrapper” EOF5. 5. 4 system 管理 apiservercat /usr/lib/systemd/system/kube-apiserver, service /opt/kubernetes/cfg/kube-controller-manager. conf /usr/lib/systemd/system/kube-controller-manager. service /opt/kubernetes/cfg/kube-scheduler.
5、 conf /usr/lib/systemd/system/kube-scheduler. service /configure.sh EOF# ! /bin/bash# create TLS Bootstrapping Token# 创建 kubelet bootstrapping 配置文件export PATH=$PATH:/opt/kubernetes/binexport KUBE_APISERVER=:6443export B00TSTRAP_T0KEN=z/6cd622a46afl3091337d98f0ac9da4d0/z# 创建绑定角色kubectl create cluster
6、rolebinding kubelet-bootstrap 一-clusterrole=system:node-bootstrapper 一-user=kubelet-bootstrap# 设置cluster参数kubectl config set-cluster kubernetes 一certificate-authority=/opt/kubernetes/ssl/ca. pem -embed-certs=true server=$KUBE_APISERVER 一一kubeconf ig=bootstrap. kubeconfig# 设置客户端认证参数kubectl config set
7、-credentials kubelet-bootstrap token=$ B00TSTRAP_T0KEN 一一kubeconfig=bootstrap. kubeconfig#设置上下文kubectl config set-context default -cluster=kubernetes - -user=kubelet-bootstrap -kubeconfig=bootstrap. kubeconfigkubectl config use-context default -kubeconfig=bootstrap. kubeconfig#创建kube-proxy配置文件kubect
8、l config set-cluster kubernetes -certificate-authority=/opt/kubernetes/ssl/ca. pem - -embed-certs=true server=$KUBE_APISERVER 一kubeconfig=kube-proxy. kubeconfigkubectl config set-credentials kube-proxy -client-certificate=/opt/kubernetes/ssl/kube-proxy. pem - -client-key=/opt/kubernetes/ssl/kube-proxy-key. pem 一一embed-certs=true 一kubeconf ig=kube-proxy. kubeconfigkub