解釋集裝箱化:2020年最佳集裝箱監控工具和解決方案

直到最近,網絡中的容器化還是一種相對晦澀的技術,只有少數高技能的專家才能知道和掌握。 快進到今天,情況發生了很大變化。 網絡中的容器化—儘管有明顯的相似性,但不要與運輸中的容器化相混淆—現在已經成為主流,並且每個網絡專業人員都必須至少對這種驚人的複雜技術有基本的了解。

我們的目標絕不是讓您成為集裝箱專家,而是為您提供足夠的信息,以了解該技術是什麼,其工作原理,可用的產品以及如何對其進行監控。

什麼是網絡中的容器化

我們將從簡要描述容器化及其與虛擬化的區別開始,虛擬化是另一種具有類似目標的技術。 然後,我們將討論該技術的優缺點,并快速了解如何在BYOD,Saas和MDM的上下文中使用該技術。 接下來,我們將探討可用的容器化軟件,然後再審查一些可用於監視容器化環境的最佳工具。

容器化簡而言之

應用程序容器化是一種OS級虛擬化方法,用於部署和運行分佈式應用程序,而無需為每個應用程序啟動整個虛擬機。 因此,多個隔離的應用程序或服務可以在單個主機上運行並訪問相同的OS內核。

應用程序容器包括運行所需軟件所需的運行時組件,例如文件,環境變量和庫。 與容器在虛擬機上的可比部署相比,應用程序容器通常消耗更少的資源,因為容器共享資源而無需使用完整的操作系統來支持每個環境。 在容器中執行的完整信息集稱為映像,並且容器引擎將這些映像部署在主機上。 容器可以在裸機系統,雲實例和虛擬機上以及跨Linux, Windows 和Mac OS系統。

應用程序容器化通常被稱為與微服務和分佈式應用程序一起工作,每個容器獨立於其他容器運行,並且使用主機的最少資源。 每個微服務都通過應用程序編程接口與其他微服務通信,容器虛擬化層能夠擴展微服務,以滿足對應用程序組件的需求並分配負載。

容器化與虛擬化有何不同?

儘管容器化和虛擬化都具有相似的目的,但是它們的操作方式卻大不相同。 例如,在虛擬化中,操作系統的本質是作為應用程序運行的,同時又表現為獨特的虛擬主機。 反過來,此操作系統可用於虛擬主機上安裝的任何應用程序。 相反,容器將操作系統的各個部分與每個應用程序捆綁在一起,並且僅將每個應用程序所需的那些元素,庫和模塊與其捆綁在一起。

另一種查看方式是,虛擬機為一個主機設置了單獨的標識,並使它看起來像是幾台物理機。 虛擬化創建硬件的抽象。 有了容器化,它就是抽象的應用程序。 總體而言,這兩種技術確實在環境之間提供了一定程度的隔離,但是它們以非常不同的方式實現隔離。

在容器化中,容器及其操作系統本質上形成了一種網絡,從而允許將應用程序交付到其他不兼容的機器上。 但是與虛擬化中發生的情況相反,應用程序可以共享容器,並且只需要一個操作系統實例。

集裝箱化的利弊

與虛擬化相比,容器化的最大優勢之一是,無需在接收計算機上永久安裝虛擬操作系統的額外層。 因此,由於容器化的應用程序消除了對目標計算機上預安裝的軟件,服務或操作系統的要求,因此通常更具可移植性。 此外,容器化的應用程序可以在裸機主機以及環境未知的遠程或云服務器上運行。

容器化的另一個優點是,容器中操作系統服務與需要它們的應用程序之間的接近程度通常意味著它可以比典型的虛擬機向最終用戶提供更快的響應時間。 而且,與運行遠程訪問的虛擬機相比,交付容器化應用程序所需的整個網絡上的訪存數量要少得多。 最後但同樣重要的一點是,與分佈式軟件相比,容器化具有多個優勢。 實際上,正是網絡服務類別已成為最近集裝箱化熱潮的主要原因。

但是容器不僅具有優勢,而且在某些情況下您可能更希望避免使用它們。 首先,雖然容器化在Linux操作系統上運行良好,但在Linux上幾乎不支持它 Windows。 另外,由於容器共享操作系統的內核,因此一旦變得易受攻擊,所有容器也將易受攻擊。

網絡是另一個使容器難以使用的領域。 例如,您必須不斷維護良好的網絡連接,同時積極嘗試使容器保持隔離狀態。 同樣,監控也帶來了一系列挑戰。 由於容器化通常用於構建多層基礎結構-在一個容器中包含一個應用程序,因此與在一個虛擬機上運行所有應用程序相比,您必須監視更多的事情。

集裝箱化和BYOD

