久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔

Kubernetes crictl調(diào)試

2023-12-29 170

crictl 是 CRI 兼容的容器運(yùn)行時(shí)命令行接口,用于管理和調(diào)試 Kubernetes 節(jié)點(diǎn)上的容器運(yùn)行時(shí)和應(yīng)用程序。crictl 的源代碼托管在 cri-tools 代碼庫(kù)中,管理員可以在該代碼庫(kù)中獲取最新版本的 crictl 工具,并根據(jù)需要進(jìn)行自定義和編譯。

一、準(zhǔn)備

由于 crictl 是基于 CRI 標(biāo)準(zhǔn)開(kāi)發(fā)的工具,因此它需要在安裝有符合 CRI 標(biāo)準(zhǔn)的容器運(yùn)行時(shí)的 Linux 操作系統(tǒng)上運(yùn)行。

二、安裝crictl

可以從 cri-tools 發(fā)布頁(yè)面 下載一個(gè)壓縮的 crictl 歸檔文件,用于幾種不同的架構(gòu)。 下載與 kubernetes 版本相對(duì)應(yīng)的版本。 提取它并將其移動(dòng)到系統(tǒng)路徑上的某個(gè)位置,例如 /usr/local/bin/。

三、crictl用法

crictl 命令有幾個(gè)子命令和運(yùn)行時(shí)參數(shù)。 有關(guān)詳細(xì)信息,請(qǐng)使用 crictl help 或 crictl <subcommand> help 獲取幫助信息。

可以用以下方法之一來(lái)為 crictl 設(shè)置端點(diǎn):

  • 設(shè)置參數(shù) –runtime-endpoint 和 –image-endpoint;
  • 設(shè)置環(huán)境變量 CONTAINER_RUNTIME_ENDPOINT 和 IMAGE_SERVICE_ENDPOINT;
  • 在配置文件 –config=/etc/crictl.yaml 中設(shè)置端點(diǎn)。 要設(shè)置不同的文件,可以在運(yùn)行 crictl 時(shí)使用 –config=PATH_TO_FILE 標(biāo)志。

注意:如果不設(shè)置端點(diǎn),crictl 將嘗試連接到已知端點(diǎn)的列表,這可能會(huì)影響性能。

還可以在連接到服務(wù)器并啟用或禁用調(diào)試時(shí)指定超時(shí)值,方法是在配置文件中指定 timeout 或 debug 值,或者使用 –timeout 和 –debug 命令行參數(shù)。

如果要查看或編輯當(dāng)前配置,請(qǐng)查看或編輯 /etc/crictl.yaml 的內(nèi)容。 例如,使用 containerd 容器運(yùn)行時(shí)的配置會(huì)類似于這樣:

runtime-endpoint: unix:///var/run/containerd/containerd.sock
image-endpoint: unix:///var/run/containerd/containerd.sock
timeout: 10
debug: true

四、crictl命令示例

如果使用 crictl 在正在運(yùn)行的 Kubernetes 集群上創(chuàng)建 Pod 沙盒或容器, kubelet 最終將刪除它們。 crictl 不是一個(gè)通用的工作流工具,而是一個(gè)對(duì)調(diào)試有用的工具。

1、打印 Pod 清單

打印所有 Pod 的清單:

crictl pods

輸出類似于:

POD ID??????????????CREATED??????????????STATE???????????????NAME?????????????????????????NAMESPACE???????????ATTEMPT
926f1b5a1d33a???????About?a?minute?ago???Ready???????????????sh-84d7dcf559-4r2gq??????????default?????????????0
4dccb216c4adb???????About?a?minute?ago???Ready???????????????nginx-65899c769f-wv2gp???????default?????????????0
a86316e96fa89???????17?hours?ago?????????Ready???????????????kube-proxy-gblk4?????????????kube-system?????????0
919630b8f81f1???????17?hours?ago?????????Ready???????????????nvidia-device-plugin-zgbbv???kube-system?????????0

根據(jù)名稱打印 Pod 清單:

crictl pods --name nginx-65899c769f-wv2gp

輸出類似于這樣:

POD ID??????????????CREATED?????????????STATE???????????????NAME?????????????????????NAMESPACE???????????ATTEMPT
4dccb216c4adb???????2?minutes?ago???????Ready???????????????nginx-65899c769f-wv2gp???default?????????????0

