1.Ubuntu静的IPアドレス設定
/ etc / network / interfacesを編集します
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens33
iface ens33 inet static
address 172.16.7.10/24
gateway 172.16.7.2
dns-nameserver 114.114.114.114
~
VMのクローンを作成した後、IPアドレスを変更した後も、元のアドレスはそのまま残り、新しいアドレスがセカンダリIPアドレスになります。
解決:
ip addr flush dev ens33
ifdown etns33
ifup ens33
2.kubeadmのインストール
参照公式ウェブサイト:
https ://kubernetes.io/zh/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
ファイアウォール/ selinuxとスワップが無効になっていることに注意してください(swapoff -a)
カーネルはipv4転送を有効にします
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
インストールに使用するイメージ。指定されたバージョンをダウンロードします。
-rw-r--r-- 1 root root 19377756 Mar 2 20:23 containerd.io_1.2.13-1_amd64.deb
-rw-r--r-- 1 root root 22841888 Mar 11 12:46 docker-ce_19.03.8~3-0~ubuntu-xenial_amd64.deb
-rw-r--r-- 1 root root 42514382 Mar 11 12:46 docker-ce-cli_19.03.8~3-0~ubuntu-xenial_amd64.deb
-rw-r--r-- 1 root root 8776166 Jul 9 2019 cri-tools_1.13.0-00_amd64_6930e446a683884314deef354fbd8a7c5fc2be5c69c58903ad83b69b42529da4.deb
-rw-r--r-- 1 root root 8163348 Mar 26 08:05 kubeadm_1.18.0-00_amd64_7931ad3141d9e137be4cd8e2c8ab680a2b98bd1ed6e8d4145e35d547fd0ad709.deb
-rw-r--r-- 1 root root 8822028 Mar 26 08:06 kubectl_1.18.0-00_amd64_265ff656100b82f5f3d80f5c8ab12f8a8c1c54c72e509e4d2612dec464eb64f6.deb
-rw-r--r-- 1 root root 19431624 Mar 26 08:08 kubelet_1.18.0-00_amd64_22b5dc9edb80f7791036fb47223c1cbbeb7685f332cdcbf9cfa12b858f9d19bb.deb
-rw-r--r-- 1 root root 6473084 Mar 26 2019 kubernetes-cni_0.7.5-00_amd64_b38a324bb34f923d353203adf0e048f3b911f49fa32f1d82051a71ecfe2cd184.deb
-rw-r--r-- 1 root root 107078660 Mar 5 2018 rkt_1.29.0-1_amd64_ea87d719359030f33fd48890875c934135c62eccda72c37d79ff604307b905b5.deb
docker / kubernetesをインストールすると、不足しているコンポーネントが報告されます。プロンプトに従ってインストールしてください。
apt install ebtables socat ethtool conntrack libnetfilter-conntrack3
構成ファイルを使用して、国内のkubernetesのバージョンとソースを指定します
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
mode: "ipvs"
---
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
kubernetesVersion: v1.18.1
apiServer:
certSANs:
- "172.16.7.10"
extraArgs:
allow-privileged: "true"
feature-gates: "VolumeSnapshotDataSource=true,CSINodeInfo=true,CSIDriverRegistry=true"
controlPlaneEndpoint: "172.16.7.10:6443"
etcd:
local:
dataDir: /var/lib/etcd
networking:
# This CIDR is a Canal default. Substitute or remove for your CNI provider.
podSubnet: "10.244.0.0/16"
controllerManager:
extraArgs:
address: 0.0.0.0
scheduler:
extraArgs:
address: 0.0.0.0
imageRepository: gcr.azk8s.cn/google-containers
kubeadm init
パラメータを追加します:-ignore-preflight-errors = all、作業ノードの結合を含む
CNIは単にフランネルを選択します
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/2140ac876ef134e0ed5af15c65e414cf26827915/Documentation/kube-flannel.yml
3.完了
root@master:~# kubectl get nodes
NAME STATUS ROLES AGE VERSION
master Ready master 24h v1.18.0
node1 Ready <none> 24h v1.18.0
node2 Ready <none> 24h v1.18.0
```