易於混淆的兩個技術:Kerberos與Kubernetes辨析
易於混淆的兩個技術:Kerberos與Kubernetes辨析
作者:chszs,未經博主允許不得轉載。經許可的轉載需註明作者和部落格主頁:http://blog.csdn.net/chszs
Kerberos介紹
Kerberos是一個網路授權驗證協議,源於麻省理工學院,其第一個公開發行版為Kerberos V4。在得到廣泛使用後,繼續釋出了Kerberos V5版,隨後Kerberos V5成為IETF的標準。Kerberos的設計目標是通過使用金鑰加密技術,為客戶端/伺服器架構的應用提供一個強授權驗證機制。要注意一點,Kerberos協議僅用於驗證使用者的身份,它本身不提供授權訪問。也即,Kerberos的票據僅僅用來證明這個使用者就是他自己聲稱的那個使用者。在使用者身份得以確認後,本地的安全許可權將決定給予訪問許可權或者拒絕訪問。
Kerberos V5協議規定了以下機制:
- 驗證使用者身份
- 安全的打包使用者名稱和使用者的身份信任憑證到票據
- 安全的傳輸使用者信任憑證
Kubernetes介紹
Kubernetes是基於 Google 自身多年使用 Linux 容器的經驗建立出來的,所以可以說它是 Google自身多年操作經驗的一個複製,只是 google 把這些操作經驗應用到了 Docker 上。 使用Kubernetes 來管理容器在多個方面都將帶來很大的好處,而其中最重要的就是 Google 把他們多年使用容器的經驗帶入了這個工具。如果你是從 Docker1.0 (或者更早之前的版本)開始使用Kubernetes,你會發現使用 Kubernetes 來管理 Docker 容器是非常愉悅的體驗。Kubernetes 解決了許多 Docker 自身的問題。通過 Kubernetes,你可以在容器中使用實際的物理儲存單元,從而我們可以很方便的把容器移動到其他機器上,而不丟失任何資料; Kubernetes 使用 flannel 來建立容器之間的網路;Kubernetes 整合了 load balancer;Kubernetes 使用 etcd 來實現服務發現,諸如此類的東西還有很多。但是使用 Kubernetes 是要付出一定的代價愛的,比如,Kubernetes 使用了一個完全不同於 Docker 的 CLI (Command Line Interface),不同的 API 以及不同的 YAML 配置定義。換句話說,如果你使用Kubernetes,那麼你將完全不能使用 Docker 自帶的CLI,也不能使用 Docker Compose 來定義(建立)容器。使用 Kubernetes,你必須為 Kubernetes 重新建立所有和Docker 容器管理相關的東西,因此我們可以認為 Kubernetes 並不是為了 Docker建立的(從一定意義上說是正確的)。Kubernetes 提升了 Docker 容器叢集的管理層次,但同時它的學習曲線也是非常陡峭的。
Kubernetes 是Google開源的容器叢集管理系統,基於Docker構建一個容器的排程服務,提供資源排程、均衡容災、服務註冊、動態擴縮容等功能套件。
Kubernetes的特徵如下:
- Lean:輕量級、簡單、易訪問
- Portable:支援公有云、私有云、混合雲等
- Extensible:模組化、可插拔、可鉤掛(Hookable)、可組合
- Self-healing(自我修復):自動安置、自動重啟、自動複製
Kubernetes的關鍵概念:
Cluster
叢集是一組物理機或虛擬機器,用於讓Kubernetes執行應用程式的。
Node
節點是一個物理機或虛擬機器,上面執行著Kubernetes,它上面的Pod可以被排程。
Pod
在Kubernetes系統中,排程的最小顆粒不是單純的容器,而是抽象成一個Pod,Pod是一個可以被建立、銷燬、排程、管理的最小的部署單元。比如一個或一組共享卷的容器。
Replication Controllers
複製控制器用於管理Pod的生命週期。它可以確保給定數量的Pod在給定的時間範圍執行,且可以建立或殺死Pod。
Services
服務為一組Pod提供了單一的、穩定的名字和地址,是負載均衡器的基礎。
Labels
標籤用於組織和選擇物件組,通過鍵值對的方式。
相關文章
- [技術討論]系統間呼叫與邊界類的差別——被混淆的兩個概念
- PP模組幾個常見易混淆名詞的解釋與理解!
- ABAP Netweaver 和 ABAP Platform 這兩個名詞的辨析Platform
- JS易混淆的方法整理JS
- 管理與技術是成功CIO的兩個翅膀,不可偏廢
- 漫談混淆技術----從Citadel混淆殼說起
- 程式設計師易混淆的10個基礎概念程式設計師
- 關於Kerberos安裝的幾個問題(轉)ROS
- 被黑客們使用的程式碼混淆技術黑客
- 推薦兩個實用技術
- ProGuard程式碼混淆技術詳解
- Struct與Class辨析Struct
- 基於 SmartX 分散式儲存的 iSCSI 與兩種 NVMe-oF 技術與效能對比分散式
- oracle一些易混淆的概念Oracle
- Java 泛型中易混淆的地方Java泛型
- webpack-易混淆部分的解釋Web
- 基於Kubernetes 構建.NET Core 的技術體系
- 關於繼承、重寫、過載的易混淆之處的總結繼承
- 兩個當前前端領域中好玩的新技術前端
- 小巧易於使用的有磁碟支援的ArrayList -Bozho的技術部落格
- 軟體註冊保護與“多型變形混淆”技術淺述多型
- 深度辨析 Python 的 eval() 與 exec()Python
- MySQL裡null與空值的辨析MySqlNull
- 基於kubernetes自研容器管理平臺的技術實踐
- SQL Server中易混淆的資料型別SQLServer資料型別
- 熱更新技術簡易原理及技術推薦
- 基於Kerberos的大資料安全方案ROS大資料
- 理清定位,找準你的 Kubernetes 與容器技術學習方法
- 保護C#程式碼的藝術:深入淺出程式碼混淆技術C#
- SSD的兩種技術簡介
- SQL Server 中易混淆的資料型別(轉)SQLServer資料型別
- 兩個半月的業餘時間用Flutter做了個app-技術篇FlutterAPP
- Android 高階混淆和程式碼保護技術Android
- 基於kerberos的hadoop安全叢集搭建ROSHadoop
- MySQL 常用易混淆知識點總結MySql
- 【教程】深入探究 JS程式碼混淆與加密技術JS加密
- 7 個有助於 AI 技術的最佳開源工具AI開源工具
- Docker與虛擬化技術淺析第一彈之docker與KubernetesDocker