CentOS7.3.1611はk8s1.5.2クラスターを展開します
最新のk8s1.5.3と1.4.9が12時間前に更新されたことを知りましたが、インストール方法は同じである必要があります
参照
Kubernetes Definitive Guide(Second Edition)
http://jevic.blog.51cto.com/2183736/1881455
https://my.oschina.net/u/1791060/blog/830023
http://blog.csdn.net/lic95/article/details/55015284
https://coreos.com/etcd/docs/latest/clustering.html
次のドキュメントは、k8s 1.5.xシリーズの単純で体系的なテストです。クラスターの展開、PODの作成、[ドメイン名の解決](https://cloud.tencent.com/product/cns?from=10680)、ダッシュボード、監視、逆プロキシ、ストレージ、ログ、および双方向認証が含まれます。実用は記載されていません。この一連のドキュメント環境の展開では、1.5.2、1.5.3、1.5.4以降のバージョンに適用可能なバイナリプログラムグリーンインストールを使用します。githubのサンプルURLをいつでも更新することを忘れないでください。
k8sクラスターのインストールと展開
http://jerrymin.blog.51cto.com/3002256/1898243
k8sクラスターRC、SVC、PODの展開
http://jerrymin.blog.51cto.com/3002256/1900260
k8sクラスターコンポーネントkubernetes-dashboardおよびkube-dnsの展開
http://jerrymin.blog.51cto.com/3002256/1900508
K8sクラスター監視コンポーネントヒープスターの展開
http://jerrymin.blog.51cto.com/3002256/1904460
K8sクラスターリバースプロキシ[ロードバランシング](https://cloud.tencent.com/product/clb?from=10680)コンポーネントの展開
http://jerrymin.blog.51cto.com/3002256/1904463
k8sクラスターマウントボリュームnfs
http://jerrymin.blog.51cto.com/3002256/1906778
k8sクラスターマウントボリュームglusterfs
http://jerrymin.blog.51cto.com/3002256/1907274
k8sクラスターログコレクションのELKアーキテクチャ
http://jerrymin.blog.51cto.com/3002256/1907282
建築
k8s-マスターインストールetcd、kubernetes-サーバー/クライアント
k8s-node1 install docker、kubernetes-node / client、flannel
k8s-node2 install docker、kubernetes-node / client、flannel
1.YUMがインストールするバージョンは以下のとおりです。
CentOS7.3.1611Yumのインストール
kubernetes-1.4.0-0.1.git87d9d8d.el7
kubernets(マスター、ノード、クライアント、およびそれらに関連する依存関係)をインストールします
kubernetes-master-1.4.0-0.1.git87d9d8d.el7
3つのバイナリプログラムを生成しますkube-apiserverkube-controller-manager kube-scheduler
kubernetes-node-1.4.0-0.1.git87d9d8d.el7
docker-1.12.5-14.el7.centosを含む多くの依存パッケージをインストールし、kubeletkube-proxyをインストールします
kubernetes-client-1.4.0-0.1.git87d9d8d.el7
バイナリプログラムkubectlを生成します
kubernetes-unit-test-1.4.0-0.1.git87d9d8d.el7
etcd-3.0.15-1.el7、golang、gcc、glibc、rsyncなどを含む多くの依存パッケージをインストールします。
flannel-0.5.5-2.el7
バイナリプログラムフランネルを生成します
次に、この記事では、バイナリパッケージバージョンを選択して、テスト用の最新バージョンをインストールします
githubアドレス:
etct: https://github.com/coreos/etcd/releases
flannel: https://github.com/coreos/flannel/releases
kubernetes: https://github.com/kubernetes/kubernetes/releases
docker: https://docs.docker.com/engine/installation/linux/centos/
k8s 1.5.2
https://dl.k8s.io/v1.5.2/kubernetes-server-linux-amd64.tar.gz
11個のバイナリプログラムが生成されますhyperkubekubectl kubelet kube-scheduler kubeadm kube-controller-manager kube-discovery kube-proxy kube-apiserver kube-dns kubefed
https://dl.k8s.io/v1.5.2/kubernetes-client-linux-amd64.tar.gz
2つのバイナリプログラムを生成しますkube-proxykubefed
etcd 3.1.10
https://github.com/coreos/etcd/releases/download/v3.1.0/etcd-v3.1.0-linux-amd64.tar.gz
docker 1.13.1
https://get.docker.com/builds/Linux/x86_64/docker-1.13.1.tgz
flannel
https://github.com/coreos/flannel/releases/download/v0.7.0/flannel-v0.7.0-linux-amd64.tar.gz
3、展開環境
1 、準備オーケー
1 )、システムが最小限にインストールされてから、yumが更新され、最新バージョンのCentOS7.3.1611にアップグレードされます。
2 )、ホスト名とホストを設定します
[ root@k8s-master ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
172.17.3.20 k8s-master
172.17.3.7 k8s-node1
172.17.3.8 k8s-node2
3 )、校正時間
[ root@k8s-master ~]# ntpdate ntp1.aliyun.com &&hwclock -w
4 )、selinuxとファイアウォールをオフにします
[ root@k8s-master ~]# sed -i s'/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
[ root@k8s-master ~]# systemctl disable firewalld; systemctl stop firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
5 )、サーバーを再起動します
2 、マスターノードの展開
1 )、etcdサービスを展開します(現在はシングルポイント)
[ root@k8s-master ~]# tar zxvf etcd-v3.1.0-linux-amd64.tar.gz -C /usr/local/
[ root@k8s-master ~]# mv /usr/local/etcd-v3.1.0-linux-amd64/ /usr/local/etcd
[ root@k8s-master ~]# ln -s /usr/local/etcd/etcd /usr/local/bin/etcd
[ root@k8s-master ~]# ln -s /usr/local/etcd/etcdctl /usr/local/bin/etcdctl
systemdサービスファイル/usr/lib/systemd/system/etcd.serviceを設定します
[ Unit]
Description=Eted Server
After=network.target
[ Service]
WorkingDirectory=/data/etcd/
EnvironmentFile=-/etc/etcd/etcd.conf
ExecStart=/usr/local/bin/etcd
Type=notify
Restart=on-failure
LimitNOFILE=65536
[ Install]
WantedBy=multi-user.target
その中で、WorkingDirectorは、etcdデータが保存されるディレクトリを表します。これは、etcdサービスを開始する前に作成する必要があります。
etcdシングルポイントのデフォルト構成
[ root@k8s-master ~]# cat /etc/etcd/etcd.conf
ETCD_NAME=k8s1
ETCD_DATA_DIR="/data/etcd"
ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"
ETCD_ADVERTISE_CLIENT_URLS="http://0.0.0.0:2379"
etcdサービス開始
[ root@k8s-master ~]# systemctl daemon-reload
[ root@k8s-master ~]# systemctl enable etcd.service
[ root@k8s-master ~]# systemctl start etcd.service
etcdサービスチェック
[ root@k8s-master ~]# etcdctl cluster-health
member 869f0c691c5458a3 is healthy: got healthy result from http://0.0.0.0:2379
cluster is healthy
[ root@k8s-master ~]# etcdctl member list
869 f0c691c5458a3: name=k8s1 peerURLs=http://172.17.3.20:2380 clientURLs=http://0.0.0.0:2379 isLeader=true
2 )kube-apiserverサービスを展開します
kube-apiserverをインストールします
[ root@k8s-master ~]# tar zxvf kubernetes-server-linux-amd64.tar.gz -C /usr/local/
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kube-apiserver /usr/local/bin/kube-apiserver
ちなみに他のサービスはソフトリンクを行います
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/hyperkube /usr/local/bin/hyperkube
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kubeadm /usr/local/bin/kubeadm
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kube-controller-manager /usr/local/bin/kube-controller-manager
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kubectl /usr/local/bin/kubectl
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kube-discovery /usr/local/bin/kube-discovery
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kube-dns /usr/local/bin/kube-dns
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kubefed /usr/local/bin/kubefed
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kubelet /usr/local/bin/kubelet
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kube-proxy /usr/local/bin/kube-proxy
[ root@k8s-master ~]# ln -s /usr/local/kubernetes/server/bin/kube-scheduler /usr/local/bin/kube-scheduler
kubernetesシステム構成を構成します
[ root@k8s-master ~]# cat /etc/kubernetes/config
KUBE_LOGTOSTDERR="--logtostderr=false"
KUBE_LOG_DIR="--log-dir=/data/logs/kubernetes"
KUBE_LOG_LEVEL="--v=2"
KUBE_ALLOW_PRIV="--allow-privileged=false"
KUBE_MASTER="--master=http://172.17.3.20:8080"
systemdサービスファイル/usr/lib/systemd/system/kube-apiserver.serviceを設定します
[ Unit]
Description=Kubernetes API Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=network.target
After=etcd.service
[ Service]
EnvironmentFile=-/etc/kubernetes/config
EnvironmentFile=-/etc/kubernetes/apiserver
ExecStart=/usr/local/bin/kube-apiserver \
$KUBE_LOGTOSTDERR \
$KUBE_LOG_LEVEL \
$KUBE_ETCD_SERVERS \
$KUBE_API_ADDRESS \
$KUBE_API_PORT \
$KUBELET_PORT \
$KUBE_ALLOW_PRIV \
$KUBE_SERVICE_ADDRESSES \
$KUBE_ADMISSION_CONTROL \
$KUBE_API_ARGS
Restart=on-failure
Type=notify
LimitNOFILE=65536
[ Install]
WantedBy=multi-user.target
kuber-apiserver起動パラメーターを構成します
[ root@k8s-master ~]# cat /etc/kubernetes/apiserver
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
KUBE_ETCD_SERVERS="--etcd-servers=http://127.0.0.1:2379"
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota"
KUBE_API_ARGS=" "
kube-api-serversサービスを開始します
[ root@k8s-master ~]# systemctl daemon-reload
[ root@k8s-master ~]# systemctl enable kube-apiserver.service
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-apiserver.service to /usr/lib/systemd/system/kube-apiserver.service.
[ root@k8s-master ~]# systemctl start kube-apiserver.service
検証サービス
http://172.17.3.20:8080/
3 )kube-controller-managerサービスを展開します
systemdサービスファイル/usr/lib/systemd/system/kube-controller-manager.serviceを設定します
[ Unit]
Description=Kubernetes Controller Manager
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=kube-apiserver.service
Requires=kube-apiserver.service
[ Service]
EnvironmentFile=-/etc/kubernetes/config
EnvironmentFile=-/etc/kubernetes/controller-manager
ExecStart=/usr/local/bin/kube-controller-manager \
$KUBE_LOGTOSTDERR \
$KUBE_LOG_LEVEL \
$KUBE_LOG_DIR \
$KUBE_MASTER \
$KUBE_CONTROLLER_MANAGER_ARGS
Restart=on-failure
LimitNOFILE=65536
[ Install]
WantedBy=multi-user.target
kube-controller-managerの起動パラメーターを構成します
[ root@k8s-master ~]# cat /etc/kubernetes/controller-manager
KUBE_CONTROLLER_MANAGER_ARGS=""
kube-controller-managerサービスを開始します
[ root@k8s-master ~]# systemctl daemon-reload
[ root@k8s-master ~]# systemctl enable kube-controller-manager
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-controller-manager.service to /usr/lib/systemd/system/kube-controller-manager.service.
[ root@k8s-master ~]# systemctl start kube-controller-manager
4 )kube-schedulerサービスを展開する
systemdサービスファイル/usr/lib/systemd/system/kube-scheduler.serviceを設定します
[ Unit]
Description=Kubernetes Scheduler Plugin
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=kube-apiserver.service
Requires=kube-apiserver.service
[ Service]
EnvironmentFile=-/etc/kubernetes/config
EnvironmentFile=-/etc/kubernetes/scheduler
ExecStart=/usr/local/bin/kube-scheduler \
$KUBE_LOGTOSTDERR \
$KUBE_LOG_LEVEL \
$KUBE_LOG_DIR \
$KUBE_MASTER \
$KUBE_SCHEDULER_ARGS
Restart=on-failure
LimitNOFILE=65536
[ Install]
WantedBy=multi-user.target
kube-schedulerr起動パラメーターを構成します
[ root@k8s-master ~]# cat /etc/kubernetes/schedulerr
KUBE_SCHEDULER_ARGS=""
kube-schedulerサービスを開始します
[ root@k8s-master ~]# systemctl daemon-reload
[ root@k8s-master ~]# systemctl enable kube-scheduler
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-scheduler.service to /usr/lib/systemd/system/kube-scheduler.service.
[ root@k8s-master ~]# systemctl start kube-scheduler
2 、ノードノードの展開
1 )docker(またはyum instll docker)をインストールします
[ root@k8s-node1 ~]# tar zxvf docker-1.13.1.tgz -C /usr/local
ここでは、dockerがデフォルトでインストールおよび開始されます。これは、後のテストに便利です。
[ root@k8s-node1 ~]# systemctl start docker.service
2 )kubernetesクライアントをインストールします
kubelet、kube-proxyをインストールします
[ root@k8s-master ~]# tar zxvf kubernetes-client-linux-amd64.tar.gz -C /usr/local/
[ root@k8s-node1 ~]# ln -s /usr/local/kubernetes/client/bin/kubectl /usr/local/bin/kubectl
[ root@k8s-node1 ~]# ln -s /usr/local/kubernetes/client/bin/kubefed /usr/local/bin/kubefed
kube-proxyパッケージのデフォルトでは、クライアントをサーバーからコピーすることはできません。
[ root@k8s-node1 ~]# ln -s /usr/local/kubernetes/client/bin/kube-proxy /usr/local/bin/kube-proxy
[ root@k8s-node1 ~]# ln -s /usr/local/kubernetes/client/bin/kubelet /usr/local/bin/kubelet
3 )kubeletサービスを展開する
kubernetesシステム構成を構成します
[ root@k8s-node1 ~]# cat /etc/kubernetes/config
KUBE_LOGTOSTDERR="--logtostderr=false"
KUBE_LOG_DIR="--log-dir=/data/logs/kubernetes"
KUBE_LOG_LEVEL="--v=2"
KUBE_ALLOW_PRIV="--allow-privileged=false"
KUBE_MASTER="--master=http://172.17.3.20:8080"
systemdサービスファイル/usr/lib/systemd/system/kubelet.serviceを設定します
[ Unit]
Description=Kubernetes Kubelet Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=docker.service
Requires=docker.service
[ Service]
WorkingDirectory=/data/kubelet
EnvironmentFile=-/etc/kubernetes/config
EnvironmentFile=-/etc/kubernetes/kubelet
ExecStart=/usr/local/bin/kubelet \
$KUBE_LOGTOSTDERR \
$KUBE_LOG_LEVEL \
$KUBE_LOG_DIR \
$KUBELET_API_SERVER \
$KUBELET_ADDRESS \
$KUBELET_PORT \
$KUBELET_HOSTNAME \
$KUBE_ALLOW_PRIV \
$KUBELET_POD_INFRA_CONTAINER \
$KUBELET_ARGS
Restart=on-failure
[ Install]
WantedBy=multi-user.target
kubelet起動パラメーターを構成します
[ root@k8s-node1 ~]# cat /etc/kubernetes/kubelet
KUBELET_ADDRESS="--address=0.0.0.0"
KUBELET_PORT="--port=10250"
KUBELET_HOSTNAME="--hostname-override=k8s-node1"
KUBELET_API_SERVER="--api-servers=http://172.17.3.20:8080"
KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=registry.access.redhat.com/rhel7/pod-infrastructure:latest"
KUBELET_ARGS=""
kubeletサービスを開始
[ root@k8s-node1 ~]# systemctl daemon-reload
[ root@k8s-node1 ~]# systemctl enable kubelet.service
Created symlink from /etc/systemd/system/multi-user.target.wants/kubelet.service to /usr/lib/systemd/system/kubelet.service.
[ root@k8s-node1 ~]# systemctl start kubelet.service
4 )、kube-proxyサービスを展開します
systemdサービスファイル/usr/lib/systemd/system/kube-proxy.serviceを設定します
[ Unit]
Description=Kubernetes Kube-Proxy Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=network.target
[ Service]
EnvironmentFile=-/etc/kubernetes/config
EnvironmentFile=-/etc/kubernetes/proxy
ExecStart=/usr/local/bin/kube-proxy \
$KUBE_LOGTOSTDERR \
$KUBE_LOG_LEVEL \
$KUBE_LOG_DIR \
$KUBE_MASTER \
$KUBE_PROXY_ARGS
Restart=on-failure
LimitNOFILE=65536
[ Install]
WantedBy=multi-user.target
kubelet起動パラメーターを構成します
[ root@k8s-node1 ~]# cat /etc/kubernetes/proxy
KUBE_PROXY_ARGS=""
kubeletサービスを開始
[ root@k8s-node1 ~]# systemctl daemon-reload
[ root@k8s-node1 ~]# systemctl enable kube-proxy.service
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-proxy.service to /usr/lib/systemd/system/kube-proxy.service.
[ root@k8s-node1 ~]# systemctl start kube-proxy.service
ノードが稼働していることを確認します
[ root@k8s-node1 ~]# kubectl get nodes
NAME STATUS AGE
k8s-node1 Ready 9m
3 、ネットワークを構成します
1 )、etcdを構成します
[ root@k8s-master ~]# etcdctl set /k8s/network/config '{ "Network": "10.1.0.0/16" }'
{ " Network": "10.1.0.0/16" }
[ root@k8s-master ~]# etcdctl get /k8s/network/config
{ " Network": "10.1.0.0/16" }
[ root@k8s-node1 ~]# tar zxvf flannel-v0.7.0-linux-amd64.tar.gz -C /usr/local/flannel
[ root@k8s-node1 ~]# ln -s /usr/local/flannel/flannel /usr/local/bin/flanneld
[ root@k8s-node1 ~]# ln -s /usr/local/flannel/mk-docker-opts.sh /usr/local/bin/mk-docker-opts.sh
3 )、flannelを構成します(構成は面倒です。開始スクリプトと開始スクリプトは、yumのインストール中に生成された構成を参照します)
systemdサービスファイル/usr/lib/systemd/system/flanneld.serviceを設定します
[ Unit]
Description=Flanneld overlay address etcd agent
After=network.target
After=network-online.target
Wants=network-online.target
After=etcd.service
Before=docker.service
[ Service]
Type=notify
EnvironmentFile=/etc/sysconfig/flanneld
EnvironmentFile=-/etc/sysconfig/docker-network
ExecStart=/usr/local/bin/flanneld-start $FLANNEL_OPTIONS
ExecStartPost=/usr/local/bin/mk-docker-opts.sh -k DOCKER_NETWORK_OPTIONS -d /run/flannel/docker
Restart=on-failure
[ Install]
WantedBy=multi-user.target
RequiredBy=docker.service
flanneld-startはどこにありますか
[ root@k8s-node1 ~]# cat /usr/local/bin/flanneld-start
#! /bin/sh
exec /usr/local/bin/flanneld \
etcd-endpoints=
etcd-prefix=
" $@"
フランネルの編集、etcd関連情報の設定
[ root@k8s-node1 ~]# cat /etc/sysconfig/flanneld
FLANNEL_ETCD_ENDPOINTS="http://172.17.3.20:2379"
FLANNEL_ETCD_PREFIX="/k8s/network"
4 )、フランネルを開始します
フランネルがdocker0ブリッジを覆うように、フランネルを開始する前にdockerを閉じる必要があることに注意してください。
[ root@k8s-node1 ~]# systemctl daemon-reload
[ root@k8s-node1 ~]# systemctl enable flanneld.service
[ root@k8s-node1 ~]# systemctl stop docker.service
[ root@k8s-node1 ~]# systemctl start flanneld.service
flanneldサービスが開始されると、etcdの構成に従ってサブネットに分割されます。分割されたサブネットはdockerによって使用されます。dockerが使用する場合は、それを破棄する必要があります。実際、dockerが開始できるように、いくつかの重要な変数を渡す方法を見つけることです。使用する
dockerを起動する前に特定の変数を有効にするには、source / run / flannel / docker source / run / flannel / subnet.envが必要であることに注意してください。
[ root@k8s-node1 ~]# cat /run/flannel/docker
DOCKER_OPT_BIP="--bip=10.1.89.1/24"
DOCKER_OPT_IPMASQ="--ip-masq=true"
DOCKER_OPT_MTU="--mtu=1472"
DOCKER_NETWORK_OPTIONS=" --bip=10.1.89.1/24 --ip-masq=true --mtu=1472"
[ root@k8s-node1 bin]# cat /run/flannel/docker
DOCKER_OPT_BIP="--bip=10.1.89.1/24"
DOCKER_OPT_IPMASQ="--ip-masq=true"
DOCKER_OPT_MTU="--mtu=1472"
DOCKER_NETWORK_OPTIONS=" --bip=10.1.89.1/24 --ip-masq=true --mtu=1472"
[ root@k8s-node1 ~]# cat /run/flannel/subnet.env
FLANNEL_NETWORK=10.1.0.0/16
FLANNEL_SUBNET=10.1.89.1/24
FLANNEL_MTU=1472
FLANNEL_IPMASQ=false
docker0がflannel0のサブネットになるように、dockerが--bip = $ {FLANNEL_SUBNET} --mtu = $ {FLANNEL_MTU}で始まることを確認してください。この起動パラメーターは、ExecStartPost = / usr / local / bin / mk-docker-optsを介して行われます。 .sh -k DOCKER_NETWORK_OPTIONS -d / run / flannel / docker
kSet the combined options key to this value (default DOCKER_OPTS=)
dPath to Docker env file to write to. Defaults to /run/docker_opts.env
最後にdockerを起動します
[ root@k8s-node1 ~]# systemctl start docker.service
5 )、最後に効果を確認します
完了後、ネットワークインターフェイスdocker0のIPアドレスがflannel0のサブネットに属していることを確認します
ネットワークが開始されると、node1とnode2は多くのルーティングエントリを追加し、自動的にファイアウォールをオンにします。前に閉じましたが、ノードの直接docker0ネットワークが通信するための多くの戦略があり、各ノードが物理ネットワークカード--flannel0--を通過します。 Docker0とコンテナ通信
[ root@k8s-node1 ~]# ip addr
6: flannel0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1472 qdisc pfifo_fast state UNKNOWN qlen 500
link/none
inet 10.1.89.0/16 scope global flannel0
valid_lft forever preferred_lft forever
7: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
link/ether 02:42:f1:e4:7c:a3 brd ff:ff:ff:ff:ff:ff
inet 10.1.89.1/24 scope global docker0
valid_lft forever preferred_lft forever
[ root@k8s-node2 ~]# ip addr
6: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN
link/ether 02:42:33:a8:38:21 brd ff:ff:ff:ff:ff:ff
inet 10.1.8.1/24 scope global docker0
valid_lft forever preferred_lft forever
7: flannel0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1472 qdisc pfifo_fast state UNKNOWN qlen 500
link/none
inet 10.1.8.0/16 scope global flannel0
valid_lft forever preferred_lft forever
node1のpingnode2のdocker0が通過できる場合
[ root@k8s-node1 ~]# ping 10.1.8.1
PING 10.1.8.1 (10.1.8.1) 56(84) bytes of data.
64 bytes from 10.1.8.1: icmp_seq=1 ttl=62 time=0.498 ms
64 bytes from 10.1.8.1: icmp_seq=2 ttl=62 time=0.463 ms
Recommended Posts