日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)kubernetes教程:Kubernetes云管理控制器

Kubernetes 云管理控制器

FEATURE STATE: Kubernetes v1.11 [beta]

10余年的中方網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整中方建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)公司從事“中方網(wǎng)站設(shè)計”,“中方網(wǎng)站推廣”以來,每個客戶項目都認(rèn)真落實執(zhí)行。

由于云驅(qū)動的開發(fā)和發(fā)布的步調(diào)與 Kubernetes 項目不同,將服務(wù)提供商專用代碼抽象到 ?cloud-controller-manager? 二進(jìn)制中有助于云服務(wù)廠商在 Kubernetes 核心代碼之外獨立進(jìn)行開發(fā)。

?cloud-controller-manager? 可以被鏈接到任何滿足 cloudprovider.Interface 約束的云服務(wù)提供商。為了兼容舊版本,Kubernetes 核心項目中提供的 cloud-controller-manager 使用和 ?kube-controller-manager? 相同的云服務(wù)類庫。 已經(jīng)在 Kubernetes 核心項目中支持的云服務(wù)提供商預(yù)計將通過使用 in-tree 的 cloud-controller-manager 過渡為非 Kubernetes 核心代碼。

管理

需求

每個云服務(wù)都有一套各自的需求用于系統(tǒng)平臺的集成,這不應(yīng)與運行 ?kube-controller-manager? 的需求有太大差異。作為經(jīng)驗法則,你需要:

  • 云服務(wù)認(rèn)證/授權(quán):你的云服務(wù)可能需要使用令牌或者 IAM 規(guī)則以允許對其 API 的訪問
  • kubernetes 認(rèn)證/授權(quán):cloud-controller-manager 可能需要 RBAC 規(guī)則以訪問 kubernetes apiserver
  • 高可用:類似于 kube-controller-manager,你可能希望通過主節(jié)點選舉(默認(rèn)開啟)配置一個高可用的云管理控制器。

運行云管理控制器

你需要對集群配置做適當(dāng)?shù)男薷囊猿晒Φ剡\行云管理控制器:

  • 一定不要為 ?kube-apiserver? 和 ?kube-controller-manager? 指定 ?--cloud-provider? 標(biāo)志。 這將保證它們不會運行任何云服務(wù)專用循環(huán)邏輯,這將會由云管理控制器運行。未來這個標(biāo)記將被廢棄并去除。
  • ?kubelet ?必須使用 ?--cloud-provider=external? 運行。 這是為了保證讓 kubelet 知道在執(zhí)行任何任務(wù)前,它必須被云管理控制器初始化。

請記住,設(shè)置集群使用云管理控制器將用多種方式更改集群行為:

  • 指定了 ?--cloud-provider=external? 的 kubelet 將被添加一個 ?node.cloudprovider.kubernetes.io/uninitialized? 的污點,導(dǎo)致其在初始化過程中不可調(diào)度(?NoSchedule?)。 這將標(biāo)記該節(jié)點在能夠正常調(diào)度前,需要外部的控制器進(jìn)行二次初始化。 請注意,如果云管理控制器不可用,集群中的新節(jié)點會一直處于不可調(diào)度的狀態(tài)。 這個污點很重要,因為調(diào)度器可能需要關(guān)于節(jié)點的云服務(wù)特定的信息,比如他們的區(qū)域或類型 (高端 CPU、GPU 支持、內(nèi)存較大、臨時實例等)。
  • 集群中節(jié)點的云服務(wù)信息將不再能夠從本地元數(shù)據(jù)中獲取,取而代之的是所有獲取節(jié)點信息的 API 調(diào)用都將通過云管理控制器。這意味著你可以通過限制到 kubelet 云服務(wù) API 的訪問來提升安全性。 在更大的集群中你可能需要考慮云管理控制器是否會遇到速率限制, 因為它現(xiàn)在負(fù)責(zé)集群中幾乎所有到云服務(wù)的 API 調(diào)用。

云管理控制器可以實現(xiàn):

  • 節(jié)點控制器 - 負(fù)責(zé)使用云服務(wù) API 更新 kubernetes 節(jié)點并刪除在云服務(wù)上已經(jīng)刪除的 kubernetes 節(jié)點。
  • 服務(wù)控制器 - 負(fù)責(zé)在云服務(wù)上為類型為 LoadBalancer 的 service 提供負(fù)載均衡器。
  • 路由控制器 - 負(fù)責(zé)在云服務(wù)上配置網(wǎng)絡(luò)路由。
  • 如果你使用的是 out-of-tree 提供商,請按需實現(xiàn)其余任意特性。

示例

如果當(dāng)前 Kubernetes 內(nèi)核支持你使用的云服務(wù),并且想要采用云管理控制器,請參見 kubernetes 內(nèi)核中的云管理控制器。

對于不在 Kubernetes 核心代碼庫中的云管理控制器,你可以在云服務(wù)廠商或 SIG 領(lǐng)導(dǎo)者的源中找到對應(yīng)的項目。

  • DigitalOcean
  • keepalived
  • Oracle Cloud Infrastructure
  • Rancher

