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

k8s之Pod常用命令詳解、鏡像拉取策略(imagePullPolicy)

這篇具有很好參考價(jià)值的文章主要介紹了k8s之Pod常用命令詳解、鏡像拉取策略(imagePullPolicy)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

常用命令

 kubectl api-resources #查詢(xún)可操作的資源對(duì)象列表

kubectl get pod #查看默認(rèn)命名空間下所有pod
kubectl describe pod podname #獲取默認(rèn)命名空間下POD詳情

# 如果要查看制定命名空間則使用 -n nsname
kubectl get pod -n ns
kubectl describe pod podname -n ns

# 以YAML格式提供比 kubectl describe pod 更加詳細(xì)的信息,即系統(tǒng)擁有的關(guān)于 Pod 的所有信息
kubectl get pod podname -o yaml

# 查看Pod對(duì)應(yīng)的labels
kubectl get pod --show-labels

# deploy 也能用 --show-labels 查看標(biāo)簽
kubectl get deploy --show-labels

# 通過(guò)labels來(lái)篩選對(duì)應(yīng)的Pod
kubectl get pod --show-labels --selector=pod-template-hash=748c667d99

kubectl logs podname #查看POD日志,如果有多個(gè)容器時(shí),默認(rèn)查看第一個(gè)容器的日志
kubectl logs podname -c containername #使用 -c 查看POD中指定容器的日志
kubectl logs podname containername #也可以省略 -c

# 打印容器在Pod中的前一個(gè)實(shí)例的日志,如果它存在的話(huà)
# 即如果你的容器之前崩潰過(guò),你可以通過(guò)此命令訪(fǎng)問(wèn)之前容器的崩潰日志(-p 是 --previous的縮寫(xiě))
kubectl logs -p podname containername
kubectl logs --previous podname containername

# 在Pod的容器內(nèi)部執(zhí)行命令
kubectl exec podname -- cat /var/log/dpkg.log
kubectl exec podname -- ls /var/log/

# 在Pod內(nèi)部使用 -c 指定容器執(zhí)行命令
# 如果Pod內(nèi)有多個(gè)容器的情況下若是不用 -c 指定容器,則會(huì)默認(rèn)在第一個(gè)容器里執(zhí)行(也就是配置文件先定義的容器)
k exec podname -c containername -- ls /var/log

# 連接Pod容器的控制臺(tái)
kubectl exec -it podname -- sh

# 連接Pod指定容器的控制臺(tái)
k exec nginx -c nginx-container -- ls /var/log

# 不執(zhí)行命令,而是生成 yaml 的配置文件重定向到配置文件中
kubectl run nginx --image=nginx --dry-run=client -o yaml > nginx.yaml

# 完整一些的
kubectl run nginx --image=nginx --restart=OnFailure --port=80 --env="test_env=test is env" --dry-run=client -o json > pod05

# 列出Pod容器的環(huán)境變量
kubectl exec podname -- printenv

Pod配置文件

apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  labels:
    run: nginx
  name: nginx
spec:
  containers:
  - image: nginx
    imagePullPolicy: IfNotPresent
    name: nginx
    resources: {}
  dnsPolicy: ClusterFirst
  restartPolicy: Always
status: {}

鏡像拉取策略

imagePullPolicy有三個(gè)取值:

  • Always 每次都下載最新鏡像
  • Never 不會(huì)嘗試獲取鏡像,如果鏡像已經(jīng)以某種方式存在本地,kubelet 會(huì)嘗試啟動(dòng)容器;否則,會(huì)啟動(dòng)失敗
  • IfNotPresent 只有當(dāng)鏡像在本地不存在時(shí)才會(huì)拉取
    默認(rèn)鏡像拉取策略:

當(dāng)你(或控制器)向 API 服務(wù)器提交一個(gè)新的 Pod 時(shí),你的集群會(huì)在滿(mǎn)足特定條件時(shí)設(shè)置 imagePullPolicy 字段:

如果你省略了 imagePullPolicy 字段,并且容器鏡像的標(biāo)簽是 :latest,imagePullPolicy 會(huì)自動(dòng)設(shè)置為 Always
如果你省略了 imagePullPolicy 字段,并且沒(méi)有指定容器鏡像的標(biāo)簽,imagePullPolicy 會(huì)自動(dòng)設(shè)置為 Always
如果你省略了 imagePullPolicy 字段,并且為容器鏡像指定了非 :latest 的標(biāo)簽,imagePullPolicy 就會(huì)自動(dòng)設(shè)置為 IfNotPresent

注意事項(xiàng):

1、在生產(chǎn)環(huán)境中部署容器時(shí),你應(yīng)該避免使用 :latest 標(biāo)簽,因?yàn)檫@使得正在運(yùn)行的鏡像的版本難以追蹤,并且難以正確地回滾,應(yīng)指定一個(gè)有意義的標(biāo)簽,如 v1.42.0

