2016-01-18 166 views
0

我正在學習Kubernetes,因爲它是管理和部署容器的非常有用的工具。使用Kubernetes部署Docker容器

所以我的問題是:

比如我有2個實例在Amazon EC2稱爲Kube1和Kube2。所以在Kube1上,我使用Docker創建了一些容器併成功部署了wordpress。現在我想在Kube1和Kube2之間創建一個集羣,然後使用Kubernetes將Kube1上的所有容器部署到Kube2。有沒有任何一步一步的教程,讓我通過它?我很喜歡Kubernetes的許多新概念。

回答

0

Kubernetes編排工具。 我允許您在集羣上部署容器以確保可用性。

這意味着您可以定義名爲Pods的容器規格(或容器集合),然後將它們發送到要部署的集羣管理器。

您不會選擇Pod的部署位置:Kubernetes根據其需要的資源以及集羣中可用的資源來決定Pod的部署位置。

服務,的概念(我覺得這是「服務」混亂往往意味着在今天的行話你的「應用」),但Kubernetes服務是一個負載均衡的代理波德你的目標。 服務確保您可以使用「選擇器」與Pod對話,該選擇器定義了Pod的目標。

如果您有Wordpress網站,它會提供內容。如果您有兩個容器運行此站點,則這兩個容器是相同的,那麼服務會負載平衡請求到兩個Pod之一。

現在,對於這個工作,你需要2個莢是一樣的,如果數據被更新,這意味着(因爲這將是一個博客)的數據需要去的WordPress的服務器不知怎地單一來源。 您可以擁有兩臺服務器連接的共享Database Pod。理想情況下,您使用負責複製的分佈式數據庫版本。或者你需要鏡像數據庫。

您提到的用例有點不同:您正在談論的是將基礎架構移植到另一臺服務器。 如果您的容器在一個節點上運行,則在其他位置複製應該像將容器推送到註冊表並將其拉到另一個節點一樣簡單。對於這些數據,您可能需要備份卷並手動移動它,或者創建Docker卷以推送到註冊表。

+0

關於「您不選擇Pod的部署位置」的說明。默認情況下,調度程序將查找放置Pod的節點,但如果需要,您可以自己手動放置Pod(並且在極端情況下甚至可以在沒有調度程序的情況下運行)。 –

+0

非常感謝您的評論。在我的情況下,我只想測試只有2個實例。我想使用kubernetes從主實例向節點實例部署1個容器docker(這是運行Wordpress的映像)。而已。 –

+0

K8s團隊沒有冒犯,但爲此,你最好做直接的Docker部署。 – MrE