国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

京東云Kubernetes集群最佳實(shí)踐

XGBCCC / 2571人閱讀

摘要:京東云集群最佳實(shí)踐容器是的基石,它們之間的關(guān)系不言而喻。因此我們今天的文章將會(huì)和大家分享關(guān)于京東云集群的部分最佳實(shí)踐。京東云集群采用管理節(jié)點(diǎn)全托管的方式,為用戶提供簡(jiǎn)單易用高可靠功能強(qiáng)大的容器管理服務(wù)。

京東云Kubernetes集群最佳實(shí)踐

容器是Cloud Native的基石,它們之間的關(guān)系不言而喻。了解容器對(duì)于學(xué)習(xí)Cloud Native也是十分重要的。近期,京東云Cloud Native的“在線公開課”從理論和實(shí)踐兩個(gè)層面為大家分享了Cloud Native相關(guān)的技術(shù)知識(shí)。在本周的周日,我們還將迎來”Cloud Native時(shí)代的應(yīng)用之路與開源創(chuàng)新“專場(chǎng)技術(shù)沙龍。

因此我們今天的文章將會(huì)和大家分享關(guān)于京東云Kubernetes集群的部分最佳實(shí)踐。感興趣的小伙伴也可以跟著文檔自己動(dòng)手進(jìn)行創(chuàng)建。

京東云Kubernetes集群采用管理節(jié)點(diǎn)全托管的方式,為用戶提供簡(jiǎn)單易用、高可靠、功能強(qiáng)大的容器管理服務(wù)。該產(chǎn)品完全兼容標(biāo)準(zhǔn)Kubernetes API ,集成京東云網(wǎng)絡(luò)、存儲(chǔ)等插件。Kubernetes集群服務(wù)簡(jiǎn)化了Kubernetes部署、管理,降低了Kubernetes使用門檻,增強(qiáng)應(yīng)用的可靠性,提升開發(fā)的效率,同時(shí),也能更好地幫助用戶減少資源投入的成本。

最佳實(shí)踐——部署應(yīng)用


部署持久化存儲(chǔ)

京東云Kubernetes集群服務(wù)集成了京東云云硬盤,您可以在集群中使用京東云云硬盤作為持久化存儲(chǔ);

使用京東云云盤定義靜態(tài)存儲(chǔ)

1. 創(chuàng)建PV
kind: PersistentVolume
apiVersion: v1
metadata:
  name: pv-static
  labels:
    type: jdcloud-ebs
spec:
  capacity:
    storage: 30Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  jdcloudElasticBlockStore:
    volumeID: vol-ogcbkdjg7x
    fsType: xfs


參數(shù)說明:

1、如您需要在京東云Kubernetes集群服務(wù)中使用京東云云硬盤作為持久化存儲(chǔ),請(qǐng)?jiān)赑ersistentVolume定義時(shí),指定插件jdcloudElasticBlockStore;

2、VolumeID:指定同地域下為Kubernetes集群服務(wù)提供持久化存儲(chǔ)的云硬盤ID;

3、Fstype:指定文件系統(tǒng)類型;目前僅支持ext4和xfs兩種;

4、Capacity:PV 將具有特定的存儲(chǔ)容量。這是使用 PV 的容量屬性設(shè)置的;

5、PersistentVolume 可以以資源提供者支持的任何方式掛載到主機(jī)上。

京東云云硬盤目前只支持一種模式ReadWriteOnce——該卷可以被單個(gè)節(jié)點(diǎn)以讀/寫模式掛載;

訪問模式包括:
ReadWriteOnce——該卷可以被單個(gè)節(jié)點(diǎn)以讀/寫模式掛載

在命令行中,訪問模式縮寫為:
RWO - ReadWriteOnce
京東云為PersistentVolume提供了插件,插件類型為:jdcloudElasticBlockStore

注:

由于云硬盤限制一個(gè)云硬盤只能同時(shí)掛載一個(gè)云主機(jī),在使用基于PVC的Pod時(shí),建議使用replicas=1來創(chuàng)建一個(gè)部署集。StatefulSet可解決多副本問題。

Pod遷移,PVC遷移(卸載舊實(shí)例/掛載新實(shí)例)默認(rèn)35秒。

通過Deployment部署,刪除Deployment之后,可重新掛載原有PVC到新的Pod里面。

2. 創(chuàng)建PVC

聲明可以指定一個(gè)標(biāo)簽選擇器來進(jìn)一步過濾該組卷。只有標(biāo)簽與選擇器匹配的卷可以綁定到聲明。選擇器由兩個(gè)字段組成:

所有來自 MatchLabels 和 MatchExpressions 的要求都被“與”在一起——它們必須全部滿足才能匹配。

本例使用MatchLabels作為過濾條件,將匹配的PersistentVolume綁定到Persistent Volume Claim。

MatchLabels:Volume 必須有具有該值的標(biāo)簽

matchExpressions:這是一個(gè)要求列表,通過指定關(guān)鍵字,值列表以及與關(guān)鍵字和值相關(guān)的運(yùn)算符組成。有效的運(yùn)算符包括 In、NotIn、Exists 和 DoesNotExist。

