Kubernetes Ingress hello-world
3017 ワード
文章は微信の公衆番号から転送された.https://mp.weixin.qq.com/s/6S7SErPpotFsF1TyWzexpA
環境情報 ソフトウェア
バージョン#バージョン#
コメント
OS
CentOS Linux release 7.7.1908 (Core)
Kubernetes
v1.17.3
Nginx Ingress Controller
v1.6.3
NginxメンテナンスのIngress Controller
Network Plugin
weave 2.6.1
kubeadmin
v1.17.3
導入 Nginx Ingress Controllerの導入はnginx公式サイトを参照してください.ネット上の多くの文章にバージョンが表示されていないため、参考にするときにいくつかの問題が発生し、初心者にとってはまだ調査しにくいので、この文章がありました.デプロイ時に公式サイトを参照し、自分がデプロイしたバージョンとドキュメントの一貫性に注意してください. yamlファイル をダウンロード
NOTE:ここでは、対応するバージョンのnginx ingress controllerデプロイメントファイルを取得する操作に注意します.対応するRBAC を構成する. Secret、ConfigMap、およびCDR(CustomResourceDefinitions) を作成 daemonsetを選択してnginx ingress controller podを配置します.(deployment方式も選択可能)
デルが選択したdaemon-set方式で導入するため、Ingress Controlが傍受する80および443ポートは、ノードごとに存在します.サービスを作成する必要はありません. Pod状態をチェック
Podが正常に実行されると、Ingress Controlの導入が完了します.具体的な構成項目はYAMLファイルを自分で見ることができます.ここでは、異なるバージョンに注意してください.
*NOTE:問題が発生した場合は、公式のtroubleshootingドキュメントをご自身でご覧ください
導入テストアプリケーション アプリケーションを配備するときは、自分のNginx Ingress Controlのバージョンに注意し、異なるバージョン間で使用中に違いがあるか、一致しない表現があります.公式の例
今回の導入も公式例complete-exampleを例に挙げました(導入時にcloneのrepoの中のexampleディレクトリで) Pod の導入 ingressとsecret を作成 yamlファイルに含まれるドメイン名「cafe.example.com」を/etc/hostsに追加するか、独自のドメイン名に変更します. CURLアクセスリンクテスト
バージョン#バージョン#
コメント
OS
CentOS Linux release 7.7.1908 (Core)
Kubernetes
v1.17.3
Nginx Ingress Controller
v1.6.3
NginxメンテナンスのIngress Controller
Network Plugin
weave 2.6.1
kubeadmin
v1.17.3
$ git clone https://github.com/nginxinc/kubernetes-ingress/
$ cd kubernetes-ingress/deployments
$ git checkout v1.6.3
NOTE:ここでは、対応するバージョンのnginx ingress controllerデプロイメントファイルを取得する操作に注意します.
$ kubectl apply -f common/ns-and-sa.yaml
$ kubectl apply -f rbac/rbac.yaml
$ kubectl apply -f common/default-server-secret.yaml
$ kubectl apply -f common/nginx-config.yaml
$ kubectl apply -f common/custom-resource-definitions.yaml
$ kubectl apply -f daemon-set/nginx-ingress.yaml
デルが選択したdaemon-set方式で導入するため、Ingress Controlが傍受する80および443ポートは、ノードごとに存在します.サービスを作成する必要はありません.
$ kubectl get pods --namespace=nginx-ingress
Podが正常に実行されると、Ingress Controlの導入が完了します.具体的な構成項目はYAMLファイルを自分で見ることができます.ここでは、異なるバージョンに注意してください.
*NOTE:問題が発生した場合は、公式のtroubleshootingドキュメントをご自身でご覧ください
今回の導入も公式例complete-exampleを例に挙げました(導入時にcloneのrepoの中のexampleディレクトリで)
$ kubectl create -f cafe.yaml
$ kubectl create -f cafe-secret.yaml
$ kubectl create -f cafe-ingress.yaml
echo "cafe.example.com 192.168.1.100" >> /etc/hosts
$ curl https://cafe.example.com/coffee -k
Server address: 10.12.0.20:80
Server name: coffee-7586895968-r16zn
$ curl https://cafe.example.com/tea -k
Server address: 10.12.0.22:80
Server name: tea-7cd44fcb4d-xfw99
の により、 のK 8 SクラスタにNginx Ingress Controlを し、 なhello-world を してIngressの を する が に されました.しかし、 には くの を し、 する があります. えば、 の では、https://cafe.example.com/teaxxxxxx , https://cafe.example.com/tea/xxxxxおよびhttps://cafe.example.com/tea に、 サービスに に されます.
の で と していきます.まずアウトラインを します. Nginx Ingress Controllerの . troubleshooting Nginx Ingress ControllerのIngressオブジェクトの に づいて、 なるシーン( )に する.