久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么進行K8S的總結分析

152次閱讀
沒有評論

共計 4199 個字符,預計需要花費 11 分鐘才能閱讀完成。

這期內容當中丸趣 TV 小編將會給大家帶來有關怎么進行 K8S 的總結分析,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一、介紹

為什么需要 Kubernetes,它能做什么?

容器是打包和運行應用程序的好方式。在生產環境中,你需要管理運行應用程序的容器,并確保不會停機。例如,如果一個容器發生故障,則需要啟動另一個容器。如果系統處理此行為,會不會更容易?

這就是 Kubernetes 來解決這些問題的方法!Kubernetes 為你提供了一個可彈性運行分布式系統的框架。

Kubernetes 會滿足你的擴展要求、故障轉移、部署模式等。例如,Kubernetes 可以輕松管理系統的 Canary 部署。

Kubernetes 為你提供:

服務發現和負載均衡

Kubernetes 可以使用 DNS 名稱或自己的 IP 地址公開容器,如果進入容器的流量很大,Kubernetes 可以負載均衡并分配網絡流量,從而使部署穩定。

存儲編排

Kubernetes 允許你自動掛載你選擇的存儲系統,例如本地存儲、公共云提供商等。

自動部署和回滾

你可以使用 Kubernetes 描述已部署容器的所需狀態,它可以以受控的速率將實際狀態 更改為期望狀態。例如,你可以自動化 Kubernetes 來為你的部署創建新容器,刪除現有容器并將它們的所有資源用于新容器。

自動完成裝箱計算

Kubernetes 允許你指定每個容器所需 CPU 和內存(RAM)。當容器指定了資源請求時,Kubernetes 可以做出更好的決策來管理容器的資源。

自我修復

Kubernetes 重新啟動失敗的容器、替換容器、殺死不響應用戶定義的 運行狀況檢查的容器,并且在準備好服務之前不將其通告給客戶端。

密鑰與配置管理

Kubernetes 允許你存儲和管理敏感信息,例如密碼、OAuth 令牌和 ssh 密鑰。你可以在不重建容器鏡像的情況下部署和更新密鑰和應用程序配置,也無需在堆棧配置中暴露密鑰

二、Kubernetes 組件

當我們部署完 Kubernetes, 即擁有了一個完整的集群。

一個 Kubernetes 集群包含由一組被稱作節點的機器組成。這些節點上運行 Kubernetes 所管理的容器化應用。集群具有至少一個工作節點。

工作節點托管作為應用負載的組件的 Pod??刂破矫婀芾砑褐械墓ぷ鞴濣c和 Pod。為集群提供故障轉移和高可用性,這些控制平面一般跨多主機運行,集群跨多個節點運行。

三、Pod

Pod 是一組(一個或多個)容器;這些容器共享存儲、網絡、以及怎樣運行這些容器的聲明。

四、Kubernetes API

Kubernetes  控制面   的核心是  API 服務器。API 服務器負責提供 HTTP API,以供用戶、集群中的不同部分和集群外部組件相互通信。

Kubernetes API 使你可以查詢和操縱 Kubernetes API 中對象(例如:Pod、Namespace、ConfigMap 和 Event)的狀態。

大部分操作都可以通過  kubectl  命令行接口或 類似  kubeadm  這類命令行工具來執行,這些工具在背后也是調用 API。不過,你也可以使用 REST 調用來訪問這些 API。

Kubernetes API 服務器驗證并配置 API 對象的數據,這些對象包括 pods、services、replicationcontrollers 等。API 服務器為 REST 操作提供服務,并為集群的共享狀態提供前端,所有其他組件都通過該前端進行交互。

五、kube-controller-manager 

在主節點上運行   控制器   的組件。

從邏輯上講,每個控制器都是一個單獨的進程,但是為了降低復雜性,它們都被編譯到同一個可執行文件,并在一個進程中運行。

這些控制器包括:

節點控制器(Node Controller): 負責在節點出現故障時進行通知和響應。

副本控制器(Replication Controller): 負責為系統中的每個副本控制器對象維護正確數量的 Pod。

端點控制器(Endpoints Controller): 填充端點 (Endpoints) 對象(即加入 Service 與 Pod)。

服務帳戶和令牌控制器(Service Account Token Controllers): 為新的命名空間創建默認帳戶和 API 訪問令牌.

六、Node 組件

節點組件在每個節點上運行,維護運行的 Pod 并提供 Kubernetes 運行環境。

kubelet

一個在集群中每個節點(node)上運行的代理。它保證容器(containers)都 運行在  Pod  中。

kubelet 接收一組通過各類機制提供給它的 PodSpecs,確保這些 PodSpecs 中描述的容器處于運行狀態且健康。kubelet 不會管理不是由 Kubernetes 創建的容器。

kube-proxy

kube-proxy  是集群中每個節點上運行的網絡代理,實現 Kubernetes  服務(Service)  概念的一部分。

kube-proxy 維護節點上的網絡規則。這些網絡規則允許從集群內部或外部的網絡會話與 Pod 進行網絡通信。

