
kuadmin部署k8s1.16.3
1.系统环境准备
基础环境
[root@tike ~]# systemctl stop firewalld [root@tike ~]# selinux=disabled [root@tike ~]# swapoff -a修改系统参数
# 创建 /etc/sysctl.d/k8s.conf 文件 [root@tike ~]# cat > /etc/sysctl.d/k8s.conf << EOF net.ipv4.ip_forward = 1 net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF生效配置文件
[root@tike ~]# modprobe br_netfilter [root@tike ~]# sysctl -p /etc/sysctl.d/k8s.conf修改hosts
[root@tike ~]# cat > /etc/hosts << EOF master 192.168.200.221 node1 192.168.200.222 node2 192.168.200.223 EOF安装docker
[root@tike ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo [root@tike ~]# yum list docker-ce --showduplicates | sort -r [root@tike ~]# yum install docker-ce-18.06.1.ce-3.el7 -y启动
[root@tike ~]# systemctl enable docker [root@tike ~]# systemctl start docker
2.安装kubeadm、kubelet、kubectl
每个节点都安装
1)配置可用的国内yum源用于安装
[root@tike ~]# cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF官网的yum源如下
[root@tike ~]# cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kube* EOF2)安装kubeadm、kubelet、kubectl
查看相关版本,然后来选择 [root@tike ~]# yum list kubelet --showduplicates | sort -r [root@tike ~]# yum list kubeadm --showduplicates | sort -r [root@tike ~]# yum list kubectl --showduplicates | sort -r 指定版本 [root@tike ~]# yum install -y kubeadm-1.16.3-0 kubelet-1.16.3-0 kubectl-1.16.3-0 安装,默认最新版 [root@tike ~]# yum install -y kubelet kubeadm kubectl 安装 kubeadm 时候会默认安装 kubectl ,所以不需要单独安装kubectl [root@tike ~]# systemctl daemon-reload && systemctl enable kubelet && systemctl start kubelet
3.启动K8S集群
kubeadm init
kubeadm init --apiserver-advertise-address=172.16.18.131 --image-repository registry.aliyuncs.com/google_containers --ignore-preflight-errors=all --kubernetes-version v1.16.3 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
--apiserver-advertise-address填写master机器网卡ip
4.安装网络插件
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/2140ac876ef134e0ed5af15c65e414cf26827915/Documentation/kube-flannel.yml
5.节点加入
Your Kubernetes control-plane has initialized successfully!
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
https://kubernetes.io/docs/concepts/cluster-administration/addons/
Then you can join any number of worker nodes by running the following on each as root:
kubeadm join 172.16.18.131:6443 --token 9x2xi2.y3a7iqy1yac6znwy \
--discovery-token-ca-cert-hash sha256:152ca572bf26b0b6bbe8f55ac93054714405f0cca2689c362126844e8853361d
6.查看当前集群
[tikr@1hao7-tianbaochao ~]$ sudo kubectl get nodes NAME STATUS ROLES AGE VERSION 1hao7-tianbaochao.novalocal Ready master 48m v1.16.3 taike-002-fengruolin.novalocal Ready <none> 40m v1.16.3 taike-003-fengruolin.novalocal Ready <none> 11m v1.16.3 taike-005-fengruolin.novalocal Ready <none> 23m v1.16.3 taike-006-fengruolin.novalocal Ready <none> 21m v1.16.3 taike-007-fengruolin.novalocal Ready <none> 22m v1.16.3 taike-008-fengruolin.novalocal Ready <none> 22m v1.16.3 taike-009-fengruolin.novalocal Ready <none> 22m v1.16.3 taike-010-fengruolin.novalocal Ready <none> 26m v1.16.3