国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【K8S】Kubernetes 中有狀態(tài)的資源對象——StatefulSet

這篇具有很好參考價(jià)值的文章主要介紹了【K8S】Kubernetes 中有狀態(tài)的資源對象——StatefulSet。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、StatefulSet 資源對象需求背景

現(xiàn)在基本上很多服務(wù)中的應(yīng)用都是有狀態(tài)的,比如MySQL數(shù)據(jù)庫、Redis等,因?yàn)槠渲械臄?shù)據(jù)在不斷地變化,所以這些應(yīng)用每個(gè)時(shí)刻都處于一個(gè)不同的狀態(tài)?;蛘咭粋€(gè)系統(tǒng)中存在多個(gè)不同的應(yīng)用,這些應(yīng)用存在一定的依賴關(guān)系。例如一個(gè)博客服務(wù),該服務(wù)中包含了Redis緩存和MySQL數(shù)據(jù)庫,我們在啟動(dòng)時(shí)需要先啟動(dòng) MySQL數(shù)據(jù)庫,Redis緩存,再去啟動(dòng)博客應(yīng)用。Kubernetes 未這種存在狀態(tài)的應(yīng)用專門設(shè)計(jì)了一種資源對象,就是 StatefulSet

二、在 Yaml 文件中定義 StatefulSet 資源對象

StatefulSet 資源對象類似于 Deployment 資源對象,都是包含多個(gè) Pod 副本,但是 Deployment 資源對象的 Pod 副本Pod 名稱不固定,而且啟動(dòng)順序也是隨機(jī)的,但是 StatefulSet 資源對象Pod 副本的名稱是固定的,且啟動(dòng)關(guān)系也是確定的。

2.1 StatefulSet 資源對象狀態(tài)

  • StatefulSet 資源對象的Pod 副本名一般取值為節(jié)點(diǎn)名 + 序號(hào)(序號(hào)從0開始,最大值未Pod副本數(shù)目-1)。StatefulSet 資源對象的Pod副本的啟動(dòng)先后順序依賴于這個(gè)Pod副本的序號(hào)。
  • StatefulSet 資源對象的訪問需要額外的創(chuàng)建對應(yīng)的 Service 資源對象,該Service 資源對象的名稱要與 StatefulSet 資源對象中定義的 ServiceName 一致。

2.2 StatefulSet 資源對象定義

StatefulSet 資源對象的簡稱是sts。下面是 StatefulSet 資源對象與其對應(yīng)的 Service 資源對象在 Yaml 文件中定義的內(nèi)容示例:

apiVersion: apps/v1		# API 資源對象的版本
kind: StatefulSet		# API 資源對象的類型
metadata:
  name: test-sts		# # API 資源對象名

spec:
  serviceName: test-svc
  volumeClaimTemplates: 		# 在StatefulSet 資源對象中直接定義對應(yīng)的PVC
  - metadata:
      name: test-redis-pvc		# 定義了該 PVC 的名稱
    spec:
      storageClassName: nfs-client		# 明確PVC與PV綁定的StorageClass
      accessModes:		# 定義需要的存儲(chǔ)設(shè)備的權(quán)限
        - ReadWriteMany
      resources:		# 定義需要的存儲(chǔ)容量大小
        requests:
          storage: 60Mi

  replicas: 2		# 明確 statefulSet 資源對象對應(yīng)的 pod 副本數(shù)
  selector:		# 定義statefulSet 標(biāo)簽選擇器
    matchLabels:
      app: test-sts

  template:
    metadata:		# statefulSet資源對象下Pod 副本中的標(biāo)簽
      labels:
        app: test-sts
    spec:
      containers:
      - image: redis:5-alpine
        name: redis
        ports:
        - containerPort: 6379

        volumeMounts:
        - name: test-redis-pvc
          mountPath: /redis-data
---
apiVersion: v1
kind: Service
metadata:
  name: test-svc

spec:
  selector:
    app: test-sts
  ports:
  - port: 6379
    protocol: TCP
    targetPort: 6379

2.3 StatefulSet 資源對象

與我們之前討論的 Deployment 資源對象相比,StatefulSet 資源對象的定義主要有2處獨(dú)特之處,一個(gè)是serviceName,一個(gè)是volumeClaimTemplates。

  • serviceName: 該字段規(guī)定了使用 DNS 訪問Pod時(shí),Pod所屬的子域。形式如:$(pod 名稱).$(serviceName)
  • volumeClaimTemplates: StatefulSet 資源對象內(nèi)置的專門用于定義 PVC 的字段;

