K8s Service

 

什麼是 service ?

讓外部或 pod 可以正確的連接到 pod 裏面的組件
如下圖:
 
notion image
 
 

範例練習:

apiVersion: v1 kind: Service metadata: name: microbot-service spec: type: NodePort ports: - port: 80 nodePort: 30390 protocol: TCP targetPort: 80 selector: app: microbot

指令

microk8s kubectl create -f SERVICE_NAME.yaml
在這個範例中表示
  • service port 是 80
  • 機器上的 port 是 30390 被佔用了
  • pod 上面的 port 是 80
  • spec.selector: selector 則會幫我們過濾請求,Service 會將特定的 port number 收到的流量導向 標籤為app=microbot的 Pods
 
 
 
 
🔥
不小心創建 namespace 為 kube-system 的 service 怎麼辦?

查看 kube-system 底下的資源

microk8s kubectl get svc -n kube-system
確定 svc 的確是在 kube-system 之後就可以刪除了
microk8s kubectl delete svc dashboard-service -n kube-system