什麼是容器linux?您應該使用它嗎?

集裝箱越來越受歡迎。Container Linux,以前稱為CoreOS,是一種為簡單的容器化部署而設計的Linux作業系統。這個概述和容器Linux的實際操作將告訴您更多資訊。...

Linux操作系統有多種風格。雖然像Ubuntu這樣的Linux操作系統相當通用,但還有一些操作系統則瞄準了一個利基市場。有一個面向安全的Kali Linux。輕量級發行版,如Xubuntu,甚至Hannah Montana Linux(!)。對於桌面使用,一個普通的Linux操作系統運行良好。但是,對於運行服務器之類的特殊任務,最好找到一個定製的版本。

linux-container

集裝箱越來越受歡迎。Container Linux,以前稱為CoreOS,是一種為簡單的容器化部署而設計的Linux操作系統。它是最新的利基Linux操作系統之一。請查看這個概述和容器Linux的實際操作。

容器linux實踐:背景知識

在深入研究容器Linux之前,讓我們先簡要概述一下服務器體系結構。容器Linux是為集群部署而設計的。集群部署聽起來相當複雜,但相當簡單。從本質上講,計算機集群是由多個協同工作的服務器組成的。因此,它們作為一個單元或系統而不是多個。此外,群集中的計算機具有執行相同功能的節點或服務器。因此,節點是一臺機器,而集群是一組協同工作的服務器。

大多數常見的容器Linux部署都在集群環境中。以前稱為CoreOS的發行版甚至包含了從一臺機器上啟動集群的方法。然而,容器Linux的定義特性是它對容器的依賴。

與傳統的桌面操作系統不同,所有應用程序都在容器中運行。雖然虛擬機(VM)和容器都使用虛擬化方法,但容器是不同的。與VMs不同,容器使用與主機相同的操作系統內核。由於容器化應用程序和主機使用相同的內核,因此容器部署可以從提高效率中獲益。在虛擬機配置中,每個虛擬機運行一個應用程序和一個來賓操作系統。它運行在主機操作系統和硬件之上。

而容器化部署則在虛擬化軟件之上的自己的容器中運行應用程序。Docker仍然是最流行的容器軟件,儘管chroot、LXC和LinuxVServer是Docker的替代品。

容器linux實踐:為什麼要使用容器?

容器是一種虛擬化方法。為什麼選擇集裝箱化環境?通常情況下,容器提供了改進的性能。通過避免使用單獨的操作系統,而是使用共享內核,可以最大限度地提高CPU、存儲和內存效率。

因為不需要像在VM配置中那樣運行多個操作系統實例,所以可以運行更多容器。性能增強源於對單個操作系統的需求。類似地,您可以比在虛擬機環境中更快地創建容器。因此,容器更適合保持敏捷性,並允許持續交付和持續集成。

敏捷開發集中於迭代和考慮不可預測性。您可以閱讀敏捷宣言以進一步瞭解敏捷哲學。然而,儘管容器有很多優點,但它並不是一種完美的虛擬化方法。由於容器共享主機操作系統內核,因此存在安全風險。任何影響容器訪問操作系統的漏洞或漏洞。但是,在虛擬機中的操作系統上運行容器化應用程序是一種解決方法。這可確保主機操作系統與單一容器主機操作系統隔離。

集裝箱化還要求集裝箱使用相同的操作系統。對於虛擬機,每個應用程序都有自己的操作系統。因此,不能在容器化Linux環境中運行為Windows Server設計的應用程序,反之亦然。

什麼是容器linux(container linux)?

CoreOS Core Update

CoreOS,或者現在所稱的容器Linux,是一個開源Linux操作系統。它是一個輕量級發行版,旨在實現集群部署。更具體地說,CoreOS專注於簡單、可靠、可擴展的部署。你找不到包管理器。相反,容器Linux要求所有應用程序都在容器內運行。容器Linux使用Chrome操作系統作為基礎。因此,容器Linux仍然相當輕量級。為了進行測試,我在一臺老化的HP Envy m6-1205dx AMD A10筆記本電腦上的虛擬機上運行了Linux操作系統(以前稱為CoreOS)。系統資源消耗保持較低水平。

