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

【云原生】容器鏡像

這篇具有很好參考價值的文章主要介紹了【云原生】容器鏡像。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

+v ljx97609760
一起溝通學(xué)習(xí)

容器鏡像

容器鏡像(Image)所承載的是封裝了應(yīng)用程序及其所有軟件依賴的二進(jìn)制數(shù)據(jù)。 容器鏡像是可執(zhí)行的軟件包,可以單獨運行
你通常會創(chuàng)建應(yīng)用的容器鏡像并將其推送到某倉庫(Registry),然后在 Pod 中引用它

鏡像名稱

如果你不指定倉庫的主機名,Kubernetes 認(rèn)為你在使用 Docker 公共倉庫

在鏡像名稱之后,你可以添加一個標(biāo)簽(Tag)(與使用 docker 或 podman 等命令時的方式相同)使用標(biāo)簽?zāi)茏屇惚孀R同一鏡像序列中的不同版本

鏡像標(biāo)簽可以包含小寫字母、大寫字母、數(shù)字、下劃線()、句點(.)和連字符(-)。 關(guān)于在鏡像標(biāo)簽中何處可以使用分隔字符(、- 和 .)還有一些額外的規(guī)則。 如果你不指定標(biāo)簽,Kubernetes 認(rèn)為你想使用標(biāo)簽 latest

更新鏡像

當(dāng)你最初創(chuàng)建一個 Deployment、 StatefulSet、Pod 或者其他包含 Pod 模板的對象時,如果沒有顯式設(shè)定的話, Pod 中所有容器的默認(rèn)鏡像拉取策略是 IfNotPresent。這一策略會使得 kubelet 在鏡像已經(jīng)存在的情況下直接略過拉取鏡像的操作

鏡像拉取策略

容器的 imagePullPolicy 和鏡像的標(biāo)簽會影響 kubelet 嘗試?yán)。ㄏ螺d)指定的鏡像
以下列表包含了 imagePullPolicy 可以設(shè)置的值,以及這些值的效果:

IfNotPresent

只有當(dāng)鏡像在本地不存在時才會拉取

Always

每當(dāng) kubelet 啟動一個容器時,kubelet 會查詢?nèi)萜鞯溺R像倉庫, 將名稱解析為一個鏡像摘要。 如果 kubelet 有一個容器鏡像,并且對應(yīng)的摘要已在本地緩存,kubelet 就會使用其緩存的鏡像; 否則,kubelet 就會使用解析后的摘要拉取鏡像,并使用該鏡像來啟動容器

Never

Kubelet 不會嘗試獲取鏡像。如果鏡像已經(jīng)以某種方式存在本地, kubelet 會嘗試啟動容器;否則,會啟動失敗

默認(rèn)鏡像拉取策略

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

  • 如果你省略了 imagePullPolicy 字段,并且你為容器鏡像指定了摘要, 那么 imagePullPolicy 會自動設(shè)置為 IfNotPresent
  • 如果你省略了 imagePullPolicy 字段,并且容器鏡像的標(biāo)簽是 :latest, imagePullPolicy 會自動設(shè)置為 Always
  • 如果你省略了 imagePullPolicy 字段,并且沒有指定容器鏡像的標(biāo)簽, imagePullPolicy 會自動設(shè)置為 Always
  • 如果你省略了 imagePullPolicy 字段,并且為容器鏡像指定了非 :latest 的標(biāo)簽, imagePullPolicy 就會自動設(shè)置為 IfNotPresent

必要的鏡像拉取

如果你想總是強制執(zhí)行拉取,你可以使用下述的一中方式:

  • 設(shè)置容器的 imagePullPolicy 為 Always
  • 省略 imagePullPolicy,并使用 :latest 作為鏡像標(biāo)簽; 當(dāng)你提交 Pod 時,Kubernetes 會將策略設(shè)置為 Always
  • 省略 imagePullPolicy 和鏡像的標(biāo)簽; 當(dāng)你提交 Pod 時,Kubernetes 會將策略設(shè)置為 Always。
  • 啟用準(zhǔn)入控制器 AlwaysPullImages

ImagePullBackOff