2、為了確保 Pod 總是使用相同版本的容器鏡像,你可以指定鏡像的摘要; 將 : 替換為 @,例如image@sha256:45b23dee08af5e43a7fea6c4cf9c25ccf269ee113168c19722f87876677c5cb2 (當(dāng)使用鏡像標(biāo)簽時(shí),如果鏡像倉(cāng)庫(kù)修改了代碼所對(duì)應(yīng)的鏡像標(biāo)簽,可能會(huì)出現(xiàn)新舊代碼混雜在 Pod 中運(yùn)行的情況。 鏡像摘要唯一標(biāo)識(shí)了鏡像的特定版本,因此 Kubernetes 每次啟動(dòng)具有指定鏡像名稱(chēng)和摘要的容器時(shí),都會(huì)運(yùn)行相同的代碼。 通過(guò)摘要指定鏡像可固定你運(yùn)行的代碼,這樣鏡像倉(cāng)庫(kù)的變化就不會(huì)導(dǎo)致版本的混雜)

3、容器的 imagePullPolicy 的值總是在對(duì)象初次創(chuàng)建時(shí)設(shè)置的,如果后來(lái)鏡像的標(biāo)簽發(fā)生變化,則不會(huì)更新。例如,如果你用一個(gè) 非 :latest 的鏡像標(biāo)簽創(chuàng)建一個(gè) Deployment, 并在隨后更新該 Deployment 的鏡像標(biāo)簽為 :latest,則 imagePullPolicy 字段 不會(huì) 變成 Always 你必須手動(dòng)更改已經(jīng)創(chuàng)建的資源的拉取策略

容器重啟策略

restartPolicy有三個(gè)取值:

  • Always 總是重啟
  • OnFailure 失敗了才重啟
  • Never 從不重啟

Pod容器的狀態(tài):

Pending Pod已經(jīng)建立,但是pod里還有容器沒(méi)有創(chuàng)建完成
Running Pod已經(jīng)被調(diào)度到節(jié)點(diǎn)上,且容器工作正常
Completed Pod里所有容器正常退出
Succeeded
Failed

參考

k8s之Pod詳解文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-762124.html