對于已經(jīng)存在于 Kubernetes 內(nèi)核中的提供商,你可以在集群中將 in-tree 云管理控制器作為守護(hù)進(jìn)程運行。請使用如下指南:

# 這是一個如何將 cloud-controller-manager 安裝為集群中的 Daemonset 的示例。
# 本例假定你的主控節(jié)點可以運行 pod 并具有角色 node-role.kubernetes.io/master
# 請注意,這里的 Daemonset 不能直接在你的云上工作,此例只是一個指導(dǎo)。

---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: cloud-controller-manager
  namespace: kube-system
---
apiVersion: rbac.authorization.K8S.io/v1
kind: ClusterRoleBinding
metadata:
  name: system:cloud-controller-manager
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: cloud-controller-manager
  namespace: kube-system
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
  labels:
    k8s-app: cloud-controller-manager
  name: cloud-controller-manager
  namespace: kube-system
spec:
  selector:
    matchLabels:
      k8s-app: cloud-controller-manager
  template:
    metadata:
      labels:
        k8s-app: cloud-controller-manager
    spec:
      serviceAccountName: cloud-controller-manager
      containers:
      - name: cloud-controller-manager
        # 對于樹內(nèi)驅(qū)動,我們使用 k8s.gcr.io/cloud-controller-manager,
        # 鏡像可以替換為其他樹外驅(qū)動的鏡像
        image: k8s.gcr.io/cloud-controller-manager:v1.8.0
        command:
        - /usr/local/bin/cloud-controller-manager
        - --cloud-provider=[YOUR_CLOUD_PROVIDER]  # 在此處添加你自己的云驅(qū)動!
        - --leader-elect=true
        - --use-service-account-credentials
        # 這些標(biāo)志因每個云驅(qū)動而異
        - --allocate-node-cidrs=true
        - --configure-cloud-routes=true
        - --cluster-cidr=172.17.0.0/16
      tolerations:
      # 這一設(shè)置是必需的,為了讓 CCM 可以自行引導(dǎo)
      - key: node.cloudprovider.kubernetes.io/uninitialized
        value: "true"
        effect: NoSchedule
      # 這些容忍度使得守護(hù)進(jìn)程能夠在控制平面節(jié)點上運行
      # 如果你的控制平面節(jié)點不應(yīng)該運行 pod,請刪除它們
      - key: node-role.kubernetes.io/control-plane
        operator: Exists
        effect: NoSchedule
      - key: node-role.kubernetes.io/master
        operator: Exists
        effect: NoSchedule
      # 這是為了限制 CCM 僅在主節(jié)點上運行
      # 節(jié)點選擇器可能因你的集群設(shè)置而異
      nodeSelector:
        node-role.kubernetes.io/master: ""

限制 

運行云管理控制器會有一些可能的限制。雖然以后的版本將處理這些限制,但是知道這些生產(chǎn)負(fù)載的限制很重要。

對 Volume 的支持

云管理控制器未實現(xiàn) ?kube-controller-manager? 中的任何 volume 控制器,因為和 volume 的集成還需要與 kubelet 協(xié)作。由于我們引入了 CSI (容器存儲接口,container storage interface) 并對彈性 volume 插件添加了更強(qiáng)大的支持,云管理控制器將添加必要的支持,以使云服務(wù)同 volume 更好的集成。請在 這里 了解更多關(guān)于 out-of-tree CSI volume 插件的信息。

可擴(kuò)展性

在以前為云服務(wù)提供商提供的架構(gòu)中,我們依賴 kubelet 的本地元數(shù)據(jù)服務(wù)來獲取關(guān)于它本身的節(jié)點信息。通過這個新的架構(gòu),現(xiàn)在我們完全依賴云管理控制器來獲取所有節(jié)點的信息。對于非常大的集群,你需要考慮可能的瓶頸,例如資源需求和 API 速率限制。

雞和蛋的問題

云管理控制器的目標(biāo)是將云服務(wù)特性的開發(fā)從 Kubernetes 核心項目中解耦。 不幸的是,Kubernetes 項目的許多方面都假設(shè)云服務(wù)提供商的特性同項目緊密結(jié)合。 因此,這種新架構(gòu)的采用可能導(dǎo)致某些場景下,當(dāng)一個請求需要從云服務(wù)提供商獲取信息時, 在該請求沒有完成的情況下云管理控制器不能返回那些信息。

Kubelet 中的 TLS 引導(dǎo)特性是一個很好的例子。 目前,TLS 引導(dǎo)認(rèn)為 kubelet 有能力從云提供商(或本地元數(shù)據(jù)服務(wù))獲取所有的地址類型(私有、公用等), 但在被初始化之前,云管理控制器不能設(shè)置節(jié)點地址類型,而這需要 kubelet 擁有 TLS 證書以和 API 服務(wù)器通信。

隨著整個動議的演進(jìn),將來的發(fā)行版中將作出改變來解決這些問題。


網(wǎng)站題目:創(chuàng)新互聯(lián)kubernetes教程:Kubernetes云管理控制器
分享網(wǎng)址:http://www.5511xx.com/article/cdeigdg.html