當(dāng) kubelet 使用容器運行時創(chuàng)建 Pod 時,容器可能因為 ImagePullBackOff 導(dǎo)致狀態(tài)為 Waiting

ImagePullBackOff 狀態(tài)意味著容器無法啟動, 因為 Kubernetes 無法拉取容器鏡像(原因包括無效的鏡像名稱,或從私有倉庫拉取而沒有 imagePullSecret)。 BackOff 部分表示 Kubernetes 將繼續(xù)嘗試?yán)$R像,并增加回退延遲

Kubernetes 會增加每次嘗試之間的延遲,直到達(dá)到編譯限制,即 300 秒(5 分鐘)

串行和并行鏡像拉取

默認(rèn)情況下,kubelet 以串行方式拉取鏡像。 也就是說,kubelet 一次只向鏡像服務(wù)發(fā)送一個鏡像拉取請求, 其他鏡像拉取請求必須等待,直到正在處理的那個請求完成

節(jié)點獨立地做出鏡像拉取的決策。即使你使用串行的鏡像拉取,兩個不同的節(jié)點也可以并行拉取相同的鏡像

如果你想啟用并行鏡像拉取,可以在 kubelet 配置 中將字段 serializeImagePulls 設(shè)置為 false

當(dāng)serializeImagePulls 設(shè)置為 false 時,kubelet 會立即向鏡像服務(wù)發(fā)送鏡像拉取請求,多個鏡像將同時被拉動

啟用并行鏡像拉取時,請確保你的容器運行時的鏡像服務(wù)可以處理并行鏡像拉取

kubelet 從不代表一個 Pod 并行地拉取多個鏡像

例如,如果你有一個 Pod,它有一個初始容器和一個應(yīng)用容器,那么這兩個容器的鏡像拉取將不會并行。 但是,如果你有兩個使用不同鏡像的 Pod,當(dāng)啟用并行鏡像拉取時,kubelet 會代表兩個不同的 Pod 并行拉取鏡像

最大并行鏡像拉取數(shù)量

特性狀態(tài): Kubernetes v1.27 [alpha]
當(dāng) serializeImagePulls 被設(shè)置為 false 時,kubelet 默認(rèn)對同時拉取的最大鏡像數(shù)量沒有限制, 如果你想限制并行鏡像拉取的數(shù)量,可以在 kubelet 配置中設(shè)置字段 maxParallelImagePulls, 當(dāng) maxParallelImagePulls 設(shè)置為 n 時,只能同時拉取 n 個鏡像, 超過 n 的任何鏡像都必須等到至少一個正在進(jìn)行拉取的鏡像拉取完成后,才能拉取

當(dāng)啟用并行鏡像拉取時,限制并行鏡像拉取的數(shù)量可以防止鏡像拉取消耗過多的網(wǎng)絡(luò)帶寬或磁盤 I/O

你可以將 maxParallelImagePulls 設(shè)置為大于或等于 1 的正數(shù)。 如果將 maxParallelImagePulls 設(shè)置為大于等于 2,則必須將 serializeImagePulls 設(shè)置為 false。 kubelet 在無效的 maxParallelImagePulls 設(shè)置下會啟動失敗

使用私有倉庫

從私有倉庫讀取鏡像時可能需要密鑰。 憑據(jù)可以用以下方式提供:

在 Pod 上指定 ImagePullSecrets

說明:
運行使用私有倉庫中鏡像的容器時,建議使用這種方法

Kubernetes 支持在 Pod 中設(shè)置容器鏡像倉庫的密鑰。 imagePullSecrets 必須全部與 Pod 位于同一個名字空間中。 引用的 Secret 必須是 kubernetes.io/dockercfg 或 kubernetes.io/dockerconfigjson 類型

使用 Docker Config 創(chuàng)建 Secret

你需要知道用于向倉庫進(jìn)行身份驗證的用戶名、密碼和客戶端電子郵件地址,以及它的主機名。 運行以下命令,注意替換適當(dāng)?shù)拇髮懼?/p>

kubectl create secret docker-registry <name> \
  --docker-server=DOCKER_REGISTRY_SERVER \
  --docker-username=DOCKER_USER \
  --docker-password=DOCKER_PASSWORD \
  --docker-email=DOCKER_EMAIL