根據(jù)標(biāo)簽打印 Pod 清單:

crictl pods --label run=nginx

輸出類似于這樣:

POD ID??????????????CREATED?????????????STATE???????????????NAME?????????????????????NAMESPACE???????????ATTEMPT
4dccb216c4adb???????2?minutes?ago???????Ready???????????????nginx-65899c769f-wv2gp???default?????????????0

2、打印鏡像清單

打印所有鏡像清單:

crictl images

輸出類似于這樣:

IMAGE?????????????????????????????????????TAG?????????????????IMAGE ID????????????SIZE
busybox???????????????????????????????????latest??????????????8c811b4aec35f???????1.15MB
k8s-gcrio.azureedge.net/hyperkube-amd64???v1.10.3?????????????e179bbfe5d238???????665MB
k8s-gcrio.azureedge.net/pause-amd64???????3.1?????????????????da86e6ba6ca19???????742kB
nginx?????????????????????????????????????latest??????????????cd5239a0906a6???????109MB

根據(jù)倉(cāng)庫(kù)打印鏡像清單:

crictl images nginx

輸出類似于這樣:

IMAGE???????????????TAG?????????????????IMAGE ID????????????SIZE
nginx???????????????latest??????????????cd5239a0906a6???????109MB

只打印鏡像 ID:

crictl images -q

輸出類似于這樣:

sha256:8c811b4aec35f259572d0f79207bc0678df4c736eeec50bc9fec37ed936a472a
sha256:e179bbfe5d238de6069f3b03fccbecc3fb4f2019af741bfff1233c4d7b2970c5
sha256:da86e6ba6ca197bf6bc5e9d900febd906b133eaa4750e6bed647b0fbe50ed43e
sha256:cd5239a0906a6ccf0562354852fae04bc5b52d72a2aff9a871ddb6bd57553569

3、打印容器清單

打印所有容器清單:

crictl ps -a

輸出類似于這樣:

CONTAINER ID????????IMAGE?????????????????????????????????????????????????????????????????????????????????????????????????????????????CREATED?????????????STATE???????????????NAME???????????????????????ATTEMPT
1f73f2d81bf98???????busybox@sha256:141c253bc4c3fd0a201d32dc1f493bcf3fff003b6df416dea4f41046e0f37d47???????????????????????????????????7?minutes?ago???????Running?????????????sh?????????????????????????1
9c5951df22c78???????busybox@sha256:141c253bc4c3fd0a201d32dc1f493bcf3fff003b6df416dea4f41046e0f37d47???????????????????????????????????8?minutes?ago???????Exited??????????????sh?????????????????????????0
87d3992f84f74???????nginx@sha256:d0a8828cccb73397acb0073bf34f4d7d8aa315263f1e7806bf8c55d8ac139d5f?????????????????????????????????????8?minutes?ago???????Running?????????????nginx??????????????????????0
1941fb4da154f???????k8s-gcrio.azureedge.net/hyperkube-amd64@sha256:00d814b1f7763f4ab5be80c58e98140dfc69df107f253d7fdd714b30a714260a???18?hours?ago????????Running?????????????kube-proxy?????????????????0

打印正在運(yùn)行的容器清單:

crictl ps

輸出類似于這樣:

CONTAINER ID????????IMAGE?????????????????????????????????????????????????????????????????????????????????????????????????????????????CREATED?????????????STATE???????????????NAME???????????????????????ATTEMPT
1f73f2d81bf98???????busybox@sha256:141c253bc4c3fd0a201d32dc1f493bcf3fff003b6df416dea4f41046e0f37d47???????????????????????????????????6?minutes?ago???????Running?????????????sh?????????????????????????1
87d3992f84f74???????nginx@sha256:d0a8828cccb73397acb0073bf34f4d7d8aa315263f1e7806bf8c55d8ac139d5f?????????????????????????????????????7?minutes?ago???????Running?????????????nginx??????????????????????0
1941fb4da154f???????k8s-gcrio.azureedge.net/hyperkube-amd64@sha256:00d814b1f7763f4ab5be80c58e98140dfc69df107f253d7fdd714b30a714260a???17?hours?ago????????Running?????????????kube-proxy?????????????????0

4、在正在運(yùn)行的容器上執(zhí)行命令

