Setelah sekitar 2 mingguan saya tidak post blog sama sekali, alhamdulillah akhirnya bisa berbagi ilmu kembali di blog ini. Disini saya ingin membagikan cara deploy aplikasi stand-alone di Kubernetes, aplikasi ini sederhana diambil dari image web server nginx saja.
Dimana saya akan deploy dua objek yakni deployment yang berisi dua pod saja, dan service dengan type NodePort untuk expose ke luar vm. Berikut langkah-langkahnya:
- Buat direktori dan masuk ke direktori tersebut, misalnya:
mkdir ~/webserver
cd ~/webserver
- Deploy webserver seperti berikut:
vim webserver.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: webserver
name: webserver
spec:
selector:
matchLabels:
app: webserver
replicas: 2
template:
metadata:
labels:
app: webserver
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
kubectl create -f webserver.yaml
kubectl get deploy
kubectl get pods
- Deploy service untuk aplikasi nginxnya :
vim webserver-svc.yaml
apiVersion: v1
kind: Service
metadata:
name: web-service
labels:
run: web-service
spec:
type: NodePort
ports:
- port: 80
protocol: TCP
selector:
app: webserver
kubectl create -f webserver-svc.yaml
kubectl get svc
- Langkah yang terakhir, slakan coba akses menggunakan port nodePortnya:
curl http://ip-vm:[port]
Selamat mencoba.
Sekian dan terima kasih.