Slide 1

Slide 1 text

NGINX Ingress Controller 動作確認 Hiroshi Matsumoto

Slide 2

Slide 2 text

©2022 F5 2 動作環境

Slide 3

Slide 3 text

©2022 F5 3 操作するラボ環境 Windows GUI CLI RDP Node Node Docker NGINX: Kubernetes_Lab_JP

Slide 4

Slide 4 text

©2022 F5 4 動作確認

Slide 5

Slide 5 text

©2022 F5 5 操作手順 1. NGINX Ingress Controller(NIC) 環境のセットアップ 1. コンテナイメージの作成 2. NIC動作環境のセットアップの実行 2. サンプルアプリケーションのデプロイ 1. アプリケーション・設定のデプロイ 2. 動作確認・通信のログの確認 3. デプロイした内容の確認 1. Podのステータス確認 2. Pod内の各種確認

Slide 6

Slide 6 text

©2022 F5 6 1.NGINX Ingress Controller(NIC) 環境のセットアップ コンテナイメージ NGINX IC ConfigFile nginx.conf file K8S Obj Process Kubernetes Cluster /etc/nginx /conf.d Admin https://docs.nginx.com/nginx-ingress-controller/intro/how-nginx-ingress-controller-works/ Linux (ubuntu) make コンテナ イメージの ビルド Linux (ubuntu) docker push コンテナイメージの PUSH repository NGINX Plusの取得 など 1 2 3 1.コンテナイメージの作成

Slide 7

Slide 7 text

©2022 F5 7 Namespace : nginx-ingress pod NGINX IC ConfigFile nginx.conf Config Map Kubernetes Cluster /etc/nginx /conf.d Config Template File Log(stdout / stderr) https://docs.nginx.com/nginx-ingress-controller/intro/how-nginx-ingress-controller-works/ Linux (ubuntu) NIC Image 1.NGINX Ingress Controller(NIC) 環境のセットアップ file K8S Obj Process 2. NIC動作環境のセットアップの実行 NodePort 30080 HTTP 30443 HTTPS Admin Kubernetes API 1 CRDなど各種 ManifestのApply 2 Deployment Apply 3 NodePort Apply Manifest

Slide 8

Slide 8 text

©2022 F5 8 Namespace : nginx-ingress pod NGINX IC ConfigFile nginx.conf Config Map Kubernetes Cluster /etc/nginx /conf.d Config Template File Log(stdout / stderr) https://docs.nginx.com/nginx-ingress-controller/intro/how-nginx-ingress-controller-works/ Linux (ubuntu) NIC Image 2.サンプルアプリケーションのデプロイ file K8S Obj Process 1.サンプルアプリケーション・設定のデプロイ NodePort 30080 HTTP 30443 HTTPS Admin Kubernetes API 1 SVCなど各種 ManifestのApply 2 Ingress Apply 3 VirtualServer Apply Namespace : service-a Namespace : service-b pod App ServiceA ServiceB Ingress a.xxx.com Config Config VirtualServer b.xxx.com Manifest pod App

Slide 9

Slide 9 text

©2022 F5 9 a. Curlコマンドの実行 2.サンプルアプリケーションのデプロイ 2.動作確認・通信のログの確認 • curl -H "Host:cafe1.example.com" http://localhost/ • curl -H "Host:cafe2.example.com" http://localhost/ b. NICのログを確認 • kubectl logs -n nginx-ingress Namespace : nginx-ingress pod NGINX IC ConfigFile nginx.conf Config Map Kubernetes Cluster /etc/nginx /conf.d Config Template File Log(stdout / stderr) NodePort 30080 HTTP 30443 HTTPS Kubernetes API Namespace : service-a Namespace : service-b pod App ServiceA ServiceB Ingress a.xxx.com Config Config VirtualServer b.xxx.com pod App 80 HTTP 443 HTTPS a b

Slide 10

Slide 10 text

©2022 F5 10 3.デプロイした内容の確認 1.Podのステータス確認 a. 確認コマンドの実行 • kubectl get pods -n nginx-ingress • kubectl describe pods -n nginx-ingress | less Namespace : nginx-ingress pod NGINX IC ConfigFile nginx.conf Config Map Kubernetes Cluster /etc/nginx /conf.d Config Template File Log(stdout / stderr) NodePort 30080 HTTP 30443 HTTPS Kubernetes API Namespace : service-a Namespace : service-b pod App ServiceA ServiceB Ingress a.xxx.com Config Config VirtualServer b.xxx.com pod App 80 HTTP 443 HTTPS a

Slide 11

Slide 11 text

©2022 F5 11 3.デプロイした内容の確認 2.Pod内の各種確認 a. 確認コマンドの実行 • kubectl exec -it -n nginx-ingress -- ls -l /etc/nginx/conf.d/ • kubectl exec -it -n nginx-ingress -- grep -v "^¥s*$" /etc/nginx/conf.d/default-cafe1-ingress.conf | less • kubectl exec -it -n nginx-ingress -- grep -v "^¥s*$" /etc/nginx/conf.d/vs_default_cafe2.conf | less • 通信転送先となるUpstreamの情報、待ち受けるFQDNなど • kubectl exec -it -n nginx-ingress -- grep -v "^¥s*$" /etc/nginx/nginx.conf | less • error_log、access_log設定 • kubectl exec -it -n nginx-ingress -- bash Namespace : nginx-ingress pod NGINX IC ConfigFile nginx.conf Config Map Kubernetes Cluster /etc/nginx /conf.d Config Template File Log(stdout / stderr) NodePort 30080 HTTP 30443 HTTPS Kubernetes API Namespace : service-a Namespace : service-b pod App ServiceA ServiceB Ingress a.xxx.com Config Config VirtualServer b.xxx.com pod App 80 HTTP 443 HTTPS a

Slide 12

Slide 12 text

©2022 F5 12 まとめ

Slide 13

Slide 13 text

©2022 F5 13 操作手順 1. NGINX Ingress Controller(NIC) 環境のセットアップ 1. コンテナイメージの作成 2. NIC動作環境のセットアップの実行 2. サンプルアプリケーションのデプロイ 1. アプリケーション・設定のデプロイ 2. 動作確認・通信のログの確認 3. デプロイした内容の確認 1. Podのステータス確認 2. Pod内の各種確認 デプロイ手順を 確認した デプロイ手順・ 動作を確認した NICの構成を確認した 各種設定を確認した NIC Processを確認した

Slide 14

Slide 14 text

No content