本次部署实战需要科学上网,才能顺利安装和部署kubernetes用于学习和实践,请确保您已经完成了相关操作;
本次搭建过程由五部分实战构成:
本次实战一共有四台CentOS7机器,基本信息如下:
hostname | IP地址 | 身份 | 配置 |
---|---|---|---|
localhost | 192.168.119.157 | master,主控节点 | 双核,2G内存 |
node1 | 192.168.119.156 | node,一号业务节点 | 双核,4G内存 |
node2 | 192.168.119.159 | node,二号业务节点 | 双核,2G内存 |
normal | 192.168.119.158 | 普通linux服务器 | 单核,1G内存 |
PROXY_HOST=127.0.0.1
export all_proxy=http://$PROXY_HOST:8118
export ftp_proxy=http://$PROXY_HOST:8118
export http_proxy=http://$PROXY_HOST:8118
export https_proxy=http://$PROXY_HOST:8118
export no_proxy=localhost,172.16.0.0/16,192.168.0.0/16.,127.0.0.1,10.10.0.0/16
接下来,就在CentOS机器上开始实战吧;
echo "proxy=http://127.0.0.1:8118" >> /etc/yum.conf
yum makecache
systemctl stop firewalld && systemctl disable firewalld
swapoff -a
然后再打开文件/etc/fstab,找到swap有关的一行,如下图红框所示,在这一行的最左边加上"#",将该行注释掉:
执行free -m命令检查,swap值应该都为0了,如下图红框所示:
setenforce 0
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
yum install -y docker && systemctl enable docker && systemctl start docker
安装完毕后执行命令docker version检查服务,正常情况下显示以下信息:
Client:
Version: 1.13.1
API version: 1.26
Package version: docker-1.13.1-75.git8633870.el7.centos.x86_64
Go version: go1.9.4
Git commit: 8633870/1.13.1
Built: Fri Sep 28 19:45:08 2018
OS/Arch: linux/amd64
Server:
Version: 1.13.1
API version: 1.26 (minimum version 1.12)
Package version: docker-1.13.1-75.git8633870.el7.centos.x86_64
Go version: go1.9.4
Git commit: 8633870/1.13.1
Built: Fri Sep 28 19:45:08 2018
OS/Arch: linux/amd64
Experimental: false
mkdir -p /etc/systemd/system/docker.service.d
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:8118" "NO_PROXY=localhost,172.16.0.0/16,127.0.0.1,10.244.0.0/16"
[Service]
Environment="HTTP_PROXY=https://127.0.0.1:8118" "NO_PROXY=localhost,172.16.0.0/16,127.0.0.1,10.244.0.0/16"
systemctl daemon-reload && systemctl restart docker
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
EOF
yum install -y kubelet kubeadm kubectl \
&& systemctl enable kubelet \
&& systemctl start kubelet
至此,标准化机器的工作就完成了;
如果您使用了多台电脑搭建kubernetes环境,那么每台电脑都要执行上述操作;
如果您是用VMware来搭建kubernetes环境,那么建议您现在先关闭当前的虚拟机,将真个虚拟机文件夹做备份,后续搭建环境就不用重新创建系统了,直接复制一份这个文件夹,再打开运行就是个标准化的机器了;
下一章中,我们一起用上述标准化操作后的机器来配置master节点;