按標籤瀏覽
我們已經將詞彙分類。使用篩選器按標籤瀏覽詞彙。
eBPF
是什麼 eBPF(延伸柏克萊封包篩選器)是一種允許小型沙盒程式或腳本在 Linux 系統核心空間執行的技術,不需要修改核心原始碼載入 Linux 核心模組。 Linux 系統有兩個空間:核心空間和使用者空間。 核心空間是作業系統的核心,也是唯一可以無限制存取硬體的部分。 應用程式會停留在使用者空間,當它們需要更高權限時,就會向核心發送要求。 對於需要更彈性的應用程式,像是直接存取硬體,核心可以透過所謂的「Linux 核心模組」進行擴充。 這種方式擴充了核心的預設功能,允許應用程式更深度地存取底層元件。 不過,這種方法也會帶來安全風險,因此 eBPF 成為更有吸引力的替代方案。 解決的問題 通常狀況下,應用程式在使用者空間執行,如果應用程式需要核心的某些權限(E.g. 存取某些硬體), 會透過「系統呼叫」向核心提出請求。 在大多數情況下,這種方法都能正常執行。不過,在某些情況下,開發人員需要更靈活的低階系統存取方式。 可觀察性、安全性和網路功能就是很好的範例。 為此,我們可以使用 Linux 核心模組,在不修改核心原始碼的情況下延伸核心基礎。 雖然使用 Linux 核心模組有很多好處,但也會帶來安全風險。 由於 Linux 核心模組在核心空間內執行,它們可能會導致核心崩潰,而核心一旦崩潰,整個機器也會當機。 此外,核心模組擁有更高的權限,可以直接存取系統資源。如果沒有適當的安全保護,攻擊者就會利用這些漏洞。 如何幫助我們 eBPF 提供比 Linux 核心模組更可控的環境,以執行使用者自訂的程式。 它在核心的沙盒環境中執行,提供隔離並降低風險。 如果漏洞或缺失在 eBPF 程式中被利用,其影響通常僅限於沙盒環境。 此外,在 eBPF 程式開始在核心中執行之前,它必須通過一些驗證。 驗證器元件會檢查 eBPF 程式是否存在潛藏的安全違規行為, 像是違規存取記憶體、無窮迴圈和未經授權的核心函式。 這樣它就能確保程式不會進入無窮迴圈並導致核心崩潰。 與 Linux 核心模組相比,這些安全控制措施使 eBPF 成為在 Linux 核心中執行應用程式更安全的選擇。..
Kubernetes
是什麼 Kubernetes (通常縮寫為 K8s)是一個開源的容器協調工具。 它可以在現代基礎設施上自動管理容器化應用程式的生命週期, 就像一個能夠在分散式系統中管理應用程式的「資料中心作業系統」。 Kubernetes 會在叢集的節點間對容器們進行排程, 並結合多個基礎設施上的資源, 例如負載平衡器、持久性儲存空間等等, 來執行容器化的應用程式。 Kubernetes 具有自動化和可擴展的特性, 讓使用者能夠以可重現的宣告式設定來部署應用程式(請見下文)。 經驗豐富的 Kubernetes 從業人員可以根據其需求, 透過它的 API 來利用其自動化功能進行擴展。 解決的問題 長期以來,基礎設施自動化和宣告式設定管理一直是重要的概念, 但隨著雲端運算的普及,這些概念變得更加地迫切。 隨著對運算資源的需求增加, 組織需要更多的維運能力,同時又要更少的工程師數量, 因此新的技術和工作方式便變得不可或缺。 如何幫助我們 Kubernetes 與傳統基礎設施即程式碼的工具類似,都有助於自動化, 但 Kubernetes 具有使用容器的優勢。 因此比虛擬機器或實體機器更不容易出現組態漂移。 此外,Kubernetes 是透過宣告式設定來運作的, 這意味著操作者並非告訴機器應該要執行什麼指令, 而是描述基礎設施應該要長什麼樣子; 通常是透過清單檔案(例如 YAML)的形式來進行描述。 然後,Kubernetes 便會自行完成「如何達成這個樣子」的部分。 這使得 Kubernetes 能很好地相容於「基礎設施即程式碼」。 Kubernetes 還具有自我修復的功能。 叢集的實際狀態將始終與維運者所期望的狀態相符。 當 Kubernetes 偵測到與清單檔案描述不符的情況時, Kubernetes 控制器便會修復這個問題。 雖然 Kubernetes 使用的基礎設施可能會不斷地變化, 但 Kubernetes 會自動不斷地隨之改變, 以確保與期望的狀態保持一致。..
Pod
是什麼 Pod 是 Kubernetes 環境中最基本的可部署單位。 它代表部署和管理容器化應用程式的必要組件。 每個 Pod 包含一個應用程式實例,並且可以由一個或是多個容器 所組成。 Kubernetes 將 Pod 視為大規模部署的一部分進行管理,並且可根據需求垂直或是水平地擴展 Pod 的規模。 解決的問題 雖然容器通常作為獨立的單位運行以及控制特定的工作負載, 但是某些情況下,容器間需要以緊密耦合的方式進行互動與被控制。 如果將這些密切相關的容器單獨管理,則會導致冗余的管理任務出現。 舉例來說,操作者必須反覆地確保這些容器彼此的部署狀態以確保他們保持在一起。 此外這些密切相關的容器其生命週期必須一致同步的被處理,但是卻只能各別單獨管理。 如何幫助我們 Pod 將緊密關係的容器們打包成一個單一的單位,此舉大幅度的簡化了容器操作。 譬如,輔助用容器通常都會伴隨主要容器一起使用已加入額外功能或是設定全域設定。 範例包含將基本設定給注入或是套用到主要容器的容器, 以 sidecar 來處理網路流量與路由相關的模式(參見 服務網格), 或是幫忙收集其他容器日誌的容器。 記憶體和 CPU 配置可以在 Pod 層級去定義,使得容器們可以彈性的方式去共享資源或是針對每個容器去設定。..
水平擴展
是什麼 水平擴展是一種透過加入更多節點而非對單一節點加入更多計算資源來提升系統容量的技術(後者稱為垂直擴展)。 假設我們有一個 4GB RAM 的系統,並且想要提升其容量到 16GB RAM,水平擴展代表的是加入 4 X 4GB RAM 的系統而非切換到一台 16GB RAM 的系統。 這種方式透過添加更多實例或節點來提升應用程式的效能,以達到更好的工作負載。 簡單來說,其目的是減少伺服器的負載而非擴充單一伺服器上的容量。 解決的問題 隨者對應用程式成長的需求超越該應用程式的當前容量, 我們需要找到一種方式來擴展(增加容量)系統。 我們可以加入更多節點到系統中(水平擴展)或是加入更多計算資源到現有節點上(垂直擴展)。 如何幫助我們 水平擴展允許應用程式在底層叢集的限制範圍中去擴展。 透過加入更多的實例到系統中,應用程式能夠處理更多請求。 如果單一節點每秒可以處理 1000 個請求,則每一個額外的節點都能夠讓每秒多處理大約 1000 個請求。 這使得應用程式可在不加入更多容量到任何節點的情況下去同時執行更多工作。 相關詞彙 垂直擴展 自動擴展..
多租戶
什麼是多租戶 多租戶是指為多個租戶提供服務的單一軟體設施。 一個租戶是一個使用者、應用程式或多個在自己資料集上使用軟體運作的使用者/應用程式。 這些租戶並不共享資料(除非擁有者有明確指示),甚至可能不知道彼此。 租戶可以小至一個具有單一登入 ID 的獨立用戶(例如個人生產力軟體),或像整個公司一樣大,擁有數千個登入 ID,每個登入 ID 都有自己的權限,但以多種方式相互關聯。 多租戶軟體的範例包括 Google Mail、Google Docs、Microsoft Office 365、Salesforce CRM 和 Dropbox,以及許多被歸類為完整多租戶或部分多租戶的其他軟體。 解決的問題 如果沒有多租戶,就需要每個租戶都去安裝專用的軟體設施,這會增加需要運用的資源和維護負擔,進而提升了軟體成本。 如何幫助我們 多租戶軟體為每個租戶提供一個隔離的環境(工作資料、設定、憑證清單等),同時為多個租戶提供服務。 從租戶的角度來看,每個租戶都有其專用的軟體設施,儘管實際上它們都共享同一個。 這是透過在伺服器上運行軟體並允許租戶以介面和/或 API 透過網路連接到該軟體來實作的(另請參閱主從式架構)。 使用多租戶軟體,租戶能夠共享一個設施的資源,而不會相互影響或僅以預先定義和受控的方式有所交互作用。 軟體供應商所節省的資源可以轉移給租戶,進而顯著地降低用戶的軟體成本(像是基於網頁的電子郵件或文件編輯器)。 相關術語 多租戶和 SaaS 並非同義詞,即便 SaaS 多租戶很常見,甚至將多租戶視為其核心優勢之一。..
如何參與貢獻
歡迎 歡迎使用雲端原生 Glossary 的貢獻指南,感謝您的關注。 您可以透過以下方式參與貢獻,我們將在此進行詳細說明: 在現有議題上進行工作 提出新術語 更新現有術語 幫助本地化 Glossary CNCF Glossary 概述 該 Glossary 的目標是簡化複雜的雲端原生領域,使其更容易被人們理解和使用。 雲端原生 Glossary 的內容存儲在此 GitHub 存儲庫中, 您可以在那裡找到有關 Glossary 的議題、拉取請求(PRs)和 討論。 誰可以貢獻? 您如何參與此專案取決於您的雲端原生專業知識水準。 簡化複雜的概念需要對該主題有深入的了解。 因此,要貢獻新術語,您必須精通該主題。 貢獻者通常是在這些技術上工作了一段時間的工程師或專注於雲端原生的學者。 專業知識是必需的,因為用簡單的話語解釋複雜的概念 真的 很難。而且,儘管易於理解的結果可能看起來很簡單,但達到所需的簡單性需要雲端原生專家之間的努力和協作。 如果您尚未成為雲端原生專家但仍想貢獻,我們建議與專家合作。 一旦專家確信術語準確描述概念,您就可以做出第一個 Glossary 貢獻。 本地化工作是精通另一種語言的初學者可以為 Glossary 做出寶貴貢獻的地方。 借助現有的可靠英語定義,經驗不足的貢獻者可以將術語本地化為目標語言。您可以加入現有的本地化團隊或創建新的本地化團隊。 請閱讀本指南中幫助本地化 Glossary 章節,了解如何開始。 開始之前 在開始您的 Glossary 貢獻之前,請確認完成以下步驟: 建立 GitHub 帳號,如果您還沒有的話。 簽署貢獻者授權協議(Contributor License Agreement) (CLA)。 驗證您的提交簽名。 啟用 vigilant mode 在您的 GitHub 帳戶上,以顯示 “Verified” 狀態在您的提交上。 最佳實踐 為了方便審核過程,請使用 semantic line breaks(例如,每句話一行)。 我們建議查看這份 markdown cheat sheet 以正確地在 GitHub 中格式化 Markdown 文本(例如,超連結、粗體、斜體)。 並且在命名 ...
函式即服務 (FaaS)
是什麼 函式即服務 (FaaS) 是一種無伺服器的雲端運算服務, 它可以在特定事件觸發時執行程式碼, 而無需去維護常見於建置與發佈微服務應用程式所需的複雜基礎設施。 在 FaaS 的運作模式下,使用者只需專注於管理自己的功能和資料,應用程式的其他管理工作則交由雲端服務提供商來處理。 這種服務不僅讓開發者可以取得他們所需的功能以外,而且在程式碼不執行時,也無需支付額外的服務費用。 解決的問題 在傳統的地端環境中,企業需要自行管理和維護其資料中心。 企業必須投資於伺服器、儲存空間、軟體和其他技術外, 可能需要聘請 IT 人員或是外包商來購買、管理並升級所有的設備和使用授權。 在這種情況下,資料中心必須配置足夠的資源以應對高峰需求,即使在工作量減少、資源閒置時也難以避免。 反觀,若企業業務快速擴展,IT 部門可能又面臨資源無法即時提供的困境。 在標準的基礎設施即服務 (IaaS) 雲端運算模型下, 用戶會預先購買特定容量,即表示你需要為保持應用程式運行所需的伺服器元件支付給公共雲端服務提供商。 在需求增大時,用戶必須擴充伺服器容量;需求降低時,則需降低容量。 即使應用程式並未在被使用,但運行該應用程式所需的雲端基礎設施仍要持續運作。 如何幫助我們 FaaS 為開發者提供了一種抽象,使他們能夠在無需管理伺服器的情況下,可以根據事件來運行網路應用程式。 以檔案上傳為例,這個動作可能會觸發一段自定義的程式碼,該程式碼將原始檔案轉換成多種格式。 對於大量使用的程式碼,FaaS 的基礎設施能自動擴展, 無需開發者花費時間和資源去設計程式碼的可擴展性。 計費模式則是根據運算時間來計算,這表示企業在功能未使用時,就不必支付任何費用。..
垂直擴展
是什麼 垂直擴展也被稱為「向上和向下擴展」,是一項當系統負載提高時透過對單一節點增加 CPU 或 RAM 來提升系統容量的技術。 假設您的系統中有一台 4GB RAM 的計算機,並且想要提升系統的容量至 16GB RAM,那麼對這個系統作垂直擴就展意味著切換為另一台 16GB RAM 的計算機。 (請參考另一種擴展方法:水平擴展) 解決的問題 當應用程式的需求成長超出該應用程式實例的當前容量時, 我們需要找出一種方式來擴展系統(增加容量)。 我們可以加入更多計算資源到目前的節點(垂直擴展), 或是加入更多節點至此系統(水平擴展)。 可擴展性有助於提升系統的競爭力、效率、評價以及品質。 如何幫助我們 垂直擴展讓您不用修改應用程式中的程式碼就能調整伺服器的大小。 相對地,水平擴展則要求應用程式必須是可被複製的,而且很有可能需要修改程式碼。 垂直擴展藉由增加計算資源來提升現有應用程式的容量, 使得應用程式能夠處理更多請求並同時執行更多工作量。 相關詞彙 水平擴展 自動擴展..
風格指南
以下的風格指南旨在幫助你了解雲端原生 Glossary 的定義結構,並在整個過程中保持一致的風格。 雲端原生詞彙遵循位於 CNCF 資源庫中的預設風格指南。 此外,它還遵循以下規則: 使用簡單、易懂的語言,避免技術術語和流行語 避免使用俚語 使用字面和具體的語言 省略縮略語 少用被動語態 力求以積極的形式表述 引號外不加感歎號 不要誇大其詞 避免重複 要簡明扼要 受眾 本 Glossary 是針對技術和非技術人員編寫的。 請使用簡單的術語來解釋定義並不要假定技術知識。有關定義的更多細節請參閱下面的定義部分。 最小可行定義 我們的目標是讓任何人都能夠輕鬆理解雲端原生術語。 因此,我們專注於簡潔明瞭。 請使用清晰簡單的語言,並提供任何使用技術的人都可以理解的示例,同時提供一個最小可行定義,至少從技術角度上來說。 我們不希望省略上下文和示例 — 畢竟,這些東西可以幫助讀者理解概念 — 但如果技術細節不需要理解它,我們就會跳過它。 目標不是讓事情變得過於複雜。一旦讀者了解了基本概念,其他資源將有助於他們進一步深入挖掘。 這部分超出了本 Glossary 的範圍。 定義樣板 每個 Glossary 術語都存儲在一個 markdown 文件中,並遵循這個樣板: — title: status: category: — ## 是什麼 對該技術或概念的快速總結。 ## 解決的問題 關於它所解決的問題的幾句話。 ## 如何幫助我們 用幾句話說明這個東西是如何解決問題的。 標題 title label 將始終位於定義布局的頂部,其值應使用標題大小寫。 — title: 定義樣板 狀態 status label 將出現在 title label 之後。這個 label 代表著這個定義距離完成還有多遠。..
容器協調
是什麼 容器協調指的是在動態的環境中自動管理容器化應用程式的生命週期。 這通過一個容器協調器 (大多是 Kubernetes) 來執行如部署、(自動)擴展、自我修復和監控。 協調是一個隱喻用詞: 協調工具就如同樂隊指揮一樣指揮管理眾多容器,確保每個容器(或樂手)各執其職。 解決的問題 手動管理大規模的微服務、安全性和網路通訊以及常見的分散式系統 雖然困難但並非不可能。 而容器協調能讓用戶自動化所有這些管理任務。 如何幫助我們 容器協調工作允許使用決定系統的狀態。 首先,這些工具會宣告系統應具備的狀態 (例如 x 個容器、 y 個 Pod 等等)。 接著容器協調工具將會自動監控基礎建設並且在其狀態與宣告狀態不一致時自動修正 (例如當一個容器壞掉不能運行時,則啟動一個全新的容器)。 這種自動化的操作簡化了許多工程團隊手動與複雜的維運工作,例如 服務開通、部署、自動擴展、網路、負載平衡和其他活動。..
貢獻者階梯
<p>嗨!👋 感謝您對貢獻 CNCF 雲端原生 Glossary 專案感到興趣。 無論您貢獻新術語、協助本地化 Glossary 成為您的母語, 或者想要幫助他人入門,都有很多方式成為此社群的活躍成員。 本文檔概述了專案中的不同貢獻者角色以及隨之而來的職責和權限。</p> <ol> <li>貢獻者 Glossary 歡迎所有人參與。任何人只要有貢獻都可以成為 Glossary 的貢獻者。所有貢獻者都應遵守 CNCF 行為準則。 有多種方式可以貢獻此專案,包括: 內容貢獻者:改進現有術語或新增術語的所有人, 本地化貢獻者:協助將 Glossary 翻譯成另一種語言的人, 幫助者:在 GitHub、Slack 或其他社群成員需要支援時協助他人的人, 大使:幫忙傳達訊息、教育社群如何貢獻,以及為什麼他們應該這麼做的任何人。 貢獻者可以擔任多個角色或僅專注於一個領域。 所有這些貢獻同等重要和有助於促進繁榮的社群。 有關內容和本地化貢獻,請參閱如何貢獻和風格指南。</li> <li>審核者 審核者提供 PR 的回饋並核准他們。任何活躍的貢獻者都可以成為審核者(參見成為審核者)。 Glossary 區分兩種審核者:(1)英文 Glossary 的審核者和(2)本地化團隊的審核者。 Glossary 審核者應該: 審核 PR 的技術準確性, 分配貢獻者議題並適當地標記他們, 為貢獻者提供反饋並在需要時指導他們, 校對和編輯提交。 如果審核者不再感興趣或無法執行上述職責,他們應讓維護人員知道並下台。 英文 Glossary 審核者 有三種類型的審核者: 1)擁有強大技術背景的審核者, 2)具有扎實的寫作能力的審核者, 3)精通兩者的審核者。 技術審核者:具有強大技術背景的人可以成為審核者,而不必具備扎實的英文寫作能力。但是,如果他們基於技術的優點核准了 PR,則必須確保經由一位(編輯)審核者進行了審核。 編輯者:編輯人員校對術語並確保其根據樣式指南用簡單的語言解釋。如果術語被大量編輯,編輯人員必須要求技術審核者再次審核,以確保含義未被更改。 本地化審核者 Glossary 還有本地化審核者。這些是本地化團隊(翻譯 Glossary 的團隊)之一的審核者。 本地化審核者僅允許為其自己的團隊執行核准任務,並有能力將 PR 合併到其專屬的開發分支。 任何本地化審核者都可以成為英文 Glossary 的審核者,如果符合要求的話。</li> </ol> ..
虛擬化
是什麼 在雲端原生運算中, 虛擬化指的是將一台實體計算機(有時稱為伺服器), 使其能夠運行多個獨立作業系統的方法。 這些獨立的作業系統以及它們專屬的運算資源(CPU、記憶體和網路)被稱為虛擬機器或 VM。 當我們提到虛擬機器時,在講的其實是由軟體定義的計算機。 這種計算機在外觀上和與行為上都像是真實的計算機,但實際上它會與其他虛擬機器共用硬體資源。 雲端運算 主要是由虛擬化技術所驅動。 舉例來說, 你可以從 AWS 租用一台「計算機」, 但實際上它是一台虛擬機器。 解決的問題 虛擬化解決了多個問題, 比方說它允許更多應用程式在同一台實體機器上運行, 而且還能將它們相互隔離以確保安全性。 如何幫助我們 在虛擬機器上運行的應用程式並不知道它們正在共用一台實體計算機。 虛擬化還能讓資料中心的使用者在數分鐘內啟動一台新的「計算機」(其實是虛擬機器), 而無需擔心增加新的計算機到資料中心所帶來的實體限制。..
虛擬機器
是什麼 虛擬機器(VM)是一台不受限於特定硬體的計算機及其作業系統。 透過虛擬化技術, 我們可以將一台實體的計算機分割成多台虛擬的計算機。 這種分割可以讓組織和基礎設施提供者能輕鬆地建立和刪除虛擬機器, 而不會影響底層的硬體。 解決的問題 當一台裸機綁定到單一作業系統時, 該計算機的資源使用情況通常在某種程度上會受到限制。 另外,當一個作業系統綁定到單一實體計算機時, 其可用性也會與該硬體的直接相關。 如果實體計算機因為維護或硬體故障而離線, 該作業系統也會隨之離線。 如何幫助我們 透過解除作業系統與單一實體計算機之間的直接綁定, 我們便可以解決裸機的幾個問題: 佈建時間、硬體使用率和復原力。 在佈建新的虛擬機器時, 我們不需要為此購買、安裝或設定新的硬體, 所以佈建一台新計算機的時間便可以大幅地縮短。 由於我們可以將多台虛擬機器放置在一台實體計算機上, 這讓我們能夠更有效率地使用既有的硬體資源。 虛擬機器不受特定實體計算機的限制, 因此也比實體計算機更具有復原力。 當一台實體計算機需要離線時, 運行於其上的虛擬機器可以無需或只需極少的停機時間, 便可以轉移到另一台實體計算機上。..
雲端原生 Glossary
雲端原生 Glossary 雲端原生 Glossary 主要目標在使人們更容易理解,將以複雜而聞名雲端原生領域變得更簡單好懂,不僅限於技術人士,也同樣適用於商業人士。 為了實現這一目標,我們注重簡潔(例如:使用簡單用語描述且不包含流行用語、使用任何技術的人都可以通用的範例、省略不必要的細節)。 Glossary 是由 CNCF 商業價值小組(Business Value Subcommittee; BVS)領導的專案。 貢獻 歡迎所有人對雲端原生 Glossary 提出更改、補充和改進。 我們採用由 CNCF 管理的社群驅動的流程來開發和改進這個共享 Glossary 。 Glossary 提供了一個所有參與者使用且供應商保持中立的平台,以組織雲端原生技術的共享詞彙。 歡迎所有遵守本專案宗旨和章程的參與者做出貢獻。 任何希望貢獻的人都可以提交 GitHub 議題或創建拉取請求。 請確保您遵循風格指南,閱讀如何參與貢獻文件,加入 CNCF Slack工作區,並加入 #glossary頻道。 也有一個 #glossary-localizations頻道,提供想將 Glossary 翻譯為其本地化語言的人們使用。 致謝 雲端原生 Glossary 由 CNCF 行銷委員會 (CNCF Marketing Committee)(商業價值小組委員會)發起,包括來自 Catherine Paganini、 Chris Aniszczyk、 Daniel Jones、 Jason Morgan、 Katelin Ramer、 Mike Foster和許多的貢獻者。 如果想獲得完整的貢獻者名單,請參考此 GitHub page。 Glossary 主要維護由 Seokho Son、 Noah Ispas、 Jihoon Seo、 Nate W. 和 Jorge Castro。..
雲端運算
什麼是雲端運算 雲端運算是一種通過網際網路提供計算資源(如CPU、網路和磁碟功能)的服務,使用戶可以遠端存取位於實體位置的運算資源。一般會根據雲端基礎設施是用於專門為組織而設或是共享用於開放式服務,將其區分為私有雲和公有雲。 解決的問題 普遍來說,當組織需要擴展其運算資源時,會面臨兩個主要挑戰:一方面是購買、支援和設計新的設施來托管物理伺服器和網路,另一方面則是擴充和維護現有設施。透過雲端運算,組織能夠透過外包部分的運算需求以解決這些考驗。 如何幫助我們 雲端供應商讓組織可以按需租用計算資源並根據使用情況付費,從而帶來兩大優勢。第一是組織可以專注於產品或服務,無需等待、計劃和投入資源於新的物理基礎設施。其次,組織可以根據實際需求隨時擴充其運算資源。透過雲端運算,組織可以彈性選擇所需的基礎設施,以適應不斷變化的需求。..
節點
是什麼 節點是一台會與其他計算機(或稱節點)一起運作以完成共同任務的計算機。 舉例來說, 你的筆記型電腦、數據機和印表機都連接在你的無線網路上進行通訊和協作, 其中每個裝置都都代表一個節點。 在雲端運算中, 一個節點可以是一台實體計算機, 或是一台虛擬機器(VM), 甚至可以是一個容器。 解決的問題 雖然一個應用程式可以(而且很多都這麼做)在一台單獨的計算機上運行, 但這樣會存在一些風險。 主要是因為底層系統的故障會干擾應用程式的運行。 為了解決這個問題, 開發人員們開始建立分散式應用程式, 讓每個行程都在自己的節點上運行。 因此,執行這些應用程式或是行程的節點們便會形成一個節點叢集, 一起合作完成共同的目標。 如何幫助我們 一個節點提供了一個可指派給一個叢集的獨立運算單元(記憶體、CPU、網路)。 在雲端原生平台或應用程式中, 一個節點就代表一個可以執行工作的單位。 在理想情況下,個別的節點是不可區分的, 也就是說,我們無法區分某個類型的任何一個節點與同一類型的其他節點。..
叢集
是什麼 一座叢集是指一組由計算機或應用程式為實現共同目標而協同工作。 在雲端原生計算的背景之下,這個詞彙通常用於 Kubernetes。 一座 Kubernetes 叢集是一組執行在它們自己的容器中的服務 (或工作負載),通常在不同的機器上執行。 所有這些通過網路連接的 容器化 服務集合代表一座叢集。 解決的問題 在單一計算機上執行的軟體若出現單點故障 - 如那台計算機當機、或者有人意外拔掉電源線,那麼某些關鍵的業務系統可能會被離線。 這就是為什麼現代軟體通常被建構成 分散式應用程式,並集結為叢集的原因。 如何幫助我們 雖然分散式叢集應用程式執行在多台機器上,消除了單點故障,但是建構分散式系統確實很困難。事實上,它是資訊工程中的一門獨立學科。 汲取全球級別系統的需求以及多年的反覆試驗下,最終促成了一種新的技術棧的發展: 雲端原生技術。這些新技術是使得建構分散式系統更容易操作和建立的元件。..
邊緣運算
是什麼 邊緣運算是個分散式系統,它將一些儲存和運算資源從主要資料中心轉移到資料來源。 收集到的資料在本地端(例如:工廠、商店或整座城市)進行計算,而不是傳送到集中式資料中心進行處理和分析。 這些本地端處理單元或裝置代表系統的邊緣,而資料中心則代表系統的中心。 邊緣計算出的結果會被送回主要資料中心做進一步處理。 邊緣運算的例子包括手腕上的小配件或分析交通流量的電腦。 解決的問題 過去十年中,我們可以看到越來越多的邊緣裝置(例如:手機、智慧型手錶、感測器)。 在某些情況下,即時資料處理不僅是一個不錯的選擇,而且極其重要。 想想自動駕駛的汽車。 現在想像一下,汽車感測器的資料必須先傳送到資料中心進行處理,然後再送回汽車,這樣汽車才能作出適當的反應。 如此產生的網路延遲會是致命的。 雖然這是一個極端的例子,但大多數使用者都不願意使用無法即時反應的智慧設備。 如何幫助我們 如上所述,要使邊緣設備發揮作用,它們必須至少在本地端完成部分處理和分析工作,以便於對使用者提供接近即時的回饋。 要做到這點,就必須將資料中心的部分儲存和處理資源轉移到資料生產地:邊緣設備。 已處理和未處理的資料隨後發送到資料中心做進一步處理和儲存。 簡而言之,效率和速度是邊緣運算的主要驅動力。..