使用 Docker 代理程式

在 IBM Cloud中佈建 IBM Cloud Monitoring 服務的實例之後,您可以將 Monitoring 代理程式部署為受支援主機中的兩個 Docker 容器,以自動收集資料和度量值。 您可以配置要在每一個環境中監視的度量值。

您可以將一個或多個標記與每個監控代理相關聯。 標籤是以逗點區隔的值,其格式為 TAG_NAME:TAG_VALUE。 監視環境時,您可以使用這些標籤來識別代理程式中可用的度量值。 例如,您可以包括服務名稱及位置的相關資訊,以及此代理程式所收集的所有度量值。

將監視代理程式部署為兩個 Docker 儲存器

當您直接在 Linux 主機上配置監視代理程式作為標準 Docker 儲存器時,您可能需要安裝外部 Linux 標頭,才能正確地啟動監視代理程式。

例如,可能需要執行下列指令來安裝外部 Linux 標頭:

apt-get -y install linux-headers-$(uname -r)

請注意,當您使用的 MacOS 上,容器針對 * 指令傳回 *...-linuxkituname -r 時,它很有可能不相容。

完成以下步驟,在兩個 Docker 容器上設定監控代理,以收集度量指標並將其轉送至 IBM Cloud Monitoring 服務的一個實例:

  1. 取得存取金鑰。 如需相關資訊,請參閱透過 IBM Cloud 使用者介面取得存取金鑰

  2. 取得公用或專用汲取 URL。 如需相關資訊,請參閱 收集器端點

  3. 部署監視代理程式。 執行下列指令:

    docker run -it --privileged --rm --name sysdig-agent-kmodule \
    -v /usr:/host/usr:ro \
    -v /boot:/host/boot:ro \
    -v /lib/modules:/host/lib/modules \
    quay.io/sysdig/agent-kmodule
    
  4. 執行監視代理程式:

    docker run -d --name sysdig-agent \
    --restart always \
    --privileged \
    --net host \
    --pid host \
    -e ACCESS_KEY=[MONITORING_ACCESS_KEY] \
    -e COLLECTOR=[COLLECTOR_ENDPOINT] \
    [-e TAGS=[TAG_DATA]]
    -v /var/run/docker.sock:/host/var/run/docker.sock \
    -v /dev:/host/dev \
    -v /proc:/host/proc:ro \
    -v /boot:/host/boot:ro \
    --shm-size=512m \
    quay.io/sysdig/agent-slim
    

    其中

    • MONITORING_ACCESS_KEY 是實體的擷取金鑰。

    • COLLECTOR_ENDPOINT 是可以使用監視實例之地區的公用或專用汲取 URL。 若要取得端點,請參閱收集器端點

    • TAG_DATA 是以逗點區隔的標籤,其格式為 TAG_NAME:TAG_VALUE。 您可以將一個或多個標記與您的監控代理相關聯。 例如 role:serviceX,location:us-south

容器以分離模式執行。 若要查看容器的輸出,請移除 -d

使用 CLI 檢查代理程式的版本

若要檢查代理程式的版本,請執行下列指令:

docker exec sysdig-agent /opt/draios/bin/dragent --version

使用 CLI 檢查代理程式的狀態

若要檢查代理的狀態,請執行下列指令:

docker ps | grep sysdig-agent

您可以執行 docker ps -a,以查看正在執行的所有容器。

即會顯示執行中儲存器的清單。 檢查是否列出名稱為 sysdig-agent 的容器。

尋找代理程式日誌

若要查看代理程式日誌,您可以執行下列指令:

docker logs sysdig-agent

檢視代理程式的日誌

若要尋找錯誤,您可以執行下列指令來檢視日誌:

docker logs sysdig-agent 2>&1 | grep "error"

更新 Docker 代理程式

完成下列步驟,以移除在 Linux 系統中部署為儲存器的監視代理程式:

  1. 停止監控代理容器。 執行下列指令:

    docker stop sysdig-agent
    
  2. 移除監視代理程式儲存器。 執行下列指令:

    docker rm sysdig-agent
    
  3. 取得最新版本的監控代理程式。 執行下列指令:

    docker pull sysdig/agent
    
  4. 安裝代理程式。 進一步瞭解

移除監視代理程式儲存器

請完成下列步驟,以移除已部署的監視代理程式:

  1. 停止監控代理容器。

    執行下列指令:

    docker stop sysdig-agent
    
  2. 移除監視代理程式儲存器的參照。

    docker rm sysdig-agent