訪問模式包括:ReadWriteOnce——該卷可以被單個(gè)節(jié)點(diǎn)以讀/寫模式掛載。

在命令行中,訪問模式縮寫為:RWO - ReadWriteOnce

京東云為Persistent Volume提供了插件,插件類型為:jdcloudElasticBlockStore

注:副本數(shù)只能指定1。

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pv-static-pvc
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: ""
  resources:
    requests:
      storage: 30Gi
  selector:
    matchLabels:
      type: jdcloud-ebs




創(chuàng)建Pod

kind: Pod

   apiVersion: v1
   metadata:
     name: pod-static
   spec:
     volumes:
       - name: pv-static
         persistentVolumeClaim:
           claimName: pv-static-pvc

  containers:
    - name: busybox-static
      image: busybox
      command:
         - sleep
         - "600"
      imagePullPolicy: Always
      volumeMounts:
        - mountPath: "/usr/share/mybusybox/"
          name: pv-static




使用京東云云盤定義動(dòng)態(tài)存儲(chǔ)

當(dāng)集群中的靜態(tài) PV 都不匹配新建的 Persistent Volume Claim 時(shí),集群可能會(huì)嘗試動(dòng)態(tài)地為 PVC 創(chuàng)建卷。

關(guān)于京東云云硬盤規(guī)格:

創(chuàng)建PVC

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvc1
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: jdcloud-ssd
  resources:
    requests:
      storage: 20Gi

查看集群的PVC

kubectl get pvc

輸出

NAME                                         STATUS    VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
pvc1                                         Bound     pvc-73d8538b-ebd6-11e8-a857-fa163eeab14b   20Gi       RWO            jdcloud-ssd    18s

查看集群的PV

kubectl get pv

輸出

NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pvc-73d8538b-ebd6-11e8-a857-fa163eeab14b 20Gi RWO Delete Bound default/pvc1 jdcloud-ssd 2m

基于Storage Class jdcloud-ssd,為PVC創(chuàng)建了卷。一旦 PV 和 PVC 綁定后,Persistent Volume Claim 綁定是排他性的,不管它們是如何綁定的。 PVC 跟 PV 綁定是一對(duì)一的映射。

2 部署Service

Kubernetes Service

Kubernetes Service定義了這樣一種抽象:一個(gè) Pod 的邏輯分組,一種可以訪問它們的策略-通常稱為微服務(wù)。這一組 Pod 能夠被 Service 訪問到,通常是通過 Label Selector(查看下面了解,為什么可能需要沒有 Selector 的 Service)實(shí)現(xiàn)的。一個(gè) Service 在 Kubernetes 中是一個(gè)REST對(duì)象,和Pod類似.像所有的 REST 對(duì)象一樣, Service 定義可以基于 POST 方式,請(qǐng)求 API Server 創(chuàng)建新的實(shí)例。

京東云Kubernetes集成負(fù)載均衡服務(wù),支持創(chuàng)建Load Balance類型的Service,為應(yīng)用提供安全、可靠的網(wǎng)絡(luò)。

創(chuàng)建的負(fù)載均衡會(huì)占用本地域的負(fù)載均衡配額,需要保證有足夠配額。

1、創(chuàng)建支持Load Balance類型的Service,命名為myservice.yaml文件定義如下:

kind: Service
apiVersion: v1
metadata:
  name: servicetest
  labels:
    run: myapp
spec:
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      nodePort: 30062
  type: LoadBalancer
  selector:
     run: myapp

2、執(zhí)行Kubectl創(chuàng)建命令,創(chuàng)建一個(gè)Service;其中使用相應(yīng)的YAML文件名稱替換:

kubectl create -f myservice.yaml

3、創(chuàng)建一組Nginx Pod,mynginx.yaml文件定義如下:

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: my-nginx
spec:
  selector:
    matchLabels:
      run: myapp
  replicas: 2
  template:
    metadata:
      labels:
        run: myapp
    spec:
      containers:
      - name: my-nginx
        image: nginx
        ports:
        - containerPort: 80

4、執(zhí)行Kubectl創(chuàng)建命令,創(chuàng)建一個(gè)Deployment;其中使用相應(yīng)的YAML文件名稱替換

kubectl create -f mynginx.yaml

5、查看已創(chuàng)建成功的Deployment,執(zhí)行以下命令:

kubectl get pods -l run=myapp -o wide

返回結(jié)果如下:

NAME       DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
my-nginx   2         2         2            2           4m

6、查看相應(yīng)的Pod運(yùn)行狀態(tài),

kubectl get pods -l run=myapp -o wide

返回結(jié)果如下:

NAME                        READY     STATUS    RESTARTS   AGE       IP            NODE
my-nginx-864b5bfdc7-6297s   1/1       Running   0          23m       172.16.0.10   k8s-node-vmtwjb-0vy9nuo0ym
my-nginx-864b5bfdc7-lr7gq   1/1       Running   0          23m       172.16.0.42   k8s-node-vm25q1-0vy9nuo0ym

