Depoloyment와 Service 배포를 위한 yaml파일
환경변수를 사용하기 위해 Ansible Kubernetes Module 사용.
playbook/kube_deploy.yaml
- hosts: ansible_host
gather_facts: no
tasks:
#- command: kubectl apply -f java-hello-world/kube_manifest/
- name: Create Deployment
k8s:
state: present
definition:
apiVersion: apps/v1
kind: Deployment
metadata:
name: java-hello
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: java-hello
template:
metadata:
labels:
app: java-hello
spec:
containers:
- name: java-hello
image: "도커허브 Repository 주소:{{ lookup('env', 'BUILD_NUMBER') }}"
imagePullPolicy: Always
ports:
- containerPort: 8080
- name: Create Service
k8s:
state: present
definition:
apiVersion: v1
kind: Service
metadata:
name: java-hello-svc
namespace: default
spec:
type: NodePort
selector:
app: java-hello
ports:
- port: 80
targetPort: 8080
nodePort: 31313