apiVersion:v1kind:Servicemetadata:name:front-servicenamespace:frontendspec:selector:# name: spring-boot-app # Pod와 연결할 라벨 셀렉터app:front-app# Pod와 연결할 라벨 셀렉터ports:-protocol:TCPport:80# 서비스가 노출하는 포트targetPort:8080# 서비스로 전달되는 트래픽을 받을 Pod의 포트# nodePort: 30080# type: ClusterIP # 클러스터 내에서만 사용 가능한 서비스# type: NodePort # Node의 IP주소를 통해 접근 가능한 서비스type:LoadBalancer# 외부 트래픽도 전달할 수 있는 서비스
Ingress.yaml 배포
# apiVersion: networking.k8s.io/v1 kubernetes 1.19이상 버전에서 사용가능apiVersion:networking.k8s.io/v1beta1kind:Ingressmetadata:name:front-ingressnamespace:frontendannotations:nginx.ingress.kubernetes.io/rewrite-target:/# appgw.ingress.kubernetes.io/use-private-ip: "true"# appgw.ingress.kubernetes.io/health-probe-path: /index.htmlspec:rules:-host:"blackcode.site"# 외부 도메인을 지정http:paths:-path:/pathType:Prefixbackend:serviceName:front-serviceservicePort:80# NodePort 서비스의 포트를 80으로 설정