このページの2つのバージョン間の差分を表示します。
06_virtualization:05_container:13_kubernetes_create_nginx [2022/04/15 09:38] – 作成 matsui | 06_virtualization:05_container:13_kubernetes_create_nginx [2022/04/15 10:39] (現在) – matsui | ||
---|---|---|---|
行 44: | 行 44: | ||
</ | </ | ||
- | ===== 2.確認用の | + | ===== 2.確認用にNginxの表示変更 |
- | <code|ubuntu.yaml> | + | ==== Podを確認 ==== |
+ | |||
+ | < | ||
+ | # kubectl get pod -o wide | ||
+ | NAME | ||
+ | nginx-6c57499ddb-pjql2 | ||
+ | nginx-6c57499ddb-tfghq | ||
+ | nginx-6c57499ddb-zg88c | ||
+ | </ | ||
+ | |||
+ | ==== Podそれぞれ表示を変える ==== | ||
+ | |||
+ | < | ||
+ | kubectl exec -it nginx-6c57499ddb-pjql2 -- bash | ||
+ | echo pod1 | tee / | ||
+ | exit | ||
+ | |||
+ | kubectl exec -it nginx-6c57499ddb-tfghq -- bash | ||
+ | echo pod2 | tee / | ||
+ | exit | ||
+ | |||
+ | kubectl exec -it nginx-6c57499ddb-zg88c -- bash | ||
+ | echo pod3 | tee / | ||
+ | exit | ||
+ | </ | ||
+ | |||
+ | ===== 3.workerノードで確認 ===== | ||
+ | |||
+ | < | ||
+ | root@worker01: | ||
+ | pod1 | ||
+ | root@worker01: | ||
+ | pod2 | ||
+ | root@worker01: | ||
+ | pod3 | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== 4.cluster IP 作成 ===== | ||
+ | |||
+ | cluster ipの8080にアクセスが来ると、nginx-appへ渡す | ||
+ | |||
+ | <code|clusterIp.yaml> | ||
apiVersion: v1 | apiVersion: v1 | ||
- | kind: Pod | + | kind: Service |
metadata: | metadata: | ||
- | name: ubuntu | + | name: cluster-ip |
spec: | spec: | ||
- | | + | |
- | - name: ubuntu | + | ports: |
- | | + | - name: cluster-port |
- | | + | |
- | - sleep | + | |
- | - infinity | + | |
+ | app: nginx-app | ||
</ | </ | ||
< | < | ||
- | # kubectl create -f ubuntu.yaml | + | # kubectl create -f clusterIp.yaml |
+ | # kubectl get svc | ||
+ | NAME | ||
+ | cluster-ip | ||
+ | kubernetes | ||
+ | </ | ||
- | # kubectl get pods ubuntu | + | ===== 5.再度workerノードで確認 ===== |
- | NAME | + | |
- | ubuntu | + | cluster ipの8080にアクセスすると、podどれかにアクセスする |
+ | |||
+ | < | ||
+ | root@worker01: | ||
+ | pod3 | ||
+ | root@worker01: | ||
+ | pod2 | ||
+ | root@worker01: | ||
+ | pod1 | ||
+ | root@worker01: | ||
+ | pod2 | ||
+ | root@worker01: | ||
+ | pod1 | ||
+ | root@worker01: | ||
+ | pod2 | ||
+ | root@worker01: | ||
+ | pod1 | ||
+ | root@worker01: | ||
+ | pod2 | ||
+ | root@worker01: | ||
+ | pod1 | ||
</ | </ | ||
+ | ===== 6. ExternalIP用意 ===== | ||
+ | |||
+ | < | ||
+ | apiVersion: v1 | ||
+ | kind: Service | ||
+ | metadata: | ||
+ | name: external-ip | ||
+ | spec: | ||
+ | type: ClusterIP | ||
+ | externalIPs: | ||
+ | - 172.16.0.159 | ||
+ | ports: | ||
+ | - name: cluster-port | ||
+ | port: 8080 | ||
+ | targetPort: 80 | ||
+ | selector: | ||
+ | app: nginx-app | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | # kubectl create -f externalIp.yaml | ||
+ | # kubectl get svc external-ip | ||
+ | NAME TYPE CLUSTER-IP | ||
+ | external-ip | ||
+ | </ | ||
+ | |||
+ | ===== 7.次は外部からアクセス可能 ===== | ||
+ | |||
+ | < | ||
+ | root@jump: | ||
+ | pod3 | ||
+ | root@jump: | ||
+ | pod1 | ||
+ | root@jump: | ||
+ | pod1 | ||
+ | root@jump: | ||
+ | pod3 | ||
+ | root@jump: | ||
+ | pod2 | ||
+ | </ | ||
{{tag> | {{tag> |