自帶設備(BYOD)最近很流行,許多組織允許其員工在工作中使用自己的智能手機甚至筆記本電腦。 容器化可以幫助實現這一目標,因為可以通過網絡使應用程序可供員工從其個人設備訪問。 在這些情況下,容器充當“免疫程序”,在公司應用程序和用戶擁有的設備之間建立了屏障。 但是,由於容器可以訪問用戶設備的內核,因此必須仔細管理。

容器化仍然為交付應用程序的組織提供了明顯的安全優勢,因為它消除了向用戶直接訪問網絡的需求,從而降低了病毒感染企業基礎架構的風險。

關於BYOD的容器化的另一個優勢與軟件許可證控制有關。 例如,可以隨時輕鬆撤消應用程序的使用。 由於從未真正將其安裝在用戶的設備上,因此如果設備的所有者離開組織或設備被盜,則可以將其掛起,以便重新使用其許可證。

最後但並非最不重要的一點是,由於可以通過API啟用在單獨容器中運行的應用程序之間的通信,因此可以輕鬆地控制實際的集成和協調量,或者在規模的另一端實現隔離。

集裝箱化和SaaS

軟件即服務(SaaS)是容器化可以帶來明顯價值的另一個領域。 例如,可以限制容器,從而更容易跟踪和控制遠程設備對軟件的訪問。 對於需要訂閱才能從雲中獲取其軟件的提供商而言,這可能非常有用。 在這種情況下,容器會在主機設備上創建一個臨時分區,提供商可以隨意掛起該分區。

此外,無需安裝支持服務即可將軟件交付給不兼容設備的可能性對雲服務特別有用,因為它擴展了應用程序的交付方式,超出了使用瀏覽器的範圍。

容器化和移動設備管理

移動設備管理(MDM)是容器化的另一個亮點。 簡而言之,MDM與BYOD基本相同,只是移動設備是由組織而不是其員工擁有和控制的。 但是挑戰是一樣的。 例如,容器化對於將應用程序交付到移動設備可能是一個很好的選擇,因為它們很容易丟失或被盜。

集裝箱化軟件

讓我們簡要看一下當前可用的一些最常見的容器化軟件。

碼頭工人

到目前為止,Docker是最著名的容器化系統。 與大多數只能在Linux平台上運行的容器化環境不同,該容器化環境也將在 Windows。 為了使事情變得更加有趣,這是一個開源項目,儘管有付費版本,但它絕對可以免費使用。 免費版本稱為社區版或Docker CE。 您可以從GitHub存儲庫下載Docker CE的代碼。 該軟件可以安裝在Fedora,Ubuntu,CentOS和Debian Linux上,也可以用於Mac OS和 Windows 10。 此外,如果您有 Windows 在Server 2016及更高版本中,您甚至不必安裝Docker,因為它已經與操作系統捆綁在一起。 上 Windows 及 Windows 服務器,Docker系統依靠Hyper-V的服務來運行。 這些實用程序在Docker設置過程中被激活。

LXC

LXC是Linux Containers的縮寫,它是最古老的容器化系統之一,儘管受到Docker的青睞,它在3.8年後才開始流行,但它的受歡迎程度有所下降,而LXC至今仍具有很大的影響力。 顧名思義,該平台僅適用於Linux。 實際上,它已經捆綁到Ubuntu中。 附帶說明,您需要Linux XNUMX或更高版本的內核才能創建LXC容器。 該產品完全免費使用。 但是除了命令行界面及其管理界面外,它沒有像Docker那樣易於學習和使用。 這很可能解釋了為什麼Docker成為容器化世界的明星。

Kubernetes

作為一個新興的公司,Kubernetes可能是Docker的唯一替代方案,它有可能成為第一大容器化系統。 這是另一個開源項目,由Google創建和管理。 它是Google Cloud產品系列的一部分,您可以依靠其Google背景來幫助該平台飛躍發展。

容器是使用基於雲的環境Google Kubernetes Engine(GKE)創建的。 或者,您可以獲取已安裝的版本以在自己的主機上運行。 那個叫做本地GKE。 這也是一個開源項目,因此任何人都可以使用該代碼來創建自己的工具版本。 令人驚訝的是,這主要是通過與前端工具的各種集成而不是通過將原始代碼分叉到競爭平台中而發生的。 例如,有Azure Kubernetes服務,可在Azure雲平台上使用。

內核操作系統

CoreOS rkt(發音為CoreOS火箭)是另一個開源容器化項目。 這是一個於2014年啟動的項目,目的是在稱為Container Linux的更廣泛的容器化系統中替代Docker,不要將它與我們剛才提到的Linux Containers混淆。 CoreOS rkt系統安裝在Linux上,被設計為從基於雲的服務交付應用程序的一種方法。 容器Linux最初稱為CoreOS Linux。 這是一個輕量級的操作系統。 至於CoreOS rkt,它是一個通過網絡交付Container Linux的容器化系統。 但是,它也可以在ArchLinux,Fedora,NixOS,CentOS,Ubuntu和OpenSUSE上使用。

