1 回答

TA貢獻1807條經驗 獲得超9個贊
首先,正如您正確發現的那樣,不可能以毫秒級的精度從 kubernetes 組件本身獲得精確的時間戳。這個github問題現在已經關閉了。
但是,仍然可以找到有關容器和其他事件的一些確切時間。下面是一個與容器相關的示例。
選項 1 - 默認情況下,kubelet 會將大量日志寫入系統日志??梢允褂?using 查看它們(注意!此方法適用于系統。對于其他系統,請參閱官方 kubenetes 文檔)。命令示例:journalctl
systemd
journalctl -u kubelet -o short-precise
-u - 按單位過濾
-o - 輸出選項
我們正在尋找的輸出行將是:
May 18 21:00:30.221950 control-plane kubelet[8576]: I0518 21:00:30.221566 8576 scope.go:111] "RemoveContainer" containerID="d7d0403807684ddd4d2597d32b90b1e27d31f082d22cededde26f6da8281cd92"
選項 2 - 從容器化引擎獲取此信息。在下面的示例中,我使用了 Docker 來實現這一點。我運行以下命令:
docker inspect container_id/container_name
輸出將如下所示:
{
"Id": "d7d0403807684ddd4d2597d32b90b1e27d31f082d22cededde26f6da8281cd92",
"Created": "2021-05-18T21:00:07.388569335Z",
"Path": "/docker-entrypoint.sh",
"Args": [
"nginx",
"-g",
"daemon off;"
],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 8478,
"ExitCode": 0,
"Error": "",
"StartedAt": "2021-05-18T21:00:07.593216613Z",
"FinishedAt": "0001-01-01T00:00:00Z"
}
- 1 回答
- 0 關注
- 161 瀏覽
添加回答
舉報