k8sノードノードのデプロイ
Dockerエンジンのデプロイ
node1とnode2にdockerをインストールします
1. yum install docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl start docker
2.再起動を高速化するためにミラーリングを構成するには、AlibabaCloudを参照してください
systemctl daemon-reload
systemctl restart docker
フランネルネットワーク構成
1.フランネルで使用するために割り当てられたサブネットセグメントをETCDに書き込みます
[root@master ssl]# ls
ca-key.pem ca.pem server-key.pem server.pem
[root@master ssl]# /opt/etcd/bin/etcdctl --ca-file=ca.pem --cert-file=server.pem --key-file=server-key.pem --endpoints="https://192.168.176.181:2379,https://192.168.176.182:2379,https://192.168.176.183:2379" set /coreos.com/network/config '{ "Network": "172.17.0.0/16", "Backend": {"Type": "vxlan"}}'
返回内容
{ "Network": "172.17.0.0/16", "Backend": {"Type": "vxlan"}}
書かれた情報を見る
2.ノードノード構成フランネルネットワーク
①すべてのノードノードにコピーします(ノードノードにのみデプロイする必要があります)
tar xf flannel-v0.10.0-linux-amd64.tar.gz
②k8s作業ディレクトリを作成します
[root @ node1〜] #mv mk-docker-opts.sh flanneld / opt / kubernetes / bin /
③vimflannel.sh
#!/bin/bash
ETCD_ENDPOINTS=${1:-"http://127.0.0.1:2379"}
cat <<EOF >/opt/kubernetes/cfg/flanneld
FLANNEL_OPTIONS="--etcd-endpoints=${ETCD_ENDPOINTS} \
-etcd-cafile=/opt/etcd/ssl/ca.pem \
-etcd-certfile=/opt/etcd/ssl/server.pem \
-etcd-keyfile=/opt/etcd/ssl/server-key.pem"
EOF
cat <<EOF >/usr/lib/systemd/system/flanneld.service
[Unit]
Description=Flanneld overlay address etcd agent
After=network-online.target network.target
Before=docker.service
[Service]
Type=notify
EnvironmentFile=/opt/kubernetes/cfg/flanneld
ExecStart=/opt/kubernetes/bin/flanneld --ip-masq \$FLANNEL_OPTIONS
ExecStartPost=/opt/kubernetes/bin/mk-docker-opts.sh -k DOCKER_NETWORK_OPTIONS -d /run/flannel/subnet.env
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable flanneld
systemctl restart flanneld
④スクリプトを実行する
bash flannel.sh https://192.168.176.181:2379,https://192.168.176.182:2379,https://192.168.176.183:2379
フランネルとドッキングするDocker
Docker構成ファイルを編集する
vim /usr/lib/systemd/system/docker.service
docke0 IPアドレスを確認してください(再起動が有効になる前に)
restartを有効にします
systemctl daemon-reload
systemctl restart docker
node2ノードは同じ操作を実行します
テスト
コンテナを実行する'
[root@node1 ~]# docker run -it centos:7 /bin/bash
node1ノードのコンテナーがnode2ノードのコンテナーにpingを実行します