|NO.Z.00003|——————————|^^ 部署 ^^|——|Kubernetes&kubeadm部署.V02|——|系统初始化|
一、部署规划
### --- 部署规划
~~~ centos7.x.server1: k8s-master IP:10.10.10.11
~~~ centos7.x.server2: k8s-node1 IP:10.10.10.12
~~~ centos7.x.server3: k8s-node2 IP:10.10.10.13
二、系统初始化
### --- 关闭防火墙
[root@server11 ~]# systemctl stop firewalld.service
[root@server11 ~]# systemctl disable firewalld.service
### --- 关闭selinux
[root@server11 ~]# sed -i 's/enforcing/disabled/' /etc/selinux/config #永久
[root@server11 ~]# setenforce 0 #临时
### --- 关闭swap
[root@server11 ~]# swapoff -a #临时
[root@server11 ~]# sed -ri 's/.*swap.*/#&/' /etc/fstab #永久
### --- 主机名
[root@server11 ~]# hostnamectl set-hostname k8s-master
[root@server12 ~]# hostnamectl set-hostname k8s-node1
[root@server13 ~]# hostnamectl set-hostname k8s-node2
### --- 在master添加hosts:
[root@k8s-master ~]# cat >> /etc/hosts << EFO
> 10.10.10.11 k8s-master
> 10.10.10.12 k8s-node1
> 10.10.10.13 k8s-node2
> EFO
### --- 将桥接的IPV4流量传递到iptables的链:
[root@k8s-master ~]# cat > /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
[root@k8s-node1 ~]# cat > /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
[root@k8s-node2 ~]# cat > /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF
~~~ 生效
[root@k8s-master ~]# sysctl --system
[root@k8s-node1 ~]# sysctl --system
[root@k8s-node2 ~]# sysctl --system
### --- 时间同步
[root@k8s-master ~]# yum install -y ntpdate
[root@k8s-node1 ~]# yum install -y ntpdate
[root@k8s-node2 ~]# yum install -y ntpdate
[root@k8s-master ~]# ntpdate time.windows.com #设置当前时间和windows主机的时间一致
19 Feb 15:18:49 ntpdate[11137]: adjust time server 20.189.79.72 offset 0.069848 sec
[root@k8s-node1 ~]# ntpdate time.windows.com
19 Feb 15:18:53 ntpdate[10229]: adjust time server 20.189.79.72 offset 0.064745 sec
[root@k8s-node2 ~]# ntpdate time.windows.com
19 Feb 15:18:56 ntpdate[10286]: adjust time server 20.189.79.72 offset 0.070064 sec
三、所有节点安装Docker/kubeadm/kubelet:
### --- 所有节点安装Docker/kubeadm/kubelet:
~~~ Kubernetes默认CRI(容器运行时)为Docker,因此先安装Docker。
### --- 安装Docker(三个节点均部署)
~~~ k8s-master部署
[root@k8s-master ~]# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
[root@k8s-master ~]# yum install -y docker-ce-18.06.1.ce-3.el7
[root@k8s-master ~]# systemctl enable docker && systemctl start docker
[root@k8s-master ~]# docker --version
Docker version 18.06.1-ce, build e68fc7a
~~~ k8s-node1部署
[root@k8s-node1 ~]# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
[root@k8s-node1 ~]# yum install -y docker-ce-18.06.1.ce-3.el7
[root@k8s-node1 ~]# systemctl enable docker && systemctl start docker
[root@k8s-node1 ~]# docker --version
Docker version 18.06.1-ce, build e68fc7a
~~~ k8s-node2部署
[root@k8s-node2 ~]# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
[root@k8s-node2 ~]# yum install -y docker-ce-18.06.1.ce-3.el7
[root@k8s-node2 ~]# systemctl enable docker && systemctl start docker
[root@k8s-node2 ~]# docker --version
Docker version 18.06.1-ce, build e68fc7a
### --- 添加阿里云YUM软件源:设置仓库地址
[root@k8s-master ~]# cat > /etc/docker/daemon.json << EOF
> {
> "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
> }
> EOF
[root@k8s-master ~]# systemctl restart docker
[root@k8s-master ~]# docker info
Registry Mirrors:
https://b9pmyelo.mirror.aliyuncs.com/
[root@k8s-node1 ~]# cat > /etc/docker/daemon.json << EOF
> {
> "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
> }
> EOF
[root@k8s-node1 ~]# systemctl restart docker
[root@k8s-node1 ~]# docker info
Registry Mirrors:
https://b9pmyelo.mirror.aliyuncs.com/
[root@k8s-node2 ~]# cat > /etc/docker/daemon.json << EOF
> {
> "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
> }
> EOF
[root@k8s-node2 ~]# systemctl restart docker
[root@k8s-node2 ~]# docker info
Registry Mirrors:
https://b9pmyelo.mirror.aliyuncs.com/
### --- 添加阿里云YUM软件源:k8s软件源地址
[root@k8s-master ~]# cat > /etc/yum.repos.d/kubernetes.repo << EOF
> [kubernetes]
> make=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
[root@k8s-node1 ~]# cat > /etc/yum.repos.d/kubernetes.repo << EOF
> [kubernetes]
> make=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
### --- 安装kubeadm,kubelet和kubectl
[root@k8s-master ~]# yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0
Installed:
kubeadm.x86_64 0:1.18.0-0 kubectl.x86_64 0:1.18.0-0 kubelet.x86_64 0:1.18.0-0
[root@k8s-master ~]# systemctl enable kubelet
[root@k8s-node1 ~]# yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0
Installed:
kubeadm.x86_64 0:1.18.0-0 kubectl.x86_64 0:1.18.0-0 kubelet.x86_64 0:1.18.0-0
[root@k8s-node1 ~]# systemctl enable kubelet
[root@k8s-node2 ~]# yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0
Installed:
kubeadm.x86_64 0:1.18.0-0 kubectl.x86_64 0:1.18.0-0 kubelet.x86_64 0:1.18.0-0
[root@k8s-node2 ~]# systemctl enable kubelet
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通