7、查看Service詳情:

kubectl describe service servicetest
可以查看綁定到Service的Endpoints:

Name:                     servicetest
Namespace:                default
Labels:                   run=myapp
Annotations:              
Selector:                 run=myapp
Type:                     LoadBalancer
IP:                       172.16.61.58
LoadBalancer Ingress:     114.67.227.25
Port:                       80/TCP
TargetPort:               80/TCP
NodePort:                   30062/TCP
Endpoints:                172.16.0.10:80,172.16.0.42:80
Session Affinity:         None
External Traffic Policy:  Cluster
Events:
  Type     Reason                      Age                From                Message
  ----     ------                      ----               ----                -------
  Normal   EnsuringLoadBalancer        11m (x9 over 26m)  service-controller  Ensuring load balancer
  Normal   EnsuredLoadBalancer         10m                service-controller  Ensured load balancer

注:Load Balancer Ingress:114.67.227.25為外部公網(wǎng)IP

8、執(zhí)行如下命令查詢綁定到service的enpoints列表:

kubectl get ep servicetest
返回

NAME          ENDPOINTS                       AGE
servicetest   172.16.0.10:80,172.16.0.42:80   28m

9、在瀏覽器中輸入與Service關(guān)聯(lián)的Load Balance公網(wǎng)IP及端口,看到如下頁(yè)面,即表明Nginx服務(wù)正常。

·END·

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/25484.html

相關(guān)文章

  • 京東Kubernetes集群最佳實(shí)踐

    摘要:京東云集群最佳實(shí)踐容器是的基石,它們之間的關(guān)系不言而喻。因此我們今天的文章將會(huì)和大家分享關(guān)于京東云集群的部分最佳實(shí)踐。京東云集群采用管理節(jié)點(diǎn)全托管的方式,為用戶提供簡(jiǎn)單易用高可靠功能強(qiáng)大的容器管理服務(wù)。 京東云Kubernetes集群最佳實(shí)踐 容器是Cloud Native的基石,它們之間的關(guān)系不言而喻。了解容器對(duì)于學(xué)習(xí)Cloud Native也是十分重要的。近期,京東云Cloud N...

    劉永祥 評(píng)論0 收藏0
  • CloudBest:年度復(fù)盤丨盤點(diǎn)2020無(wú)處不在的「原生」

    摘要:華為云華為云在云原生這場(chǎng)游戲中,最具競(jìng)爭(zhēng)力的玩家之一。年,金山云在云原生領(lǐng)域推出了三款重磅產(chǎn)品星曜裸金屬服務(wù)器云服務(wù)器和云盤。在線上智博會(huì)上,浪潮云發(fā)布了經(jīng)過全新迭代升級(jí)的浪潮云,進(jìn)一步提升平臺(tái)云原生服務(wù)能力。面對(duì)數(shù)字時(shí)代復(fù)雜系統(tǒng)的不確定性,傳統(tǒng)的 IT 應(yīng)用架構(gòu)研發(fā)交付周期長(zhǎng)、維護(hù)成本高、創(chuàng)新升級(jí)難,煙囪式架構(gòu),開放性差、組件復(fù)用度低,這些都成為了企業(yè)業(yè)務(wù)快速增長(zhǎng)的瓶頸。而云原生以其敏捷、...

    Tecode 評(píng)論0 收藏0
  • 這大概是今年介紹原生最清晰明了的文章!

    摘要:在本次上,京東云將在大會(huì)上為對(duì)云原生感興趣的研發(fā)和運(yùn)維人員帶來利用延遲加載快速啟動(dòng)容器的話題分享。今天聊的主角云原生也是一樣。 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/img/bVbtQaR?w=684&h=327); showImg(http...

    andycall 評(píng)論0 收藏0
  • 這大概是今年介紹原生最清晰明了的文章!

    摘要:在本次上,京東云將在大會(huì)上為對(duì)云原生感興趣的研發(fā)和運(yùn)維人員帶來利用延遲加載快速啟動(dòng)容器的話題分享。今天聊的主角云原生也是一樣。 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/img/bVbtQaR?w=684&h=327); showImg(http...

    StonePanda 評(píng)論0 收藏0
  • 數(shù)人|當(dāng)K8S遇上微服務(wù)-京東金融PaaS平臺(tái)思考與實(shí)踐

    摘要:平臺(tái)上的微服務(wù)架構(gòu)應(yīng)用再來看一下我眼中的基于當(dāng)前最流行的微服務(wù)架構(gòu)的設(shè)計(jì)是什么樣的,即我們平臺(tái)上要運(yùn)行的典型應(yīng)用是什么樣的。 showImg(https://segmentfault.com/img/remote/1460000010900878); 8月19日的數(shù)人云Container Meetup上,張龍老師做了《基于Kubernetes的PaaS平臺(tái)的設(shè)計(jì)和思考》的精彩分享,分別...

    Imfan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<