簡體   English   中英

在Kubernetes中自動生成Pod

[英]Automatically Generate Pods in Kubernetes

我之前創建了一個Flask服務器,該服務器使用Docker Python SDK生成Docker容器。 當客戶端到達特定端點時,服務器將生成一個容器。 它可以維護隊列,並且可以殺死沒有響應請求的容器。

我想向Kubernetes遷移,但是我開始認為我當前的服務器將無法像docker中那樣自動“生成” pod。

docker.from_env().containers.run('alpine', 'echo hello world')  

Docker Swarm是否是一個更好的解決方案,還是在Kubernetes中進行了隱蔽的實踐? Kubernetes Python API是否會是自動生成Pod和作業的邏輯解決方案,而Flask服務器是管理集群中其他Pod的Pod?

'Kubectl run'與'docker run'非常相似,因為它會基於docker映像創建一個帶有容器的Pod(例如, 如何從Kubernetes容器中運行curl命令 )。 請參閱https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/了解更多比較。 但是,使用k8運行的是包含容器而不是直接運行容器的Pod / Job,因此這將為您增加一層額外的復雜性。

Kubernetes的重點在於協調服務,而不是運行短期任務。 它具有一些功能,可用於運行作業,但這不是其重點。 如果您朝着這個方向發展,那么您可能想看一下knative(和knative構建)或kubeless,因為您所描述的聽起來很像無服務器概念。 或者,如果您想更多地考慮喬布斯,那么也許是旅( https://brigade.sh )。 (有關更多信息,請參見https://www.quora.com/Is-Kubernetes-suited-for-long-running-batch-jobs )。如果您要運行可處理請求的Web應用程序工作負載,請注意不需要殺死無法在k8s上響應的容器,因為k8s將為您監視並重新啟動它們。

我不知道有很多人可以比較。 我懷疑這對您來說會容易一些,因為它更集中於docker(k8s API旨在支持其他運行時),但是也許其他人可以對此發表評論。 我猜想使用群體是否對您有幫助,取決於您的動機。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM