Centos7
docker
Kubernetes
nodes
首先在国内镜像源,如华为源下载个Centos7的minimal iso镜像,安装后,先更换为阿里云的国内yum源。
# 备份原系统的yum源 cd /etc/yum.repo.d mkdir bak mv *.repo bak/ # 下载阿里云的yum源 yum install -y wget wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 或者 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecache yum update yum upgrade # 新装的server没有ifconfig命令 yum install -y net-tools
本实验基于NAT
模式新建三台虚拟机,以master节点为例,其他从节点类似。
# 查看网卡 -> 通常是 ens33 ifconfig | ip addr # 修改配置文件 cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.bak vi /etc/sysconfig/network-scripts/ifcfg-ens33 ---修改后--- BOOTPROTO="static" NAME="ens33" DEVICE="ens33" ONBOOT="yes" IPADDR=192.168.181.135 NETMASK=255.255.255.0 GATEWAY=192.168.181.2 DNS1=114.114.114.114 ----------- # 重启网卡 service network restart ifconfig | ip addr
永久修改主机名,以master为例,其他类似。
# master节点,node1 node2同样设置hostname hostnamectl set-hostname master # exit 后重新 login # 修改hosts文件,追加模式 cat >> /etc/hosts << EOF > 192.168.181.135 master > 192.168.181.136 node1 > 192.168.181.137 node2 > EOF # 分发hosts文件,输入密码后确认 scp /etc/hosts node1:/etc/hosts scp /etc/hosts node2:/etc/hosts
在master节点上配置,然后分发即可
# 生成公私钥,一路回车 ssh-keygen # 分发,不指定公钥默认用 /root/.ssh/id_rsa.pub ssh-copy-id root@node1 ssh-copy-id root@node2 # 验证ssh互信,首次选择yes ssh node1 ssh node2
Centos7的kernel版本为3.10,运行docker和k8s的时候,会出错,升级较新版本的kernel。
# 查看内核信息 uname -rs # elrepo pub key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # install elrepo, choose u own version yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm # 查看内核版本 yum --disablerepo="*" --enablerepo="elrepo-kernel" list available # 安装内核 lt代表long term 长期支持版本 yum --disablerepo='*' --enablerepo=elrepo-kernel install kernel-lt # 查看配置 awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg # 0 : CentOS Linux (4.4.186-1.el7.elrepo.x86_64) 7 (Core) # 1 : CentOS Linux (3.10.0-957.27.2.el7.x86_64) 7 (Core) # 2 : CentOS Linux (3.10.0-957.21.3.el7.x86_64) 7 (Core) # 默认用更新的内核,重启主机 grub2-set-default 0 && reboot
#!/bin/bash # 1.配置国内源 cd /etc/yum.repo.d mkdir bak mv *.repo bak/ yum install -y wget wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all yum makecache yum update yum upgrade yum install -y net-tools # 2.配置静态IP cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.bak cat > /etc/sysconfig/network-scripts/ifcfg-ens33 << EOF BOOTPROTO="static" NAME="ens33" DEVICE="ens33" ONBOOT="yes" IPADDR=192.168.181.135 NETMASK=255.255.255.0 GATEWAY=192.168.181.2 DNS1=114.114.114.114 EOF service network restart # 3.配置hostname,手动分发hosts文件 hostnamectl set-hostname master cat >> /etc/hosts << EOF 192.168.181.135 master 192.168.181.136 node1 192.168.181.137 node2 EOF # 4.ssh互信参考上面,下同 # 5.升级内核