전날 실습 문제

<aside> 💡 curl kakao.com/ipnginx 파드의 ip가 뜨도록 curl kakao.com/nginx 기본 nginx 뜨도록

</aside>


**root@master:~/in# cat nginx-deploy.yml 
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deploy
  namespace: ingress-nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: 192.168.0.195:5000/nginx
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-svc
  namespace: ingress-nginx
spec:
  ports:
    - port: 80
      protocol: TCP
      targetPort: 80
  selector:
    app: nginx

================================================

root@master:~/in# cat ipnginx-deploy.yml 
apiVersion: apps/v1
kind: Deployment
metadata:
  name: ipnginx-deploy
  namespace: ingress-nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: ipnginx
  template:
    metadata:
      labels:
        app: ipnginx
    spec:
      containers:
        - name: ipnginx
          image: 192.168.0.195:5000/ipnginx
---
apiVersion: v1
kind: Service
metadata:
  name: ipnginx-svc
  namespace: ingress-nginx
spec:
  ports:
    - port: 80
      protocol: TCP
      targetPort: 80
  selector:
    app: ipnginx

====================================================

root@master:~/in# cat ingress.yml 
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress
  namespace: ingress-nginx
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
    kubernetes.io/ingress.class: "nginx"
spec:
  tls:
    - hosts:
      - kakao.com
      secretName: kakao.com-tls
  rules:
    - host: kakao.com
      http:
        paths:
          - path: /nginx
            pathType: Prefix
            backend:
              service:
                name: nginx-svc
                port:
                  number: 80
          - path: /ipnginx
            pathType: Prefix
            backend:
              service:
                name: ipnginx-svc
                port:
                  number: 80**

인그리스 설치된 디렉토리에

ingress.yml 있어야 함!

01/11 cd /in 위치 확인하기

**openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout tls.key -out tls.crt -subj "/CN=kakao.com" -days 365

kubectl create secret tls kakao.com-tls --cert=tls.crt --key=tls.key

curl -k <https://kakao.com:30200/nginx>

vi ingress.yml 안에
spec:
  tls:
    - hosts:
       - kakao.com
      secretName: kakao.com-tls
이거 추가하고

curl -k <https://kakao.com:30200/nginx>
curl -k <https://kakao.com:30200/ipnginx**>

카나리

….


metalLB