728x90
ingress-tomcat-http-go.yaml 파일 생성
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: tomcat-http-go-ingress
spec:
tls:
- hosts:
- tomcat.gasbugs.com
- http-go.gasbugs.com
secretName: tls-secret
rules:
- host: tomcat.gasbugs.com
http:
paths:
- path: /
backend:
serviceName: tomcat
servicePort: 80
- host: http-go.gasbugs.com
http:
paths:
- path: /
backend:
serviceName: http-go
servicePort: 80
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: deploy-tomcat
labels:
app: tomcat
spec:
replicas: 3
selector:
matchLabels:
app: tomcat
template:
metadata:
labels:
app: tomcat
spec:
containers:
- name: tomcat
image: consol/tomcat-7.0
ports:
- containerPort: 8080
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: http-go
labels:
app: http-go
spec:
replicas: 3
selector:
matchLabels:
app: http-go
template:
metadata:
labels:
app: http-go
spec:
containers:
- name: http-go
image: gasbugs/http-go
ports:
- containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
name: http-go
spec:
selector:
app: http-go
ports:
- protocol: TCP
port: 80
targetPort: 8080
nodePort: 30001
type: NodePort
---
apiVersion: v1
kind: Service
metadata:
name: tomcat
spec:
selector:
app: tomcat
ports:
- protocol: TCP
port: 80
targetPort: 8080
nodePort: 30002
type: NodePort
create 명령으로 kubenetes 네트워크 생성
$ kubectl create -f ingress-tomcat-http-go.yaml
방화벽 정책 추가
gcloud compute firewall-rules create rule1 --allow tcp:30001-30002
tls 인증서 추가
kubectl delete secret tls-secret
openssl genrsa -out tls.key 2048
openssl req -new -x509 -key tls.key -out tls.cert -days 360 -subj /CN=tomcat.gasbugs.com
kubectl create secret tls tls-secret --cert=tls.cert --key=tls.key
curl -k https://tomcat.gasbugs.com
쿠버네티스 엔진에서 서비스 및 수신을 클릭하고 각각의 서비스가 잘 동작하는 지 확인한다
특히 ingress가 잘 동작하는 지 확인 필요
인그레스가 IP를 할당 받기 까지는 약 2분, 내부에 라이브니스를 통해 서비스 정상동작 테스트가 약 10분 소요된다
테스트 중간에는 간헐적인 접속이 가능하다
이 10분동안은 인그레스에 느낌표 마크가 떠있으며 인그레스를 직접 클릭하면 수신 쪽에서 테스트 현황을 파악할 수 있다
현재는 총 세개의 서비스가 돌아가는지 파악하며 node의 30001과 30002, 30291을 모두 테스트하여 성공한 모습을 확인할 수 있다
저 백엔드 서비스로 떠있는 것은 GCE에서 제공하는 로드밸런서이다
테스트 되는데 시간이 발생할 수 있고 각 서비스마다 3번의 테스트 완료가 되면 그때부터 사용 가능하다
728x90
'개발강의정리 > DevOps' 카테고리의 다른 글
[데브옵스를 위한 쿠버네티스 마스터] 쿠버네티스 핵심 개념-Kube 시스템 컴포넌트 (0) | 2020.09.20 |
---|---|
[데브옵스를 위한 쿠버네티스 마스터] minikube 소개 및 활용 (0) | 2020.09.13 |
[데브옵스를 위한 쿠버네티스 마스터] 4. 쿠버네티스 핵심 개념 (0) | 2020.08.22 |
[데브옵스를 위한 쿠버네티스 마스터] 3. 쿠버네티스 들어가기 (0) | 2020.08.22 |
[데브옵스를 위한 쿠버네티스 마스터] 2. 쿠버네티스 소개 (0) | 2020.08.18 |
댓글