Kubernetes(K8s)創建centos7容器

一、Deployment的概念

     K8S本身並不提供網絡的功能,所以需要藉助第三方網絡插件進行部署K8S中的網絡,以打通各個節點中容器的互通。 
POD,是K8S中的一個邏輯概念,K8S管理的是POD,一個POD中包含多個容器,容器之間通過localhost互通。而POD需要ip地址。每個POD都有一個標籤 

POD–>RC–>RS–>Deployment (發展歷程)

Deployment,表示用戶對K8S集羣的一次更新操作。Deployment是一個比RS應用模式更廣的API對象。用於保證Pod的副本的數量。 

可以是創建一個新的服務,更新一個新的服務,也可以是滾動升級一個服務。滾動升級一個服務。實際是創建一個新的RS,然後將新的RS中副本數增加到理想狀態,將舊的RS中的副本數減小到0的複合操作; 這樣的一個複合操作用一個RS是不太好描述的,所以用一個更通用的Deployment來描述。 

RC、RS和Deployment只是保證了支撐服務的POD數量,但是沒有解決如何訪問這些服務的問題。一個POD只是一個運行服務的實例,隨時可以能在一個節點上停止,在另一個節點以一個新的IP啓動一個新的POD,因此不能以確定的IP和端口號提供服務。 

要穩定地提供服務需要服務發現和負載均衡能力。服務發現完成的工作,是針對客戶端訪問的服務,找到對應的後端服務實例。 

在K8S的集中當中,客戶端需要訪問的服務就是Service對象。每個Service會對應一個集羣內部有效的虛擬IP,集羣內部通過虛擬IP訪問一個服務。

二、創建K8S的第一個應用(centos7)

apiVersion: v1
kind: Pod
metadata:
  name: cdh-master
  Namespace: kube-cdh
  labels:
    role: cdh6.3
spec:
  containers:
    - name: centos7-1
      image: registry.cn-hangzhou.aliyuncs.com/dragon8512/centos7jdk8ssh:v1
      ports:
        - containerPort: 22
          hostPort: 50022
          protocol: TCP
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章