如果操作系統提供了數據包過濾層并可用的話,kube-proxy 會通過它來實現網絡規則。否則,kube-proxy 僅轉發流量本身。

七、容器運行環境

容器運行環境是負責運行容器的軟件。

Kubernetes 支持多個容器運行環境: Docker、 containerd、CRI-O  以及任何實現  Kubernetes CRI (容器運行環境接口)。

八、插件(Addons)

插件使用 Kubernetes 資源(DaemonSet、 Deployment 等)實現集群功能。因為這些插件提供集群級別的功能,插件中命名空間域的資源屬于  kube-system  命名空間。

下面描述眾多插件中的幾種。有關可用插件的完整列表,請參見   插件(Addons)。

DNS

盡管其他插件都并非嚴格意義上的必需組件,但幾乎所有 Kubernetes 集群都應該 有集群 DNS,因為很多示例都需要 DNS 服務。

集群 DNS 是一個 DNS 服務器,和環境中的其他 DNS 服務器一起工作,它為 Kubernetes 服務提供 DNS 記錄。

Kubernetes 啟動的容器自動將此 DNS 服務器包含在其 DNS 搜索列表中。

Web 界面(儀表盤) 

Dashboard  是 Kubernetes 集群的通用的、基于 Web 的用戶界面。它使用戶可以管理集群中運行的應用程序以及集群本身并進行故障排除。

容器資源監控

容器資源監控   將關于容器的一些常見的時間序列度量值保存到一個集中的數據庫中,并提供用于瀏覽這些數據的界面。

集群層面日志

集群層面日志   機制負責將容器的日志數據 保存到一個集中的日志存儲中,該存儲能夠提供搜索和瀏覽接口。

九、etcd

etcd 是兼具一致性和高可用性的鍵值數據庫,可以作為保存 Kubernetes 所有集群數據的后臺數據庫。

您的 Kubernetes 集群的 etcd 數據庫通常需要有個備份計劃。

要了解 etcd 更深層次的信息,請參考  etcd 文檔

十、相關命令

kubectl help:幫助命令,查看 k8s 所有命令

kubectl help xxx:查看某個具體命令的詳細使用,如 kubectl help config:如下圖,查看 config 命令的具體使用,如 kubectl config view,查看詳細的配置文件,如 hzaz1-hubble-02 表示集群名稱,集群中又有多個 namespace。

注意:k8s 上 namespace 只是類似于一個分組,方便進行管理,并不對資源進行隔離,即一個 namespace 服務如果壓力過大,可能影響其它 namespace 服務,如 hubble-manager 可能影響到 hubble-platform

kubectl get nodes:獲取可用節點

kubectl get pod -A:獲取所有 pod

kubectl get hpa -n hubble-manager:查看 hpa 配置

kubectl describe nodes 10.128.228.2:查看節點描述 / 狀態信息

kubectl get service -n hubble-manager:查看 hubble-manager 集群下有哪些 service

kubectl delete service m-alarm-query -n hubble-manager:刪除 hubble-manager 集群下名稱為 m -alarm-query 的 service

cat ~/.kube/config:查看集群的配置文件

/data/weiwei/kubectl –kubeconfig=/data/weiwei/config-hubble-test-01 apply -f /data/weiwei/k8s/qiyi_puppet/script/k8s/hubble-biz-aiops.yaml:將容器部署到指定集群,通過 –kubeconfig 指定配置文件

/data/weiwei/kubectl –validate=false apply -f .   :執行當前目錄下所有 yaml 文件,免校驗

/data/weiwei/kubectl describe pod  metrics-server-6fdb89bdcb-8t4rs -n kube-system:查看命名空間為 kube-system,pod 名稱為 metrics-server-6fdb89bdcb-8t4rs 的執行狀態信息

kubectl logs metrics-server-6fdb89bdcb-8t4rs -n kube-system -c metrics-server:查看命名空間為 kube-system,pod 名稱為 metrics-server-6fdb89bdcb-8t4rs,容器為 metrics-server 的日志信息

 /data/weiwei/kubectl get event:獲取 event 信息

/data/weiwei/kubectl get events –all-namespaces:獲取所有命名空間的 event

/data/weiwei/kubectl  api-versions -n hubble-manager:查看當前可用的 API 版本

上述就是丸趣 TV 小編為大家分享的怎么進行 K8S 的總結分析了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注丸趣 TV 行業資訊頻道。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-16發表,共計4199字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 台中县| 花莲市| 德兴市| 柳河县| 济宁市| 酉阳| 铁岭市| 乌兰浩特市| 盐山县| 桂阳县| 富顺县| 桃园市| 昭平县| 平邑县| 波密县| 广昌县| 潜山县| 江永县| 长宁区| 阿坝县| 滁州市| 仁布县| 建水县| 桑日县| 玉屏| 屏东市| 镇远县| 华蓥市| 修文县| 宕昌县| 北宁市| 金门县| 靖远县| 雷波县| 宁明县| 内乡县| 康马县| 宜兴市| 湘西| 古丈县| 融水|