因?yàn)?StatefulSet 資源對象是有狀態(tài)的,不存在 Pod 漂移的情況,因此可以通過域名 \$(pod 名稱).\$(serviceName) 被穩(wěn)定的訪問。

三、StatefulSet 資源對象的使用

利用上面的Yaml 文件,我們通過如下命令直接創(chuàng)建 StatefulSetService 資源對象:

kubectl apply -f test-svc-sts.yaml

通過如下命令可查看 statefulSet 資源對象和 service 資源對象的狀態(tài),同時(shí)使用hostname 命令查看短格式節(jié)點(diǎn)名與Pod名稱的關(guān)系:文章來源地址http://www.zghlxwxcb.cn/news/detail-765917.html

# 查看節(jié)點(diǎn)名短格式
hostname
# 查看StatefulSet資源對象狀態(tài)
kubectl get sts
# 查看Service資源對象狀態(tài)
kubectl get svc
# 查看資源對象test-sts詳細(xì)信息
kubectl describe test-sts
# 查看資源對象test-svc詳細(xì)信息
kubectl describe test-svc

到了這里,關(guān)于【K8S】Kubernetes 中有狀態(tài)的資源對象——StatefulSet的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • K8s(Kubernetes)學(xué)習(xí)(四):Controller 控制器:Deployment、StatefulSet、Daemonset、Job

    K8s(Kubernetes)學(xué)習(xí)(四):Controller 控制器:Deployment、StatefulSet、Daemonset、Job

    什么是 Controller 以及作用 常見的 Controller 控制器 Controller 如何管理 Pod Deployment 基本操作與應(yīng)用 通過控制器實(shí)現(xiàn) Pod 升級(jí)回滾和彈性伸縮 StatefulSet 基本操作與應(yīng)用 Daemonset 基本操作與應(yīng)用 Job 基本操作與應(yīng)用 Controller 無法解決問題 1 Controller 控制器 官網(wǎng): http://kubernetes.p2hp.com/

    2024年02月09日
    瀏覽(59)
  • [Kubernetes]5. k8s集群StatefulSet詳解,以及數(shù)據(jù)持久化(SC PV PVC)

    [Kubernetes]5. k8s集群StatefulSet詳解,以及數(shù)據(jù)持久化(SC PV PVC)

    前面通過 deployment 結(jié)合 service 來部署 無狀態(tài)的應(yīng)用 ,下面來講解通過 satefulSet 結(jié)合 service 來部署 有狀態(tài)的應(yīng)用 無狀態(tài): 無狀態(tài) (stateless) 、牲畜 (cattle) 、無名 (nameless) 、可丟棄 (disposable) 有狀態(tài): 有狀態(tài) (stateful) 、寵物 (pet) 、具有名 (haviing name) 、不可丟棄 (non-disposable) St

    2024年02月01日
    瀏覽(49)
  • yum部署kubernetes(k8s)集群、k8s常用資源管理

    目錄 一、環(huán)境搭建 1、準(zhǔn)備環(huán)境 1)計(jì)算機(jī)說明,建議系統(tǒng)版本7.4或者7.6 2)修改所有主機(jī)的計(jì)算機(jī)名設(shè)置host文件 ?2、安裝master節(jié)點(diǎn) 1)安裝etcd配置etcd 2)安裝k8s-master節(jié)點(diǎn) 3)配置apiserver 4)配置controller和scheduler 5)啟動(dòng)k8s服務(wù) 3、安裝k8s-master上的node 1)安裝node 2)配置kube

    2024年02月13日
    瀏覽(35)
  • kubernetes/k8s配置資源管理

    kubernetes/k8s配置資源管理

    配置資源管理 Secret Configmap*.1.2加入新特征 1.18 Secret:保存密碼,token,敏感的k8s資源 這類數(shù)據(jù)可以存放在鏡像當(dāng)中,但是防止secret可以更方便的控制,減少暴漏風(fēng)險(xiǎn)。 保存加密的信息 Secret的類型: docker-registry:存儲(chǔ)docker倉庫認(rèn)證信息,以及docker組件的認(rèn)證信息(私有的) generic:是

    2024年01月17日
    瀏覽(24)
  • (kubernetes)k8s常用資源管理

    (kubernetes)k8s常用資源管理

    目錄 k8s常用資源管理 1、創(chuàng)建一個(gè)pod 1)創(chuàng)建yuml文件 2)創(chuàng)建容器 3)查看所有pod創(chuàng)建運(yùn)行狀態(tài) 4)查看指定pod資源 5)查看pod運(yùn)行的詳細(xì)信息 6)驗(yàn)證運(yùn)行的pod 2、pod管理 1)刪除pod 2)查看刪除pod無法找到 3)創(chuàng)建pod 4)發(fā)現(xiàn)最先創(chuàng)建的pod運(yùn)行在k8s-master節(jié)點(diǎn)上,下載鏡像速度太

    2024年02月13日
    瀏覽(52)
  • k8s資源對象

    k8s資源對象

    什么是資源對象? 所謂資源對象是指在k8s上創(chuàng)建的資源實(shí)例;即通過apiserver提供的各資源api接口(可以理解為各種資源模板),使用yaml文件或者命令行的方式向?qū)?yīng)資源api接口傳遞參數(shù)賦值實(shí)例化的結(jié)果;比如我們在k8s上創(chuàng)建一個(gè)pod,那么我們就需要通過給apiserver交互,傳

    2024年02月03日
    瀏覽(25)
  • 【Kubernetes】K8s 查看 Pod 的狀態(tài)

    NAME :Pod 的名稱。 READY :代表 Pod 里面有幾個(gè)容器,前面是啟動(dòng)的,后面是總數(shù), 1 / 1 1/1 1/1 。 STATUS :就是當(dāng)前 Pod 狀態(tài),最常見的就是 Running 正在運(yùn)行,最期望的狀態(tài),只要不是 Running 的就說明有問題,就算是 Running 的就不一定沒有問題。 狀態(tài) 說明 Pending 掛起 在執(zhí)行創(chuàng)建

    2024年01月15日
    瀏覽(138)
  • k8s資源對象(二)

    k8s資源對象(二)

    secret和configmap資源都是通過掛載的方式將對應(yīng)數(shù)據(jù)掛載到容器內(nèi)部環(huán)境中去使用,兩者的使用沒有太多的不同 ,configmap資源通常用于為pod提供配置文件;secret資源主要用于為pod提供證書、用戶名密碼等敏感數(shù)據(jù); Configmap將非機(jī)密性信息(如配置信息)和鏡像解耦, 實(shí)現(xiàn)方式為將

    2024年02月06日
    瀏覽(17)
  • 【Kubernetes資源篇】StatefulSet無狀態(tài)服務(wù)管理入門實(shí)戰(zhàn)詳解

    【Kubernetes資源篇】StatefulSet無狀態(tài)服務(wù)管理入門實(shí)戰(zhàn)詳解

    官方中文參考文檔 1、StatefulSet Pod控制器特性 StatefulSet(簡寫sts)也是K8S集群中的一種Pod資源管理器,與deployment Pod控制器不同的是,StatefulSet用于管理無狀態(tài)程序,特性如下: 穩(wěn)定的網(wǎng)絡(luò)標(biāo)識(shí)符:管理的Pod都擁有一個(gè)穩(wěn)定的網(wǎng)絡(luò)標(biāo)識(shí)符??梢酝ㄟ^網(wǎng)絡(luò)標(biāo)識(shí)符進(jìn)行訪問。 有序部署

    2024年02月13日
    瀏覽(23)
  • kubernetes(k8s) pod(資源限制、基礎(chǔ)概念)

    kubernetes(k8s) pod(資源限制、基礎(chǔ)概念)

    目錄 ?一、資源限制 1、概念 1.2、Pod和容器的資源請求和限制 1.3、CPU資源單位 1.4、內(nèi)存資源單位 1.5、CPU和內(nèi)存的Requests和Limits的特點(diǎn) 1.6、案例 二、pod 的兩種使用方式 三、pod 資源共享 四、底層容器Pause 1、pause 共享資源 1.1、網(wǎng)絡(luò) 1.2、存儲(chǔ) 1.3、小結(jié) 2、Pause主要功能 3、Pod

    2024年02月05日
    瀏覽(103)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包