以下是初步了解
Kubernetes是一個用於自動化部署、擴展和管理容器化應用程序的開源容器管理平台。
總之可以方便管理容器,防止故障,自動升級及回滾
基本概念:
容器化應用程序: Kubernetes使用容器技術(例如Docker)來將應用程序及其相關依賴項打包成一個可移植的單元,稱為容器。這使得應用程序可以在不同環境中一致運行。
Pods: Pod是Kubernetes中的最小部署單位,它包含一個或多個容器。這些容器共享相同的網絡和存儲空間,通常一起運行。
Replication Controller: 用於確保Pod的副本數目,以實現高可用性和擴展性。
Service: Service定義了一組Pod的網絡訪問方式,使應用程序能夠通過一個穩定的DNS名稱或IP地址進行訪問。
Namespace: Kubernetes使用Namespace來區分不同的使用者或應用程序,從而實現多租戶支持。
Deployment: Deployment是用來管理Pod的升級和回滾的控制器,確保應用程序保持最新狀態。
使用Kubernetes來運行一個容器化應用:
今天有個簡單的容器nginx-deployment.yaml
創建Deployment:
kubectl apply -f nginx-deployment.yaml
創建一個Service來暴露Nginx Deployment:
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
type: LoadBalancer
創建Service:
kubectl apply -f nginx-service.yaml
確認Service已成功創建,並獲得IP地址:
kubectl get services