Containerd@仮想化¶
はじめに¶
本サイトにつきまして、以下をご認識のほど宜しくお願いいたします。
01. Containerdの仕組み¶
02. 設定ファイル¶
Containerdはデーモンとして稼働させる必要があるため、ユニットファイルで実行を定義する。
[Unit]
Description=containerd container runtime
Documentation=https://containerd.io
After=network.target local-fs.target
[Service]
ExecStartPre=-/sbin/modprobe overlay
ExecStart=/usr/local/bin/containerd
Type=notify
Delegate=yes
KillMode=process
Restart=always
RestartSec=5
LimitNPROC=infinity
LimitCORE=infinity
LimitNOFILE=infinity
TasksMax=infinity
OOMScoreAdjust=-999
[Install]
WantedBy=multi-user.target
03. コマンド¶
04. ログ¶
形式¶
Containerdは、テキスト形式ログを作成する。
ログメッセージの箇所が文字列またはJSONの場合がある。
ログメッセージの構造¶
▼ 文字列¶
ログメッセージの箇所が文字列の場合は、以下の通りである。
2021-12-17T08:03:23.918838346+09:00 stderr F 2021/12/17 08:03:23 [INFO] start worker processes
▼ JSON¶
ログメッセージがjson
形式の場合は、以下の通りである。
# わかりやすいように改行している。
2023-03-16T19:48:25.824524924+09:00 stderr F {
"addr": "*.*.*.*:9000",
"caller": "cluster.go:461",
"component": "cluster",
"err": "This is ERROR",
"level": "error",
"msg": "refresh",
"result": "failure",
"ts": "2023-03-16T10:48:25.824Z"
}
Dockerのログとの比較¶
Dockerは、json
形式をログを作成する。
{
"log":"2021/12/17 08:03:23 [INFO] start worker processes",
"stream":"stdout",
"time":"2021-12-16T23:32:06.226055453Z"
}