因為Container Linux避開了幾個傳統的桌面Linux操作系統特性,所以它保持了發行版的輕量級。與桌面操作系統不同,您找不到包管理器。相反,所有應用程序都作為Docker容器運行。這有利於可移植性和服務隔離。如果你想要一個桌面環境,那你就走運了。容器Linux缺乏圖形用戶界面。相反,一切都是基於命令行的。CoreUpdate儀表板確實提供了有關計算機運行狀況、正在運行的服務和集群運行狀況的信息。但它只能作為高級託管Linux訂閱中的一個組件提供。

容器linux體系結構

容器Linux是輕量級的,專為容器化和集群化而設計。由於沒有桌面環境,配置功能與CentOS或Ubuntu等Linux操作系統不同。在初始引導時,容器Linux加載一個雲配置文件。你需要在雲配置中輸入信息。這可能有點棘手,特別是對於那些不熟悉雲配置的人。但它是一個基本文件,使容器Linux能夠加載基本服務、更改參數和管理集群。

此外,還有

etcd

fleet

守護進程仍然是容器Linux不可或缺的一部分。默認情況下,這兩個服務都在啟動時啟動。此外,在啟動時,雲配置文件讓主機知道如何加入現有集群。這個

etcd

守護進程為集群中的主機分發和存儲數據。它對於維護配置和服務發現至關重要。這個

fleet

守護進程類似於分佈式初始化。此守護程序鏈接到

systemd

為集群中的主機初始化,並負責服務調度等任務。

一個系統中的每個系統

fleet

群集只運行一個

fleetd

守護進程。這個守護進程承擔兩個主要職責,即代理和引擎。作為引擎,守護進程執行調度決策。而代理端執行單元。在艦隊群裡,

etcd

是唯一的數據存儲。諸如集群存在、單元狀態和單元文件之類的信息都存儲在

etcd

守護進程。此外,它還是艦隊代理和引擎通信的媒介。

容器linux的實踐:誰應該使用它?

containerlinux是免費下載的、輕量級的,而且在虛擬機中安裝起來相當簡單。任何需要快速、可擴展、容器化部署的人都應該選擇容器Linux。大多數系統管理員和數據庫管理員將從容器Linux中獲益最大。由於Container Linux缺乏桌面環境,因此它最適合集群管理和服務器設置。如果您正在尋找Linux服務器操作系統,ContainerLinux是12個最好的Linux服務器發行版之一。

Air Pair的特點是對CoreOS激勵機制進行了出色的總結。本文提到了高可用性、生產環境維護、軟件版本控制以及etcd作為使用容器Linux的主要工具。值得注意的是,還有一個非常專注的開源社區。容器Linux是為經驗豐富的Linux用戶量身定做的。雖然幫助文檔很全面,但它確實假定對Linux的熟悉程度適中。新手和初學者在初始安裝時可能會遇到一些問題。

更具體地說,雲配置可能是一個挑戰。在一段CoreOS安裝視頻的評論部分,YouTube用戶setyosonugroho說:“不錯的教程!當學習CoreOS中的雲配置文件配置時,會感到非常困惑。“雖然配置不是非常困難,但是Container Linux假設對Linux特性有很強的掌握,比如VIM編輯器。

使用容器linux的實踐:如何安裝

安裝容器Linux有很多方法。根據CoreOS網站,官方平臺包括amazonec2、DigitalOcean、microsoftazure、bare metal和OpenStack。除了oraclelinux、CentOS和Suse,CoreOS是為數不多的與Azure兼容的Linux操作系統之一。得益於一個充滿活力的社區,諸如Packet、Rackspace、Brightbox、VirtualBox和VMware等平臺也得到了支持。我發現最簡單的方法是使用ISO文件在VirtualBox上安裝Container Linux。下面是如何使用VirtualBox的快速指南。

配置virtualbox

打開VirtualBox,系統會提示您輸入虛擬機名稱、操作系統類型和版本。我把我的名字叫做CoreOS。選擇Linux作為“類型”。作為版本,請使用Linux 2.6/3.x/4/x(64位)。單擊“下一步”。

