nginxの入コントローラの最新バージョン:0.30.0ケーススタディ
イングレス高可用性アーキテクチャは次のとおりです。
開き https://github.com/kubernetes/ingress-nginx/blob/master/deploy/static/mandatory.yamlを 、そして生mandatory.yamlをダウンロードし、そのnginxの入コントローラー部分を修正
1、展開がDaemonSetあり、変更、およびコピー数をコメントアウト
2、hostNetworkネットワークを有効にし、指定されたノードを実行します
関連事業、このノードのホストノードは、このアプリケーションがポートを介してアクセス可能なネットワーク上の他のホストのホストへの進入、nginxのコントローラポートのhostNetwork露光。
イングレス・コントローラを追加=真のタグ予め指定されたノードnodeSelector
3、ミラーアドレスの変更
図4に示すように、増加した耐性マスタノード(オプション)
tolerations:#増加公差、マスターノードに割り当てることができます -キー:「node-role.kubernetes.io/master 」 演算子:「存在」 効果:「NoSchedule 」
変更後:
apiVersion:アプリ/ V1 #kind:展開種類:DaemonSet M etadata: 名前:nginxの入コントローラ 名前空間:入nginxの ラベル: K8S -app:入力コントローラ スペック: #replicas:1 セレクタ: matchLabels: K8S -app:イングレス・コントローラ テンプレート: メタデータ: ラベル: K8S -app:イングレス・コントローラ 注釈: prometheus.io/port: "10254" prometheus.io/scrape: "真" スペック: #接続のドレインのために5分まで待ちます terminationGracePeriodSeconds:300 serviceAccountName:nginxの -ingress- serviceaccount hostNetwork:真 nodeSelector:侵入 -controller: "真"
tolerations:#増加公差、マスターノードに割り当てることができます
-キー:「node-role.kubernetes.io/master」
演算子:「存在」
効果:「NoSchedule」
コンテナ: -名前:nginxの入コントローラの 画像:registry-vpc.cn-beijing.aliyuncs.com/base/nginx-ingress-controller:0.30.0 引数: - / nginxの入コントローラ - --configmap = $ (POD_NAMESPACE)/ nginxの-設定 - --tcp-サービス-configmap = $(POD_NAMESPACE)/ TCP-サービス - --udp-サービス-configmap = $(POD_NAMESPACE)/ UDP-サービス - --publishサービス= $( POD_NAMESPACE)/進入-nginxの - --annotationsプレフィックス= nginx.ingress.kubernetes.io たSecurityContext: allowPrivilegeEscalation:真 の能力: ドロップ: -ALL アドオン: - NET_BIND_SERVICE #WWW -データ- > 101 runAsUser:101 ENV: - 名前:POD_NAME valueFromおよび: するFieldRef: fieldPath:metadata.name - 名前:POD_NAMESPACE valueFromおよび: するFieldRef: fieldPath:metadata.namespaceの ポート: -名前:HTTP containerPort :80 プロトコル:TCP - 名前:HTTPS containerPort:443 プロトコル:TCP livenessProbe: failureThreshold:3 HTTPGET: パス: / healthzの ポート:10254 スキーム:HTTP initialDelaySeconds:10 periodSeconds:10 successThreshold:1 timeoutSecondsの:10 readinessProbe: failureThreshold:3 HTTPGET: パス: / healthzの ポート:10254 スキーム:HTTP periodSeconds:10 successThreshold:1 timeoutSecondsの:10 ライフサイクル: PRESTOP: EXEC: コマンド: - /待機シャットダウン
ノードのタグ付け:
#kubectlラベルノードマスタ92入力コントローラ=「true」に