OpenVZ的

我們名單上的Las是OpenVZ,Open Virtuozzo的縮寫。 該系統於2005年推出,甚至比LXC還要老。 它是在Linux上運行的容器化軟件包。 該名稱的Virtuozzo部分來自該系統的前身,至今仍可使用。 Virtuozzo由一家私人公司開發,並於2000年發布。這是第一個真正的容器實現。 幾年後,該技術的免費,開源版本以OpenVZ的形式提供,並且今天仍然可用。

監控集裝箱系統

監視容器化系統與監視虛擬機略有不同,但是通常可以使用相同的工具。 畢竟,容器化系統是在服務器上運行的應用程序

1. SolarWinds服務器和應用程序監視器(免費試用)

SolarWinds服務器和應用程序監視器 旨在幫助管理員監視服務器,服務器的運行參數,過程以及在服務器上運行的應用程序。 它可以輕鬆地從非常小的網絡擴展到具有分佈在多個站點上的數百個物理和虛擬服務器的大型網絡。 該工具還可以監視來自Amazon Web Services和Microsoft Azure的雲託管服務,以及容器化平台的大多數變體。

該產品特別適合監視Docker實現。 該解決方案旨在監視使用Docker容器架構的任何應用程序,以幫助更好地了解其可用性和性能。 您可以使用產品的Docker監視來驗證應用程序是否按預期運行,並且必要的服務具有適當的資源。 它還可以幫助您關聯和管理應用程序性能指標以及Docker容器監視和主機指標,以可視化性能,從而有助於對性能問題進行故障排除。

SolarWinds服務器和應用程序監控儀表板

SolarWinds服務器和應用程序監視器 它的設置非常簡單,借助其自動發現過程,它的初始配置也很容易完成。 這是一個兩階段的過程。 第一遍將發現服務器,第二遍將發現應用程序。 這可能會花費一些時間,但可以通過為該工具提供要查找的特定應用程序列表來加快速度。 該工具啟動並運行後,易於使用的GUI使得使用它變得輕而易舉。 您可以選擇以表格或圖形格式顯示信息。

價格為 SolarWinds服務器和應用程序監視器 起始價格為$ 2,並且根據所監視的組件,節點和卷的數量而有所不同。 一個 提供30天免費試用版 要下載,請在購買產品之前嘗試一下該產品。

2. ManageEngine應用程序管理器

ManageEngine的 可能不如 太陽風 但是,它仍然是在網絡和數據庫管理員中享有極高聲譽的另一個名稱。 的 ManageEngine應用程序管理器 處理應用程序管理。 您可能已經自己弄清楚了。 但是,這是一個有點誤導的名稱,因為它既是監視平台,又是管理工具。

該工具為您的所有服務器和應用程序監視需求提供集成的應用程序性能監視。 它還可以為基礎基礎架構組件(例如應用程序服務器,數據庫,中間件和消息傳遞組件,Web服務器,Web服務,ERP軟件包,虛擬系統和雲資源)做到這一點。 簡而言之,這是一個無所不包的平台。

ManageEngine Applications Manager Oracle屏幕截圖

ManageEngine應用程序管理器 具有用於監視Kubernetes和Docker容器的特定擴展。 例如,該工具的Docker管理不僅可以深入了解Docker容器的運行狀況和性能,而且還可以通過強大的監視,警報和分析引擎來監視Docker主機。 至於其Kubernetes集群監視功能,它們將使您能夠自動發現零件並映射集群中的對象之間的關係-Kubernetes節點,名稱空間,部署,副本集,pod和容器。 它還將監視Kubernetes集群統計信息並輕鬆識別故障及其來源。 使用它,您可以查看運營數據,例如使用的資源數量,每個集群和每個Pod的名稱空間,並跟踪集群的容量和資源利用率,並深入研究集群的特定部分。

ManageEngine應用程序管理器 有多個版本。 有功能限制 免費 版本以及 專業企業 付費版本。 定價從945美元開始,有關詳細信息,請聯繫ManageEngine。 還提供30天免費試用版。

3. PRTG網絡監視器

