K 8 SのIngressの使い方
K 8 SのIngressの使い方
Ingressのメリットと特徴をもう一度言う必要はありませんが、本稿では主に使い方を説明します.
準備条件
まずK 8 Sのインストールを完了し、defaulebackendとnginx-ingress-controlを含むingressをインストールし、pullの下に必要なdocker imageをインストールしてください.
に注意
ここで注意してください.便宜上、ingressを配置するときに、配置ファイルYmalのエントリを変更してyamlを変更し、nginx-ingress-controllerというdeploymentの下のspec.template.specは以下のように追加されます.
スタート
yamlでns,deployment,svc deploymentを作成します.yaml:
YamlによるIngressの生成:ingress.yaml
Ingress controlの入り口アドレスは何ですか?どうやって訪問しますか?
では、問題が来ました.どのアドレスでIngressの入り口にアクセスするか、私たちはどうして知っていますか.次のコマンドを実行して表示
Ingressのメリットと特徴をもう一度言う必要はありませんが、本稿では主に使い方を説明します.
準備条件
まずK 8 Sのインストールを完了し、defaulebackendとnginx-ingress-controlを含むingressをインストールし、pullの下に必要なdocker imageをインストールしてください.
に注意
ここで注意してください.便宜上、ingressを配置するときに、配置ファイルYmalのエントリを変更してyamlを変更し、nginx-ingress-controllerというdeploymentの下のspec.template.specは以下のように追加されます.
#spec:
hostNetwork: true
#serviceAccountName: nginx-ingress-serviceaccount
#containers:
スタート
yamlでns,deployment,svc deploymentを作成します.yaml:
apiVersion: v1
kind: Namespace
metadata:
name: web-test-ns
---
apiVersion: v1
kind: Service
metadata:
name: web-svc-nodeport
namespace: web-test-ns
spec:
selector:
app: nginx
ports:
- name: http
port: 80
protocol: TCP
targetPort: 80
#nodePort: 8000
type: NodePort
external-ip=192.168.250.200
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
namespace: web-test-ns
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
#
kubectl apply -f deployment.yaml
#
kubectl get pods -A -o wide
kubectl get deployment -n web-test-ns
kubectl get ns
kubectl get svc -n web-test-ns
YamlによるIngressの生成:ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-web
namespace: web-test-ns
spec:
rules:
- host: test.com
http:
paths:
- path:/
backend:
serviceName: web-svc
servicePort: 80
#
kubectl apply -f ingress.yaml
#
kubectl get ingress -n web-test-ns
kubectl describe ingress ingress-web -n web-test-ns
Ingress controlの入り口アドレスは何ですか?どうやって訪問しますか?
では、問題が来ました.どのアドレスでIngressの入り口にアクセスするか、私たちはどうして知っていますか.次のコマンドを実行して表示
kubectl get pods -A -o wide
# :
#ingress-nginx nginx-ingress-controller-5d796786f6-lzfhc 1/1 Running 2 12h 192.168.250.101 node
# 192.168.250.101
# /etc/hosts
echo '192.168.250.101 test.com' >>/etc/hosts
#
curl test.com
# !