CoreOS Start

現在需要分配RAM。CoreOS建議內存至少為1024mb。

CoreOS RAM

選擇RAM後,需要添加虛擬硬盤。使用“立即創建虛擬硬盤”選項。

Create VHD CoreOS

在下一個屏幕上,將提示您輸入硬盤文件類型。選擇VDI或VirtualBox磁盤映像。

CoreOS VDI

之後,配置存儲空間。我建議使用動態分配的硬盤文件。

CoreOS Dynamic

然後選擇文件位置和大小。我保留了默認的CoreOS作為名稱,並選擇了8gb的文件數據大小。

CoreOS File Size Allocation

正確配置CoreOS VirtualBox虛擬機後,繼續並單擊綠色的開始按鈕。

CoreOS Start

單擊“開始”後,需要選擇一個啟動盤。導航到您獲得CoreOS ISO的文件夾並繼續。

配置容器linux

在啟動CoreOS ISO之後,容器Linux開始加載。您最終會看到一行給出了您的CoreOS版本和一個命令行:

core@localhost

鍵入:

sudo openssl passwd -1 > cloud-config-file

CoreOS Passwd Config

命令行顯示一個警告,如果無法打開配置文件。輸入所需密碼並繼續。下一步輸入:

cat cloud-config-file

CoreOS Cat Cloud Config

這將返回一個長字符串並創建一個新的雲配置文件。現在在可視化編輯器中打開雲配置:

vi cloud-config-file

CoreOS VI

這將加載一個可以編輯的雲配置文件。CoreOS包含一個高級雲配置示例文件:

CoreOS Cloud Config Example

我的看起來像:

#cloud-configusers: moepasswd: [SSL password]groups:- sudo- docker

CoreOS Cloud Config Ex

您可以通過輸入以下內容來檢查雲配置文件:

cat cloud-config-file

CoreOS Check Cloud Config

這將返回您的配置文件。如果一切正常,請繼續安裝CoreOS:

sudo coreos-install -d /dev/sda -C stable -c cloud-config-file

CoreOS Install Final

您將看到一條消息,說明正在下載、編寫和驗證CoreOS。一旦完成,您將看到一條消息,上面寫著“成功!CoreOS[版本]安裝在/dev/sda上。”

CoreOS Success

關閉CoreOS虛擬機,然後重新啟動。啟動備份時,請確保卸載CoreOS ISO,否則live CD將再次運行。

CoreOS將加載,您將在命令行中看到一個登錄提示:

localhost login:

CoreOS Final Login

輸入用戶名和密碼。這將加載一條消息“Container Linux by CoreOS[version]”和一個新的命令行。

Final Login CoreOS

使用容器linux的實踐:下一步

現在已經正確安裝了Container Linux by CoreOS,您可以開始設置容器和集群了。CoreOS文檔提供了一個優秀的快速入門指南。這裡有關於使用etcd進行服務發現的信息,也有關於Docker容器管理的部分。我做了一些快速測試,比如“helloworld”Docker拉。另外,我安裝了一個Plex Docker映像,因為我是一個大媒體服務器愛好者。最後,我建立了集群管理的艦隊。

首先要配置容器Linux的主要組件:

  • etcd公司
  • 碼頭工人
  • 艦隊

通過配置這三個主要基礎,您就可以進行服務發現、集群管理和設置容器。然後你就可以開始在一個安全的Docker容器中對應用程序進行容器化並安全地測試桌面應用程序了。

容器linux的實踐:最後的想法

我不經常使用容器,但是容器Linux簡化了部署。使用示例配置文件的文檔非常好。注意,對於初學者來說,一些非官方的視頻安裝教程使CoreOS的安裝更容易。雖然CoreOS聲稱Container Linux是輕量級的,但我最初對此持懷疑態度。然而,我在虛擬機中以相當低的資源消耗構建了容器Linux。因為我想測試Container Linux是否真的是輕量級的,所以我使用了我的老化的HP筆記本電腦,沒有遇到任何問題。