到了這里,關(guān)于k8s之Pod常用命令詳解、鏡像拉取策略(imagePullPolicy)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • Pod詳解(Pod使用、容器分類(lèi)、鏡像拉取和容器重啟策略)

    目錄 一、Pod基礎(chǔ)概念 二、Pod兩種使用方式 1.pause容器使得Pod中的所有容器可以共享兩種資源:網(wǎng)絡(luò)和存儲(chǔ) 2.Kubernetes為什么設(shè)計(jì)這樣的Pod概念和特殊組成結(jié)構(gòu)? 三、Pod容器的分類(lèi) 1.自主式Pod 2.控制器管理的Pod 四、Pod中的容器類(lèi)型分3種 1.pause容器(基礎(chǔ)容器/父容器/根容器) 2

    2024年02月10日
    瀏覽(20)
  • K8s 詳解(一) K8s 架構(gòu)和常用命令

    K8s 詳解(一) K8s 架構(gòu)和常用命令

    ?? 作者: Linux猿 ?? 簡(jiǎn)介: CSDN博客專(zhuān)家??,華為云享專(zhuān)家??,Linux、C/C++、云計(jì)算、物聯(lián)網(wǎng)、面試、刷題、算法盡管咨詢(xún)我,關(guān)注我,有問(wèn)題私聊! ?? 歡迎小伙伴們點(diǎn)贊??、收藏?、留言?? 本文主要介紹 K8s 的簡(jiǎn)介、架構(gòu)以及常用命令。 Kubernetes ( 簡(jiǎn)稱(chēng)為 K8s )最開(kāi)始

    2024年02月15日
    瀏覽(18)
  • K8s拉取habor鏡像

    K8s拉取habor鏡像

    目錄 在daemon.json中添加倉(cāng)庫(kù)地址 重新加載daemon.json并重啟docker 在目標(biāo)node節(jié)點(diǎn)添加域名 驗(yàn)證目標(biāo)node是否能正常登錄鏡像倉(cāng)庫(kù) 創(chuàng)建pod資源 加載yml文件 驗(yàn)證 查看pod的ip與端口號(hào) 此處需要在創(chuàng)建資源對(duì)象所在的節(jié)點(diǎn)進(jìn)行添加 路徑: /etc/docker/daemon.json vim /etc/docker/daemon.json 格式:

    2024年04月12日
    瀏覽(26)
  • K8S 自動(dòng)拉取鏡像失敗,手動(dòng)拉取鏡像成功

    K8S 自動(dòng)拉取鏡像失敗,手動(dòng)拉取鏡像成功

    新創(chuàng)建的Deploy在創(chuàng)建Pod時(shí)成功,但Pod報(bào)錯(cuò),提示拉取鏡像失敗。 通過(guò)ssh登錄到具體的K8S node上,手動(dòng)執(zhí)行docker pull 命令,卻能成功拉取到對(duì)應(yīng)的鏡像。 根本原因:具體的命名空間缺少imagePullSecrets,不同的命名空間不能直接使用default中的imagePullSecrets。 準(zhǔn)備K8S環(huán)境時(shí),僅在d

    2024年01月18日
    瀏覽(42)
  • K8s拉取Harbor私有倉(cāng)庫(kù)鏡像

    K8s拉取Harbor私有倉(cāng)庫(kù)鏡像

    提示:需要先部署Harbor私有鏡像庫(kù)。 insecure-registries對(duì)應(yīng)可信任的鏡像服務(wù)地址,如果有多個(gè)地址,還可以用“,”隔開(kāi),配置多個(gè)。 提示:每個(gè)k8s節(jié)點(diǎn)都需要配置,完成之后需要重啟docker服務(wù)。 選擇需要的命名空間,創(chuàng)建密文。 如果沒(méi)有密文,后面的配置,都會(huì)明文數(shù)據(jù)

    2024年02月16日
    瀏覽(25)
  • 五、Kubernetes(K8S):Kubectl常用命令詳解

    五、Kubernetes(K8S):Kubectl常用命令詳解

    注意:后續(xù)技術(shù)分享,第一時(shí)間更新,以及更多更及時(shí)的技術(shù)資訊和學(xué)習(xí)技術(shù)資料 ,將在公眾號(hào) CTO Plus 發(fā)布,請(qǐng)關(guān)注公眾號(hào): CTO Plus ? Kubectl 是Kubernetes命令行工具,用于管理Kubernetes集群資源和應(yīng)用程序的部署、升級(jí)和擴(kuò)展等。其作用包括但不限于: 1. 創(chuàng)建、更新和刪除應(yīng)

    2024年02月04日
    瀏覽(28)
  • K8s(四)Pod資源——pod生命周期、重啟策略、容器鉤子與容器探測(cè)

    目錄 Pod生命周期 Pod重啟策略 初始化容器 容器鉤子 容器探測(cè) 啟動(dòng)探測(cè) 存活探測(cè) 就緒探測(cè) 參考資料 Pod 的生命周期 | Kubernetes Init 容器 | Kubernetes Pod的生命周期可以分為以下幾個(gè)階段: Pending(等待):在這個(gè)階段,Pod被創(chuàng)建,并且正在等待被調(diào)度到一個(gè)節(jié)點(diǎn)上運(yùn)行。此時(shí),

    2024年01月20日
    瀏覽(43)
  • 初學(xué)K8s錯(cuò)誤:本地鏡像拉取失?。? decoding=

    初學(xué)K8s錯(cuò)誤:本地鏡像拉取失??!

    報(bào)錯(cuò):Container image \\\"wangyanglinux/myapp:v1\\\" is not present with pull policy of Never 這個(gè)地方我報(bào)錯(cuò),原因很簡(jiǎn)單,一個(gè)是對(duì)原理的理解還有欠缺,一方面是自己眼瞎看不見(jiàn),日志里其實(shí)寫(xiě)得很清楚了,我們來(lái)看一下是什么原因: ?我們這里的報(bào)錯(cuò)是說(shuō)沒(méi)有在本地找到此鏡像,為什么呢?看

    2024年02月10日
    瀏覽(20)
  • 在K8S中,鏡像拉取策略有哪些?

    在Kubernetes(簡(jiǎn)稱(chēng)K8s)中,鏡像更新策略主要由 imagePullPolicy 參數(shù)控制。當(dāng)Pod中的容器鏡像需要更新時(shí),Kubernetes會(huì)根據(jù)這個(gè)策略決定如何處理鏡像拉取行為。 Always : 如果容器的 imagePullPolicy 設(shè)置為 Always ,每次創(chuàng)建Pod或者重啟容器時(shí),kubelet都會(huì)嘗試從鏡像倉(cāng)庫(kù)拉取最新的鏡像

    2024年02月19日
    瀏覽(19)
  • k8s查看所有在運(yùn)行pod內(nèi)的鏡像版本

    本地跑的算法鏡像有時(shí)候與線(xiàn)上跑的環(huán)境不一致,這時(shí)候又需要同步,每一個(gè)都去查找又很麻煩 這時(shí)候查看兩邊的鏡像,選取其中不同的地方edit一下,就方便多了 名稱(chēng)空間更改為自己的名稱(chēng)空間 查詢(xún)鏡像并去重,有名稱(chēng)空間的? 記得把名稱(chēng)空間加上 ?同時(shí)顯示pod名稱(chēng)和鏡像

    2024年02月12日
    瀏覽(28)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包