在 Pod 中引用 ImagePullSecrets

在創(chuàng)建 Pod 時,可以在 Pod 定義中增加 imagePullSecrets 部分來引用該 Secret。 imagePullSecrets 數(shù)組中的每一項只能引用同一名字空間中的 Secret
例如:

cat <<EOF > pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: foo
  namespace: awesomeapps
spec:
  containers:
    - name: foo
      image: janedoe/awesomeapp:v1
  imagePullSecrets:
    - name: myregistrykey
EOF

cat <<EOF >> ./kustomization.yaml
resources:
- pod.yaml
EOF

你需要對使用私有倉庫的每個 Pod 執(zhí)行以上操作文章來源地址http://www.zghlxwxcb.cn/news/detail-570311.html

到了這里,關(guān)于【云原生】容器鏡像的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 云原生之容器編排實踐-在K8S集群中使用Registry2搭建私有鏡像倉庫

    云原生之容器編排實踐-在K8S集群中使用Registry2搭建私有鏡像倉庫

    基于前面搭建的3節(jié)點 Kubernetes 集群,今天我們使用 Registry2 搭建私有鏡像倉庫,這在鏡像安全性以及離線環(huán)境下運維等方面具有重要意義。 Note: 由于是測試環(huán)境,以下創(chuàng)建了一個 local-storage 的 StorageClass ,并使用本地磁盤的方式創(chuàng)建使用 PV ,實際建議使用 NFS 。 共用到了三臺

    2024年02月19日
    瀏覽(22)
  • 云原生開發(fā):從容器到微服務(wù)的全棧指南

    云原生開發(fā):從容器到微服務(wù)的全棧指南

    ??歡迎來到云計算技術(shù)應(yīng)用專欄~云原生開發(fā):從容器到微服務(wù)的全棧指南 ☆* o(≧▽≦)o *☆嗨~我是IT·陳寒?? ?博客主頁:IT·陳寒的博客 ??該系列文章專欄:云計算技術(shù)應(yīng)用 ??其他專欄:Java學(xué)習(xí)路線 Java面試技巧 Java實戰(zhàn)項目 AIGC人工智能 數(shù)據(jù)結(jié)構(gòu)學(xué)習(xí) 云計算技術(shù)應(yīng)用

    2024年02月08日
    瀏覽(25)
  • java集成Docker-java實現(xiàn)遠(yuǎn)程鏡像、容器創(chuàng)建,服務(wù)發(fā)布

    ? ? ? ?目前項目中需要實現(xiàn)水利機理模型的容器化部署,使用docker實現(xiàn)模型容器化部署操作,互相隔離,就是一個不錯的方案。 實現(xiàn)docker遠(yuǎn)程連接、遠(yuǎn)程安全連接 構(gòu)建鏡像、加載鏡像、刪除鏡像、拉取鏡像、創(chuàng)建容器、啟動容器、停止容器、刪除容器。 執(zhí)行模型運行命令

    2024年02月04日
    瀏覽(23)
  • 逸學(xué)Docker【java工程師基礎(chǔ)】2.Docker鏡像容器基本操作+安裝MySQL鏡像運行

    逸學(xué)Docker【java工程師基礎(chǔ)】2.Docker鏡像容器基本操作+安裝MySQL鏡像運行

    在這里我們的應(yīng)用程序比如redis需要構(gòu)建成鏡像, 它作為一個Docker文件就可以進(jìn)行 構(gòu)建 ,構(gòu)建完以后他是在 本地的 ,我們可以 推送 到鏡像服務(wù)器,逆向可以 拉取 到上傳的鏡像,或者說我們可以保存為 壓縮包 進(jìn)行 相互傳遞 。 在本地的鏡像可以傳來傳去,本身也可以查看

    2024年02月01日
    瀏覽(50)
  • 云原生環(huán)境下JAVA應(yīng)用容器JVM內(nèi)存如何配置?—— 筑夢之路

    云原生環(huán)境下JAVA應(yīng)用容器JVM內(nèi)存如何配置?—— 筑夢之路

    Docker環(huán)境下的JVM參數(shù)非定值配置 —— 筑夢之路_docker jvm設(shè)置-CSDN博客 之前簡單地記錄過一篇,這里在之前的基礎(chǔ)上更加細(xì)化一下。 使用Java開發(fā)且設(shè)置的JVM堆空間過小時,程序會出現(xiàn)系統(tǒng)內(nèi)存不足OOM(Out of Memory)的問題。事件中心的OOM事件是指系統(tǒng)內(nèi)存不足時,觸發(fā)了Linux的

    2024年02月06日
    瀏覽(23)
  • docker centos容器里,安裝python3環(huán)境,且安裝java8環(huán)境。并打成基礎(chǔ)鏡像

    一、 1、運行命令,即自動下載centos對應(yīng)的鏡像,但此時鏡像是關(guān)閉狀態(tài): docker run centos:7.4 2、docker images 查看上述命令對應(yīng)的 鏡像 3、docker run -it centos:7.4 /bin/bash 之后退出 exit docker ps -a 之后, docker start imageid 啟動對應(yīng)的關(guān)閉狀態(tài)的鏡像 。 4、docker exec -it imageid /bin/bash 進(jìn)入鏡

    2023年04月09日
    瀏覽(31)
  • 【Java】微服務(wù)——Docker容器部署(docker安裝,docker配置鏡像加速,DockerHub,docker基本操作,Dockerfile自定義鏡像.Docker-Compose)

    【Java】微服務(wù)——Docker容器部署(docker安裝,docker配置鏡像加速,DockerHub,docker基本操作,Dockerfile自定義鏡像.Docker-Compose)

    微服務(wù)雖然具備各種各樣的優(yōu)勢,但服務(wù)的拆分通用給部署帶來了很大的麻煩。 分布式系統(tǒng)中,依賴的組件非常多,不同組件之間部署時往往會產(chǎn)生一些沖突。 在數(shù)百上千臺服務(wù)中重復(fù)部署,環(huán)境不一定一致,會遇到各種問題 1.1.1.應(yīng)用部署的環(huán)境問題 大型項目組件較多,運

    2024年02月04日
    瀏覽(33)
  • UniApp項目中 使用微信小程序原生語言 進(jìn)行開發(fā)

    UniApp項目中 使用微信小程序原生語言 進(jìn)行開發(fā)

    wxcomponents 下放的是微信小程序原生代碼寫的組件。我進(jìn)行了封裝 在你下uniApp 項目的根目錄創(chuàng)建一個 wxcomponents 名字千萬不要錯 京東、支付寶燈參考下面圖片 官方文檔也有介紹 然后在你需要引入原生功能的頁面里面引入你的組件(我這里提前已經(jīng)放過來了。在上面圖可看到

    2024年02月04日
    瀏覽(100)
  • 第4天:基礎(chǔ)入門-APP架構(gòu)&小程序&H5+Vue語言&Web封裝&原生開發(fā)&Flutter

    第4天:基礎(chǔ)入門-APP架構(gòu)&小程序&H5+Vue語言&Web封裝&原生開發(fā)&Flutter

    1.原生開發(fā) 安卓一般使用java語言開發(fā),當(dāng)然現(xiàn)在也有kotlin語言進(jìn)行開發(fā)。如何開發(fā)就涉及到具體編程了,這里就不詳說了。簡單描述就是使用安卓提供的一系列控件來實現(xiàn)頁面,復(fù)雜點的頁面可以通過自定義控件來實現(xiàn)。 2.使用H5語言開發(fā) 使用H5開發(fā)的好處有很多,可多端復(fù)

    2024年04月10日
    瀏覽(21)
  • 【go語言開發(fā)】go項目打包成Docker鏡像,包括Dockerfile命令介紹、goctl工具生成

    【go語言開發(fā)】go項目打包成Docker鏡像,包括Dockerfile命令介紹、goctl工具生成

    本文主要介紹如何將go項目打包成鏡像,首先介紹Dockerfile常用命令介紹,然后介紹使用工具goctl用于生成Dockerfile,還可以根據(jù)需求自定義指令內(nèi)容,最后講解如何將go-blog項目打包成鏡像,以及如何運行等 參考文檔: docker日常使用,編寫dockerfile等 dockerfile編寫 開發(fā)完項目之后

    2024年01月20日
    瀏覽(19)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包