이전 Ingress 실패

사용 yml 파일

app-deploy.yml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: app-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: oliveyoung
  template:
    metadata:
      labels:
        app: oliveyoung
    spec:
      containers:
        - name: myapp
          image: 409492321037.dkr.ecr.ap-northeast-2.amazonaws.com/cicd-gitlab:f83c2540
          ports:
            - containerPort: 80
          envFrom:
            #- configMapRef:
            #    name: oliveyoung-config
            - secretRef:
                name: oliveyoung-secret

app-service.yml

apiVersion: v1
kind: Serviceq
metadata:
  name: app-service
  # annotations:
   # service.beta.kubernetes.io/aws-load-balancer-subnets: "subnet-0d1a3f4ac27a16701"
   # service.beta.kubernetes.io/aws-load-balancer-type: external
   # service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: ip
   # service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing
spec:
  #type: LoadBalancer
  ports:
  - port: 80
    targetPort: 80
  selector:
    app: oliveyoung

app-ingress.yml(+ingressclass)

apiVersion: networking.k8s.io/v1
kind: IngressClass
metadata:
  name: alb-ingress-class
spec:
  controller: ingress.k8s.aws/alb
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: nginx-ingress
  annotations:
    alb.ingress.kubernetes.io/scheme: internet-facing
    alb.ingress.kubernetes.io/target-type: ip
    alb.ingress.kubernetes.io/healthcheck-path: /health
spec:
  ingressClassName: alb-ingress-class
  rules:
  #- host: nginx.example.com
  - http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: app-service
            port:
              number: 80

app-cm.yml

apiVersion: v1
kind: ConfigMap
metadata:
  name: oliveyoung-config
data:
  DB_USER: admin
  JWT_ACCESS_EXPIRATION: "5184000000"
  JWT_REFRESH_EXPIRATION: "15552000000"
  application.properties: |-
    spring.profiles.include=k8s
    spring.application.name=oliveyoung-fbu-server
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    spring.jpa.database=mysql
    spring.jpa.show-sql=true
    spring.jpa.hibernate.ddl-auto=update
    spring.jpa.properties.hibernate.format_sql=true
    spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
    spring.datasource.username=admin
    jwt.access-expiration=5184000000
    jwt.refresh-expiration=15552000000

secret생성

kubectl delete secret oliveyoung-secret -n argocd(->해당 네임스페이스)

kubectl create secret generic oliveyoung-secret \\
  --namespace argocd(->해당 네임스페이스) \\
  --from-literal=spring.datasource.username=admin \\
  --from-literal=spring.datasource.password='qwer1234!' \\
  --from-literal=spring.datasource.url='jdbc:mysql://oliveyoung-fbu-rds-prod2.cfcskomwutzy.ap-northeast-2.rds.amazonaws.com/oliveyoung_fbu' \\
  --from-literal=jwt.access-secret='iDGuH1gTPEAdwr644qWNs7AWwWSi6qiRoHbPbNqdDYgba3XRUZs7Mlw1krzkz0SF4qypIbBCmTqFKOsuNBW9hQ==' \\
  --from-literal=jwt.refresh-secret='g144djQiICVIPbmW8ZdARDDTwcTDXPFaDyA6Ih1oalEDJmyAuYKbEu84uEua5CKCDU9FHGo5BYRPtLAMaQI3hA=='

=>
* db명 변경 필요 *
oliveyoung-fbu-rds-prod2.cfcskomwutzy.ap-northeast-2.rds.amazonaws.com/oliveyoung_fbu