如何搭建k8s
前期准备准备3台服务器这里我选择通过VMware Workstaion来搭建3个虚拟机,每个配置2CPU和2G内存,如下图:上图可以看出我已经设置了配置主机名与静态IP地址角色主机名IP地址masterhdp01192.168.183.113slavehdp02192.168.183.111slavehdp03192.168.183.112(2)关闭防火墙systemctl stop ...
·
前期准备
准备3台服务器
这里我选择通过VMware Workstaion来搭建3个虚拟机,每个配置2CPU和2G内存,如下图:
上图可以看出我已经设置了配置主机名与静态IP地址
角色 | 主机名 | IP地址 |
master | hdp01 | 192.168.183.113 |
slave | hdp02 | 192.168.183.111 |
slave | hdp03 | 192.168.183.112 |
(2)关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
(4)校正系统时间
系统时间不一致,会导致node节点无法加入集群
查看系统时间:
date
安装ntp
yum install -y ntp
同步时间
ntpdate cn.pool.ntp.org
(5)关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config
setenforce 0
(6)关闭swap => K8S中不支持swap分区
vim /etc/fstab
#/dev/mapper/centos-swap swap swap defaults 0 0
(7)将桥接的IPv4流量传递到iptables的链
# cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
# sysctl --system
3.安装Docker&Kubeadm&Kubelet
以下步骤请在所有节点中都操作:
3.1安装Docker
# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
# yum -y install docker-ce-18.06.1.ce-3.el7
# systemctl enable docker && systemctl start docker
# docker --version
Docker version 18.06.1-ce, build e68fc7a
如报错,请注意:
安装wget
yum -y install wget
3.2添加阿里云Yum软件源
复制代码
# cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
复制代码
3.3安装Kubeadm&Kubelet&Kubectl
注意:本次部署K8S版本号为1.13.3
yum install -y kubelet-1.13.3 kubeadm-1.13.3 kubectl-1.13.3
systemctl enable kubelet
遇到的一些坑如下:
① 碰到需要kubernetes-cni的问题:
#####错误:软件包:kubelet-1.13.3-0.x86_64 (kubernetes)
需要:kubernetes-cni = 0.6.0
可用: kubernetes-cni-0.3.0.1-0.07a8a2.x86_64 (kubernetes)
kubernetes-cni = 0.3.0.1-0.07a8a2
可用: kubernetes-cni-0.5.1-0.x86_64 (kubernetes)
kubernetes-cni = 0.5.1-0
可用: kubernetes-cni-0.5.1-1.x86_64 (kubernetes)
kubernetes-cni = 0.5.1-1
可用: kubernetes-cni-0.6.0-0.x86_64 (kubernetes)
kubernetes-cni = 0.6.0-0
正在安装: kubernetes-cni-0.7.5-0.x86_64 (kubernetes)
kubernetes-cni = 0.7.5-0
您可以尝试添加 --skip-broken 选项来解决该问题
您可以尝试执行:rpm -Va --nofiles --nodigest
yum install -y kubelet-1.13.3 kubeadm-1.13.3 kubectl-1.13.3 kubernetes-cni-0.6.0
② 使用yum安装程序时,提示xxx.rpm公钥尚未安装
从 https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg 检索密钥
导入 GPG key 0xA7317B0F:
用户ID : "Google Cloud Packages Automatic Signing Key <gc-team@google.com>"
指纹 : d0bc 747f d8ca f711 7500 d6fa 3746 c208 a731 7b0f
来自 : https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
e3438a5f740b3a907758799c3be2512a4b5c64dbe30352b2428788775c6b359e-kubectl-1.13.3-0.x86_64.rpm 的公钥尚未安装
失败的软件包是:kubectl-1.13.3-0.x86_64
GPG 密钥配置为:https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
解决:使用 yum install xxx.rpm --nogpgcheck 命令格式跳过公钥检查,比如跳过kubectl和kubeadm的公钥检查如下命令:
yum install kubectl-1.13.3-0.x86_64 --nogpgcheck
yum install kubeadm-1.13.3-0.x86_64 --nogpgcheck
查看kubeadm、kubelet版本
kubelet --version
kubeadm version
3.4 部署Kubernetes Master
以下步骤请在k8s-master节点上操作:
kubeadm init \
--apiserver-advertise-address=192.168.198.111 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.13.3 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16
具体参考地址
https://www.cnblogs.com/imstrive/p/11409008.html#autoid-2-0-0
更多推荐
已为社区贡献1条内容
所有评论(0)