準備フェーズ
MASTER1 MASTER2ノード1
閉じる selinuxを、ファイアウォール
setenforce 0
SED -i 'S / SELINUX =施行/ SELINUX =許容/' の/ etc / SELinuxの/コンフィグ
systemctlストップfirewalld
systemctl無効にfirewalld
閉じるスワップ、(1.8バージョンの後に必要な、目的を交換する必要はありませんが、メモリの制限ポッドを使用することができますに干渉しなければなりません)
するswapoff -a
SED -riさん/.*スワップ。* /#&/ 'の/ etc / fstabに
カーネルパラメータを変更し、または貫通要求データルーティングのiptablesは問題となり得ます
猫<< EOF> /etc/sysctl.d/k8s.conf
net.bridge.bridge-NF-コール-ip6tablesを= 1
net.bridge.bridge-NF-コールのiptables = 1
EOF
sysctlの--system
インストール kubeadm、ドッキングウィンドウ
Kubernetesインストールソースはアリ雲に変更し、家庭内のネットワーク環境容易なインストール
猫<< EOF> /etc/yum.repos.d/kubernetes.repo
[Kubernetes]
名前= Kubernetes
BASEURL = HTTPS://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
= 1有効
gpgcheck = 1
repo_gpgcheck = 1
gpgkey = HTTPS://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
インストールのドッキングウィンドウ-CE
wgetの-O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yumを-yドッカ-CEをインストール
インストール kubelet kubeadm kubectl
yumをインストールkubeadm-1.15.0-0.x86_64 kubectl 1.15.0-0.x86_64-オムレツ-1.15.0-0.x86_64 -y
kubectlコマンド自動補完
yumをbashの補完*の-yをインストール
##書き込み環境変数
ソース<(kubectl完了バッシュ)
"ソース<(kubectl完了bashの)" >>〜/ .bashrcのエコー
部署 Kubernetes
マスタノード1の動作:
クラスタ構成ファイル準備し、現在v1beta1のために使用され、APIバージョンを、具体的な構成を参照することができ、公式リファレンス
猫<< EOF> /root/kubeadm-config.yaml
apiVersion:kubeadm.k8s.io/v1beta1
種類:ClusterConfiguration
kubernetesVersion:v1.15.0の#指定したバージョン1.14
controlPlaneEndpoint:192.168.41.232:6443#haproxyアドレスとポート
imageRepository:アリを調達するために#指定したミラーソースをregistry.cn-hangzhou.aliyuncs.com/google_containers
ネットワーキング:
podSubnet:プラグインを使用する10.244.0.0/16#フランネルネットワーク計画、ネットワークセグメントとマスクは、ポッドを指定します
EOF
ノードの初期化を実行します
オムレツを有効systemctl
演技開始systemctl
kubeadm設定画像は以前にミラー元アリによって引っ張ら--config kubeadm-config.yaml#を引きます
kubeadmのinit --config = kubeadm-config.yaml --upload-certsの--ignore-プリフライトエラー=すべて
kubeadm INIT --kubernetesバージョン= v1.15.0 --pod-ネットワークCIDR = 10.244.0.0 / 16 --service-CIDR = 10.96.0.0 / 12 --ignore-プリフライトエラー=全て--upload、本命
インストールが成功し、あなたは出力を見ることができます
これで、rootとして各上で次のコマンドを実行しているコントロールプレーンのノードの任意の数に参加することができます。
#マスター・ノードは、次のコマンドを使用して、クラスタに参加します:
kubeadm 192.168.41.232:6443 --token ocb5tz.pv252zn76rl4l3f6 \に参加
--discoveryトークン-CA-CERT-ハッシュSHA256:141bbeb79bf58d81d551f33ace207c7b19bee1cfd7790112ce26a6a300eee5a2 \
--controlプレーン--certificateキー20366c9cdbfdc1435a6f6d616d988d027f2785e34e2df9383f784cf61bab9826 --ignore-プリフライトエラー=すべて
#作業ノードは、次のコマンドを使用してクラスタに参加します:
kubeadm 192.168.41.232:6443 --token ocb5tz.pv252zn76rl4l3f6 \に参加
--discoveryトークン-CA-CERT-ハッシュSHA256:141bbeb79bf58d81d551f33ace207c7b19bee1cfd7790112ce26a6a300eee5a2 --ignore-プリフライトエラー=すべて
元 kubeadmバージョン、joinコマンドのみワーキングノードを結合するために使用され、新しいバージョンがパラメータ--control平面を追加、制御プレーン(マスタ)ノードがコマンドを結合kubeadmによってクラスタに追加します。
追加 kubectl制御権限を
ます。mkdir -p $ HOME / .kube
CP -i /etc/kubernetes/admin.conf $ HOME / .kube /設定
chownコマンド$(のid -u):$(IDの-g)の$ HOME / .kube /設定
さらに添加マスターノード
マスタ2の動作:
kubeadm 192.168.41.232:6443 --token ocb5tz.pv252zn76rl4l3f6 \に参加
--discoveryトークン-CA-CERT-ハッシュSHA256:141bbeb79bf58d81d551f33ace207c7b19bee1cfd7790112ce26a6a300eee5a2 \
--experimental制御プレーン--certificateキー20366c9cdbfdc1435a6f6d616d988d027f2785e34e2df9383f784cf61bab9826
--ignore-プリフライトエラー=すべて
追加 kubectl制御権限を
ます。mkdir -p $ HOME / .kube
CP -i /etc/kubernetes/admin.conf $ HOME / .kube /設定
chownコマンド$(のid -u):$(IDの-g)の$ HOME / .kube /設定
準備中]状態
編集、/etc/systemd/system/kubelet.service.d/10-kubeadm.confファイル(一部/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.confファイル)
の最後の行を削除$ KUBELET_NETWORK_ARGS
オムレツ再起動systemctl
ネットワークプラグを取り付け
-f KUBE-flannel.ymlを適用kubectl
再び、ノードの状態を確認
ノードを取得kubectl
参考:
KUBE-フランネルネットワークプラグインします。https://www.wanghaiqing.com/article/aa3ac027-7ae8-43ff-821e-49f6dfcd17e8/
kubeadmの可用性します。https://segmentfault.com/a/1190000018741112は、utm_source =タグ、最新の?
notready参照:https://www.cnblogs.com/zhongyuanzhao000/p/11401031.html