在閱讀了在 Google Cloud 中運行容器的幾個選項後,我仍然無法在眾多選項中找到合適的解決方案 - Cloud Run、Kubernetes、Container-OS...
我們需要能夠:
- 運行 docker 映像(託管在 dockerhub 中)
- 將永久磁碟安裝為磁碟區。大數據檔案將儲存在那裡。
- 將連接埠暴露給互聯網
- 自動可擴充性(不使用時為 0,例如晚上)
答案1
聚焦僅有的關於GCP
環境,如問題所示。
有一些解決方案可用於運行您所描述的工作負載。他們之中有些是:
- Kubernetes 引擎
- 雲跑
您可以在此處詳細了解GKE
和之間的差異Cloud Run
:
你可以使用吉凱對於您提到的工作量和要點:
- 運行 docker 映像(託管在 dockerhub 中)
Kubernetes 使用 Docker 映像。您可以選擇指定影像的下載位置從。
- 將永久磁碟安裝為磁碟區。大數據檔案將儲存在那裡。
預設GKE
用作's 和'sgce-pd
的骨幹。您將能夠在那裡存儲 pod 所需的數據:PVC
PV
- 將連接埠暴露給互聯網
Kubernetes 有多種選項可讓流量進入叢集。他們之中有些是:
ClusterIP
- 僅限內部NodePort
LoadBalancer
Ingress
您可以在這裡閱讀有關它們的更多資訊:
- 自動可擴充性(不使用時為 0,例如晚上)
透過使用 Kubernetes,您不僅可以自動擴展節點,還可以自動擴展正在執行應用程式的 pod:
- Cloud.google.com:Kubernetes Engine:文件:概念:叢集自動縮放器- 集群自動縮放器將不是自動縮減至 0 個節點
- Horizontal Pod Autoscaler(副本數量):
- Cloud.google.com:Kubernetes Engine:文件:概念:水平 Pod 自動縮放器- HPA 將不是擴展到 0 個 Pod
- Vertical Pod Autoscaler(資源與限制):
其他資源:
- Kubernetes.io
- Cloud.google.com:Kubernetes 引擎:文件:教學課程
- Github.com:Kubernetes:Kompose- 將 Docker Compose 翻譯為 Kubernetes