crictl exec -i -t 1f73f2d81bf98 ls

輸出類似于這樣:

bin???dev???etc???home??proc??root??sys???tmp???usr???var

5、獲取容器日志

獲取容器的所有日志:

crictl logs 87d3992f84f74

輸出類似于這樣:

10.240.0.96 - - [06/Jun/2018:02:45:49 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.47.0" "-"
10.240.0.96 - - [06/Jun/2018:02:45:50 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.47.0" "-"
10.240.0.96 - - [06/Jun/2018:02:45:51 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.47.0" "-"

獲取最近的 N 行日志:

crictl logs --tail=1 87d3992f84f74

輸出類似于這樣:

10.240.0.96 - - [06/Jun/2018:02:45:51 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.47.0" "-"

6、運(yùn)行 Pod 沙盒

用 crictl 運(yùn)行 Pod 沙盒對(duì)容器運(yùn)行時(shí)排錯(cuò)很有幫助。 在運(yùn)行的 Kubernetes 集群中,沙盒會(huì)隨機(jī)地被 kubelet 停止和刪除。

編寫(xiě)下面的 JSON 文件:

{
"metadata": {
"name": "nginx-sandbox",
"namespace": "default",
"attempt": 1,
"uid": "hdishd83djaidwnduwk28bcsb"
},
"log_directory": "/tmp",
"linux": {
}
}

使用 crictl runp 命令應(yīng)用 JSON 文件并運(yùn)行沙盒。

crictl runp pod-config.json

返回了沙盒的 ID。

7、創(chuàng)建容器

用 crictl 創(chuàng)建容器對(duì)容器運(yùn)行時(shí)排錯(cuò)很有幫助。 在運(yùn)行的 Kubernetes 集群中,沙盒會(huì)隨機(jī)地被 kubelet 停止和刪除。

拉取 busybox 鏡像:

crictl pull busybox
Image is up to date for busybox@sha256:141c253bc4c3fd0a201d32dc1f493bcf3fff003b6df416dea4f41046e0f37d47

創(chuàng)建 Pod 和容器的配置:

Pod 配置:

{
"metadata": {
"name": "busybox-sandbox",
"namespace": "default",
"attempt": 1,
"uid": "aewi4aeThua7ooShohbo1phoj"
},
"log_directory": "/tmp",
"linux": {
}
}

容器配置:

{
"metadata": {
"name": "busybox"
},
"image":{
"image": "busybox"
},
"command": [
"top"
],
"log_path":"busybox.log",
"linux": {
}
}

創(chuàng)建容器,傳遞先前創(chuàng)建的 Pod 的 ID、容器配置文件和 Pod 配置文件。返回容器的 ID。

crictl create f84dd361f8dc51518ed291fbadd6db537b0496536c1d2d6c05ff943ce8c9a54f container-config.json pod-config.json

查詢所有容器并確認(rèn)新創(chuàng)建的容器狀態(tài)為 Created。

crictl ps -a

輸出類似于這樣:

CONTAINER ID????????IMAGE???????????????CREATED?????????????STATE???????????????NAME????????????????ATTEMPT
3e025dd50a72d???????busybox?????????????32?seconds?ago??????Created?????????????busybox?????????????0

8、啟動(dòng)容器

要啟動(dòng)容器,要將容器 ID 傳給 crictl start:

crictl start 3e025dd50a72d956c4f14881fbb5b1080c9275674e95fb67f965f6478a957d60

輸出類似于這樣:

3e025dd50a72d956c4f14881fbb5b1080c9275674e95fb67f965f6478a957d60

確認(rèn)容器的狀態(tài)為 Running。

crictl ps

輸出類似于這樣:

CONTAINER ID???IMAGE????CREATED??????????????STATE????NAME?????ATTEMPT
3e025dd50a72d??busybox??About?a?minute?ago???Running??busybox??0
  • 廣告合作

  • QQ群號(hào):4114653

溫馨提示:
1、本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享網(wǎng)絡(luò)內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。郵箱:2942802716#qq.com(#改為@)。 2、本站原創(chuàng)內(nèi)容未經(jīng)允許不得轉(zhuǎn)裁,轉(zhuǎn)載請(qǐng)注明出處“站長(zhǎng)百科”和原文地址。