摘要:應用被綁定到虛擬機或者容器并且成為主要的管理元素。采用的方法是他們正在使用的一系列實現容器自動化的工具,和。,使用相同的作為標準引擎實例,被設計用來提供容器可擴展的環境。
歡迎來到后硬件時代。在這個時代我們把容器或者是虛擬機遷移到我們需要的地方,而不需要考慮容器或者虛擬機。這里我們介紹一些新的Docker工具來做這份工作。
構建下一代應用是一回事,管理和運行它們是另一回事。
也許理解上面那句話的最好方式是通過一個老的類比:寵物 vs 奶牛。人們采用特別的方法使寵物存活并保持健康,管理員們用同樣的方式來小心照料高端服務器以及它附帶的一切冗余事物。但是在農場里,一頭死去的奶牛依然是做生意成本的一部分。可是在今天云的世界里,應用的設計允許出現失敗,一臺服務器掛了也沒什么大不了的。
現代應用編排工具的角色是監測成群的虛擬服務器或容器并且確保它們在正確的農場漫步(譯者注:這里作者把容器和虛機類比奶牛,它們在農場漫步指虛機和容器能夠在基礎設施上正確有效地運行)。如果一個主機死掉了,一個新的虛擬機甚至新的容器會被快速地實例化出來。實例化過程中根本就沒有管理員的干預,因為整個過程是自動的。你也不需要精確地知道哪一臺主機或者容器或者它們的組合在運行你的應用程序。人們夢想實現IT自動化已經很久了。終于,今天的一些工具開始兌現這個承諾。如果你正在使用云級別的應用,尤其是需要擴展微服務應用,那么這樣的工具對你很重要。
一個為數據中心準備的系統在下面的場景中,數據中心操作系統的想法正逐步實現:除了作為計算,存儲,網絡的元素之外,單個服務器不那么重要。應用被綁定到虛擬機或者容器并且成為主要的管理元素。與管理單個服務器相反,我們要管理一整個數據中心:劃分數據中心來支持不同的應用程序,構建不需要知道底層硬件任何信息的開發測試部署環境。它標識一個新時代的開始,那些為特定工作負載配置硬件已經是過去的事情了。
一個關鍵概念是編排:它指動態放置應用程序和服務,以充分利用現有計算資源。編排是分布式,自動化計算的重要工具。它通過應用的定義和程序集來決定主機的放置和工作負載,管理擴展以及確保失敗的主機和服務被正確處理。
雖然Google的Kubernetes和Apache的Mesos項目或許是最著名的編排解決方案,但是它們距離最終的解決方案相差還很遠。它們都是復雜的工具,需要在技能和資源上投入很多。它們是最好的應用大規模部署場景的工具。
另外,小部分企業已經遷移到提供編排服務的私有云上,如Microsoft,OpenStack或VMware提供的私有云服務。但是,絕大多數組織依然在實驗交付下一代應用程序的過程和所需要的工具。
用Docker放牧“奶牛”我們需要一系列工具,它們能實現從一或兩臺主機擴展到一或兩架主機再到整個數據中
心。Docker采用的方法是他們正在使用的一系列實現容器自動化的工具:Machine,Swarm和Compose。
Machine是Docker自動化工具的心臟,因為它使建立,配置主機服務器的過程自動化。它通過使用Docker的API為你提供多帶帶的命令來建立主機服務器,配置底層Docker引擎并且設置客戶端工具。它還能夠附加一個主機到已存在的Swarm集群或者從原型創建一個新的集群。除此之外,你可以在不同的云供應商上使用容器以及在你選擇的云環境上用命令行設置主機。
一旦你實現了自動創建容器主機和啟動Docker引擎,你可以使用Swarm,一款Docker集群管理工具,把這些主機集中到一個計算組織中。Swarm,使用相同的API作為標準Docker引擎實例,被設計用來提供容器可擴展的環境。如果你已經在你的DEVOPS環境中運行Docker, 你可以通過安裝Swarm實現迅速擴展, 并繼續使用現有DEVOPS工具和流程。Swarm有一個內置的調度器分配容器到單個Docker引擎節點,它還支持使用不同的策略來優化部署。
創建一個Swarm就像給現有集群增加一個引擎一樣容易。你可以使用Machine自動創建新的引擎或者使用Docker的API獲得現有節點的索引。一個選擇是使用Docker Hubregistry來簡化服務發現,就像Swarm標識和管理已注冊的主機一樣。Compose是一款更加復雜的工具。它使用YAML構建應用程序的描述,向我們展示一個應用程序中的多個容器是如何相互連接的。YAML有很重要的意義,因為它詳細描述了你的引用程序,查閱YAML就像訪問像Swagger上的API一樣詳細(譯者注:Swagger是一款全球著名的API管理框架)。一旦你創建了應用程序的描述信息和它的構建方式,剩下的只需要一行腳本命令就能啟動應用了。
保持簡單或許Docker編排工具最有趣的方面是它的簡單。這三款工具(Machine,Swarm,Compose)
都采用簡單的命令,所以它將Jenkins或者Puppet和Chef這些環境管理工具腳本化不再復雜。因為這三款工具是在現有Docker API上構建的,所以他們讓分布式環境的管理和控制更容易,它們讓開發環境到生產環境的遷移大大簡化。Docker的一些工具很適合作為數據中心的管理工具,就像Kubernetes。這些工具也很適合與公有云提供的工具協同工作。當你的應用程序從單服務器的開發測試環境擴展到運行在Azure或AWS的全面云服務上時,將Machine,Swarm和Compose組合使用,你能夠更好地管理這些應用。即使應用程序在云規模的Mesos上運行,開發者們也不需要知道它們將容器交付到哪里,因為應用在被Swarm配置后看起來像一個Swarm腳本。這種抽象就是云計算相關的。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26435.html
摘要:現在是時候使用安裝一個多節點和了。容器的容器是無狀態的,重復運行將清除保存在容器內數據。這個安裝程序只支持。空容器啟動后,我們調用,依次進行,下載安裝并配置。這是必要的,有兩個原因。 現在是時候使用Docker安裝一個多節點Codenvy On-Prem和Eclipse Che了。 Docker容器包裝一塊軟件到一個文件系統,這里面包含一切它運行的要素:code, runtime, s...
摘要:測試后,使用來發布。部署軟件組件,啟動虛擬機,將虛擬機分類到和節點,然后部署密鑰清單。集群自動化集群配置由三個控制。自簽證書簽署的服務器端證書和它的密鑰文件。 我們之前聊了把OpenStack跑在K8S上,如何基于Kubernetes在TCP云端創建私有云解決方法,運用在生產或在OpenStack啟動虛擬化。今天換個姿勢,我們來看看如何在OpenStack虛擬機上運行Kubernete...
摘要:環境部署第一步,我會按默認的向導創建一個新的虛擬私有云,這個虛擬私有云是為準備的。的應用程序將自己在內運行。所有的主機都可以使用公有的,可如果你是在虛擬私有云上有主機的話,這就有點麻煩了,所以你可以選擇使用私有而非公有。 眾所周知,亞馬遜有EC2容器服務,它是亞馬遜用于運行Docker容器的解決方案。不過我覺得EC2容器服務不怎么好用,所以現在我要在AWS上測試Rancher和Kube...
摘要:環境部署第一步,我會按默認的向導創建一個新的虛擬私有云,這個虛擬私有云是為準備的。的應用程序將自己在內運行。所有的主機都可以使用公有的,可如果你是在虛擬私有云上有主機的話,這就有點麻煩了,所以你可以選擇使用私有而非公有。 眾所周知,亞馬遜有EC2容器服務,它是亞馬遜用于運行Docker容器的解決方案。不過我覺得EC2容器服務不怎么好用,所以現在我要在AWS上測試Rancher和Kube...
摘要:聯調測試,無需依賴他人。針對以上問題,有兩種解決方法,一個是自己搭建私有服務,另一個是用云服務的鏡像管理平臺如阿里云的容器鏡像服務。利用,先對阿里云的服務進行登錄。推送后,就能在阿里云的倉庫上看到這個鏡像。 Docker簡述 Docker是一種OS虛擬化技術,是一個開源的應用容器引擎。它可以讓開發者將應用打包到一個可移植的容器中,并且該容器可以運行在幾乎所有linux系統中(Windo...
閱讀 3480·2021-11-19 09:40
閱讀 1496·2021-10-13 09:41
閱讀 2671·2021-09-29 09:35
閱讀 2715·2021-09-23 11:21
閱讀 1703·2021-09-09 11:56
閱讀 836·2019-08-30 15:53
閱讀 848·2019-08-30 15:52
閱讀 604·2019-08-30 12:47