Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
NGINXENG JP#3 - 3-NGINX-Ingress-Controller-動作確認
Search
hiropo20
February 24, 2023
Technology
0
470
NGINXENG JP#3 - 3-NGINX-Ingress-Controller-動作確認
■NGINX-エンジニアリング勉強会#3
https://nginx-eng.connpass.com/event/274290/
その他のイベント資料や動画などイベントページをご覧ください。
hiropo20
February 24, 2023
Tweet
Share
More Decks by hiropo20
See All by hiropo20
NGINXENG JP#4 - 1-NGINX-エンジニアリング勉強会-きょうの見どころ
hiropo20
0
130
NGINXENG JP#4 - 3-NGINX-エンジニアリング勉強会-おわりに
hiropo20
0
120
NGINXENG JP#4 - 2-NGINX-Plusが提供する機能
hiropo20
0
130
NGINXENG JP LAB#1 - 1-NGINX-エンジニアリング勉強会-今日のみどころ
hiropo20
0
120
NGINXENG JP LAB#1 - 2-NGINXPlus-HandsOnTraining
hiropo20
0
120
NGINXENG JP LAB#1 - 3-NGINX-エンジニアリング勉強会-おわりに
hiropo20
0
100
NGINXENG JP#3 - 1-NGINX-エンジニアリング勉強会-きょうの見どころ
hiropo20
0
160
NGINXENG JP#3 - 2-NGINX-Ingress-Controller-の動作の詳細
hiropo20
0
230
NGINXENG JP#3 - 4-NGINX-エンジニアリング勉強会-おわりに
hiropo20
0
160
Other Decks in Technology
See All in Technology
Azureの基本的な権限管理の勉強会
yhana
0
430
Janus
bkuhlmann
1
490
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
900
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
510
エンジニア候補者向け資料2024.04.24.pdf
macloud
0
3.3k
Meta Quest 3 で動く桜マシマシ WebXR アプリを IBM Cloud Code Engine と Babylon.js で作った話
1ftseabass
PRO
0
120
「スニダン」開発組織の構造に込めた意図 ~組織作りはパッションや政治ではない!~
rinchsan
3
570
データベース02: データベースの概念
trycycle
0
160
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
730
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
310
アクセス制御にまつわる改善 / Improving access control
itkq
0
540
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
21
1.6k
For a Future-Friendly Web
brad_frost
172
9k
Building Your Own Lightsaber
phodgson
99
5.7k
Debugging Ruby Performance
tmm1
70
11k
WebSockets: Embracing the real-time Web
robhawkes
59
7k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Scaling GitHub
holman
457
140k
Art, The Web, and Tiny UX
lynnandtonic
289
19k
Adopting Sorbet at Scale
ufuk
68
8.6k
The Brand Is Dead. Long Live the Brand.
mthomps
49
28k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
17
1.4k
How STYLIGHT went responsive
nonsquared
92
4.8k
Transcript
NGINX Ingress Controller 動作確認 Hiroshi Matsumoto
©2022 F5 2 動作環境
©2022 F5 3 操作するラボ環境 Windows GUI CLI RDP Node Node
Docker NGINX: Kubernetes_Lab_JP
©2022 F5 4 動作確認
©2022 F5 5 操作手順 1. NGINX Ingress Controller(NIC) 環境のセットアップ 1.
コンテナイメージの作成 2. NIC動作環境のセットアップの実行 2. サンプルアプリケーションのデプロイ 1. アプリケーション・設定のデプロイ 2. 動作確認・通信のログの確認 3. デプロイした内容の確認 1. Podのステータス確認 2. Pod内の各種確認
©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.コンテナイメージの作成
©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
©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
©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 <NIC POD> -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
©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
©2022 F5 11 3.デプロイした内容の確認 2.Pod内の各種確認 a. 確認コマンドの実行 • kubectl exec
-it <NIC POD> -n nginx-ingress -- ls -l /etc/nginx/conf.d/ • kubectl exec -it <NIC POD> -n nginx-ingress -- grep -v "^¥s*$" /etc/nginx/conf.d/default-cafe1-ingress.conf | less • kubectl exec -it <NIC POD> -n nginx-ingress -- grep -v "^¥s*$" /etc/nginx/conf.d/vs_default_cafe2.conf | less • 通信転送先となるUpstreamの情報、待ち受けるFQDNなど • kubectl exec -it <NIC POD> -n nginx-ingress -- grep -v "^¥s*$" /etc/nginx/nginx.conf | less • error_log、access_log設定 • kubectl exec -it <NIC POD> -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
©2022 F5 12 まとめ
©2022 F5 13 操作手順 1. NGINX Ingress Controller(NIC) 環境のセットアップ 1.
コンテナイメージの作成 2. NIC動作環境のセットアップの実行 2. サンプルアプリケーションのデプロイ 1. アプリケーション・設定のデプロイ 2. 動作確認・通信のログの確認 3. デプロイした内容の確認 1. Podのステータス確認 2. Pod内の各種確認 デプロイ手順を 確認した デプロイ手順・ 動作を確認した NICの構成を確認した 各種設定を確認した NIC Processを確認した
None