1、準備-docker+k8s+kubesphere準
環境準備
角色 | IP位址 | 主機名 | docker版本 | 硬體 | 作業系統 |
---|---|---|---|---|---|
主 | 192.168.5.151 | node151 | docker18.09.9 | 6核10G | CentOS7.8 |
節點 | 192.168.5.152 | node152 | docker18.09.9 | 6核10G | CentOS7.8 |
節點 | 192.168.5.153 | node153 | docker18.09.9 | 6核10G | CentOS7.8 |
伺服器綁定
cat >> /etc/hosts <<EOF
192.168.5.151 node151
192.168.5.152 node152
192.168.5.153 node153
EOF
設定CentOS-Base
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
更新系統
yum -y update
相應工具及docker-ce
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
關閉防火牆
關閉防火牆
systemctl stop firewalld.service && systemctl disable firewalld.service
systemctl stop firewalld && systemctl disable firewalld
關閉 SeLinux
#臨時修改
setenforce 0
#永久修改,重新開機伺服器後生效
sed -i '7s/enforcing/disabled/' /etc/selinux/config
關閉swap分區
修改/etc/fstab檔案,注釋掉 SWAP 的自動挂載,使用free -m确認 swap 已經關閉
//手動關閉swap
swapoff -a
-----------------------------------------------------
#手動修改
vim /etc/fstab
-----------------------------------------------------
/dev/mapper/centos-root / xfs defaults 0 0
UUID=8bb18265-c2f5-46da-875e-0410ac4d3aeb /boot xfs defaults 0 0
#/dev/mapper/centos-swap swap 把這一行注釋掉
#檢視swap是否關閉
free -m
-----------------------------------------------------
total used free shared buff/cache available
Mem: 1994 682 612 9 699 1086
Swap: 0 0 0
同步時間
#安裝chrony
yum -y install chrony
-----------------------------------------------------
#修改同步伺服器位址為阿裡雲
sed -i.bak '3,6d' /etc/chrony.conf && sed -i '3cserver ntp1.aliyun.com iburst' /etc/chrony.conf
-----------------------------------------------------
#啟動chronyd及加入開機自啟
systemctl start chronyd && systemctl enable chronyd
-----------------------------------------------------
#檢視同步結果
chronyc sources
-----------------------------------------------------
[[email protected] ~]# chronyc sources
210 Number of sources = 4
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^~ 139.199.214.202 2 6 77 34 -13ms[ -73ms] +/- 68ms
^* tick.ntp.infomaniak.ch 1 6 35 26 -24ms[ -84ms] +/- 126ms
^? electrode.felixc.at 0 8 0 - +0ns[ +0ns] +/- 0ns
^? a.chl.la 2 6 37 94 +153ms[ -19.6s] +/- 134ms
建立k8s.conf檔案
#向檔案中寫入以下内容
cat >/etc/sysctl.d/k8s.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
#檢查
cat /etc/sysctl.d/k8s.conf
#執行以下指令生效
modprobe br_netfilter && sysctl -p /etc/sysctl.d/k8s.conf
安裝ipvs
腳本建立了的/etc/sysconfig/modules/ipvs.modules檔案,保證在節點重新開機後能自動加載所需子產品。使用lsmod | grep -e ip_vs -e nf_conntrack_ipv4指令檢視是否已經正确加載所需的核心子產品
//向檔案中寫入以下内容
cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
//修改權限以及檢視是否已經正确加載所需的核心子產品
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4
結果如下:
[[email protected] ~]# chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4
ip_vs_sh 12688 0
ip_vs_wrr 12697 0
ip_vs_rr 12600 0
ip_vs 145497 6 ip_vs_rr,ip_vs_sh,ip_vs_wrr
nf_conntrack_ipv4 15053 2
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
nf_conntrack 139264 7 ip_vs,nf_nat,nf_nat_ipv4,xt_conntrack,nf_nat_masquerade_ipv4,nf_conntrack_netlink,nf_conntrack_ipv4
libcrc32c 12644 4 xfs,ip_vs,nf_nat,nf_conntrack
安裝ipset和ipvsadm(便于檢視 ipvs 的代理規則)
yum -y install ipset ipvsadm
免密操作
node151、node152、node153
1、執行
ssh-keygen -t rsa 一路回車
2、在node151上執行
cd /root/.ssh
cp id_rsa.pub authorized_keys
vim authorized_keys
4、将node152、node153下/root/.ssh/id_rsa.pub的公鑰内容複制在node151的authorized_keys裡,儲存退出
5、複制
scp authorized_keys node152:$PWD
scp authorized_keys node153:$PWD
免密測試
ssh node152
退出
exit