然而,初始安裝中的一些步驟並不是非常“初學者友好”,安裝和設置容器Linux需要對Linux非常熟悉。值得注意的是,我沒有嘗試CoreUpdate儀表盤,CoreOS提供了一個付費的高級功能。雖然我在使用命令行時沒有問題,但是一個用於監視的圖形環境將是一個很好的補充。

系統管理員和數據庫管理員從容器Linux中獲益最大。但是對於家庭服務器來說,這是一種創建集群環境的簡單而輕量級的方法。此外,使用容器Linux,您可以從一臺機器啟動集群。但是容器Linux是使用容器的一個很好的入門。如果您想進一步瞭解Docker和容器,那麼Container Linux在虛擬機中運行得非常好,並提供了入門所需的所有資源。

除了經驗豐富的DevOps工程師、系統管理員和數據庫管理員之外,對於容器新手來說,這是一個非常好的現成解決方案。最終,CoreOS提供的容器Linux是創建可伸縮、高效、容器化環境的一種簡單方法。

你在用CoreOS嗎?你打算去嗎?請在下面的評論部分告訴我們您是如何在Linux上進行容器化的!

  • 發表於 2021-03-15 05:37
  • 閱讀 ( 49 )
  • 分類:電腦

你可能感興趣的文章

你能在linux上執行它嗎?11個在linux上執行的windows應用程式

...Windows系統相同。事實上,Windows和Linux版本之間幾乎沒有什麼區別。 ...

  • 發佈於 2021-03-11 00:39
  • 閲讀 ( 53 )

易於安裝,簡單易用:但您應該切換到Manjaro17嗎?

... 什麼是曼哈羅linux(manjaro linux)? ...

  • 發佈於 2021-03-14 08:33
  • 閲讀 ( 49 )

什麼是提高辦公效率的最佳linux雲服務?

...方便的訪問,但有些服務更適合於編寫和編輯文件。瞭解什麼是提高辦公效率的最佳Linux雲服務。 ...

  • 發佈於 2021-03-15 02:43
  • 閲讀 ( 46 )

最新的linux作業系統,適用於各個領域

...很好的方式來複活它。當然,你仍然會受限於你能用它做什麼(不,它可能不能執行Crysis),但至少它是功能性的。 ...

  • 發佈於 2021-03-16 08:05
  • 閲讀 ( 53 )

linux mint與ubuntu:您應該選擇哪個發行版?

... 什麼是烏班圖(ubuntu)? ...

  • 發佈於 2021-03-18 17:58
  • 閲讀 ( 63 )

如何在一個小時內安裝一臺linux媒體伺服器

...影收藏設計終極媒體伺服器可能是一項挑戰。你應該使用什麼硬體,你應該安裝什麼作業系統,你應該執行什麼樣的軟體? ...

  • 發佈於 2021-03-21 20:50
  • 閲讀 ( 57 )

什麼是linux beta版,您應該試試嗎?

...幾個月,beta版通常首先出現。這提供了一個機會,看看什麼是未來的管道提前。 ...

  • 發佈於 2021-03-23 09:59
  • 閲讀 ( 43 )

使用docker虛擬化軟體的6個理由

... 什麼是docker與虛擬機器的區別(the differences between docker and virtual machines)? ...

  • 發佈於 2021-03-30 03:55
  • 閲讀 ( 40 )

Chrome74的新功能,4月23日釋出

...其中有很多。下面我們就來看看Chrome75及更高版本能帶來什麼。 標籤傳送:你可以直接將標籤從一個裝置傳送到另一個裝置。所以,如果你在**上閱讀,想接管你的電腦,這將讓你做到這一點。我等不及了。 驅動下載阻止:這...

  • 發佈於 2021-04-03 15:59
  • 閲讀 ( 43 )

windows軟體的未來:什麼是msix檔案?

...能安裝一個奇妙的程式,垃圾程式,或更糟的東西。 我什麼時候開始看到msix檔案? 可能需要一段時間才能看到MSIX檔案。微軟仍在微調一些承諾的功能,直到最近,只有Windows10的內部版本才能建立MSIX包。 即使經過微調,開發人...

  • 發佈於 2021-04-04 01:12
  • 閲讀 ( 54 )
h2338618
h2338618

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