PRTG網絡監視器 佩斯勒公司 是另一個很棒的產品。 雖然它是SNMP網絡分析工具的基礎,但它包含許多功能,正如我們將要討論的那樣。 它的安裝速度是產品的另一強項。 根據 佩斯勒,它可以在幾分鐘內完成設置。 而且,儘管您的經驗可能有所不同,但總的來說,安裝速度比大多數競爭對手的要快,部分原因是該工具具有自動發現引擎。 該產品還提供了多種用戶界面。 您可以在本地 Windows 企業控制台,基於Ajax的Web界面以及適用於Android和iOS的移動應用程序。 警報和報告功能非常出色,並且該產品擁有多種報告,可以將它們查看為HTML或PDF或導出為CSV或XML進行外部處理。

PRTG儀表板-數據中心監控

得益於一個非常獨特的概念,即傳感器(一種已經內置在產品中的功能插件),可以使用 PRTG網絡監視器。 該產品約有XNUMX個傳感器,可監視幾乎所有網絡參數。 當涉及到監視容器(尤其是Docker)時,PRTG的Docker容器狀態傳感器正是您所需要的,這毫不奇怪,它可以監視Docker容器的狀態。 該傳感器將顯示幾個參數,例如容器的整體狀態(創建,運行,暫停,重新啟動,退出),其正常運行時間,退出代碼,CPU使用率和可用內存(以字節和百分比表示)。

PRTG網絡監視器 是免費版本,可用於監控不超過100個傳感器。 您要監視的每個參數都計為一個傳感器。 例如,監視4端口路由器每個接口上的帶寬將消耗4個傳感器,監視同一路由器上的CPU和內存將消耗2個以上傳感器。 您安裝的每個其他傳感器也算在內。 對於最可能需要的100多個傳感器,您需要一個許可證。 包括第一年的維護服務,多達1個傳感器的價格為600美元起。 還提供500天免費試用版。

4.動態痕跡

dynaTrace可 是另一種基於雲的軟件即服務(SaaS)產品。 它可以自動檢測,解決和優化應用程序。 發現和映射複雜的應用程序生態系統只需安裝 動態追踪OneAgent。 該服務將為您提供整個應用程序堆棧的高保真視圖,包括應用程序的性能,雲基礎架構和用戶體驗。 它將幫助您輕鬆地發現問題以及它們的業務影響和根本原因。

Dynatrace屏幕截圖

dynaTrace可 在支持的語言,應用程序體系結構,雲,本地或混合,企業應用程序,SaaS監視,容器化等方面,IBM還聲稱在所有監視解決方案中涵蓋最廣泛。 該工具會自動發現並監視容器內運行的動態微服務。 它向您展示了它們的性能如何,它們之間如何通信以及它可以幫助您快速檢測性能不佳的微服務。 完成基礎架構的發現後,您將可以通過工具的儀表板實時查看容器化的流程。 該軟件還可以監視位於容器內的應用程序和微服務的性能。

日誌分析是隨附的另一個有用功能 dynaTrace可。 您可以在一個日誌文件中查看與應用程序關聯的所有日誌消息。 每個日誌條目都為您提供了可用於過濾搜索的其他信息。 例如,日誌條目將顯示容器映像,記錄消息的ID以及使用的輸出。

定價 dynaTrace可 目前尚不可用,但可以通過註冊15天免費試用來獲得。 註冊試用版後,只需在服務器上安裝代理即可,您可以在5分鐘內開始監視。

5.相撲邏輯

相撲邏輯 是與Docker等容器化平台兼容的應用程序和日誌監視解決方案。 該產品的創建是為了聚合幾乎所有來源的大量日誌數據。 但是收集日誌數據僅僅是開始。 該服務還可以幫助您使用收集的數據來監視性能,改進應用程序,甚至可能解決安全性問題和合規性。

Sumo Logic儀表板截圖

相撲邏輯 可以實時監控容器。 它的儀表板視圖分為度量標準框和圖形。 在一個儀表板中,您可以查看按CPU消耗排名前10的容器或按發送和接收的流量排名前10的容器的圖表,以及創建的容器數和主機數。 高級分析是使其成為特別強大的產品的另一個功能。 它的分析功能可以自動檢測您的容器化基礎架構中的異常,從而自動執行識別性能問題的過程。

相撲邏輯 可在三種不同的計劃下使用。 有一個免費計劃,針對的是希望在不限時間範圍內嘗試將Sumo Logic用於較小項目的個人和團隊。 其次是專業計劃,每月每90GB平均每日日誌數據1美元。 在頂部,您具有功能齊全的企業計劃,每月每150GB的平均每日日誌數據$ 1 /月。 請注意,兩個付費計劃都提供30天試用期。

結束語

容器化可能很難概念化。 但是,它很可能是您向遠程設備交付服務的基礎結構要求的答案。 我們希望我們能夠對這個複雜的話題有所了解。 儘管我們可能沒有使您成為專家,但我們的目標是為您提供足夠的背景信息,以便您在開始探索該技術時能更好地掌握該技術。

資源