IBM Cloud Docs
部署代理程式一個不屬於 IBM Cloud 的 Kubernetes 或 OpenShift 叢集

部署代理程式一個不屬於 IBM Cloud 的 Kubernetes 或 OpenShift 叢集

除了能夠在 IBM Cloud®中執行之外,IBM Cloud Monitoring 提供的集中式監視也可以在其他雲端及內部部署中執行,方法是使用 Helm 圖表將監視代理程式安裝至 Kubernetes 或 OpenShift 叢集。

開始之前

部署代理程式

請完成下列步驟,以使用 Helm來部署代理程式:

步驟 1. 設定 Sysdig Helm 儲存庫

將 IBM Cloud Monitoring Helm 儲存庫新增至 Helm 實例。

請完成下列步驟:

  1. 設定叢集環境定義。

    ibmcloud ks cluster config --cluster <CLUSTER_NAME>
    
  2. 新增 Helm 儲存庫。

    helm repo add sysdig https://charts.sysdig.com
    

    如果出現以下錯誤:

    helm repo add sysdig https://charts.sysdig.com    --debug
    Error: context deadline exceeded
    helm.go:84: [debug] context deadline exceeded
    

    執行下列指令,然後重試新增 Helm 儲存庫。

    rm $HOME/Library/Preferences/helm/repositories.lock
    
  3. 更新儲存庫,以擷取所有 Helm Chart 的最新版本。

    helm repo update
    
  4. 列出 sysdig repo 目前可用的 Helm 圖表。

    helm search repo sysdig
    
  5. 驗證已列出 Helm Chart sysdig/sysdig-deploy

步驟 2. 建立值 yaml 檔案

定義 yaml 檔案,並包含值以部署您計劃部署的 IBM Cloud Monitoring 代理程式。 例如,將檔案命名為 agent-values-monitor.yaml

下列 yaml 是您可以用來配置 IBM Cloud Monitoring 代理程式的範本。

global:
  clusterConfig:
    name: CLUSTER_NAME
  sysdig:
    accessKey: SERVICE_ACCESS_KEY
agent:
  collectorSettings:
    collectorHost: INGESTION_ENDPOINT
nodeAnalyzer:
  enabled: false

其中

  • CLUSTER_NAME 是您要在其中部署代理程式的叢集名稱。
  • SERVICE_ACCESS_KEY 是 IBM Cloud Monitoring 實例存取金鑰。
  • INGESTION_ENDPOINT 是實例的汲取端點。 例如: ingest.us-east.monitoring.cloud.ibm.com

您可以在 這裡 找到所有可用選項,以配置 IBM Cloud Monitoring 代理程式。

步驟 3. 安裝 Helm 圖表

若要部署代理程式,您必須安裝 sysdig/sysdig-deploy Chart。 您可以使用變數 yaml 檔案 (如您在前一個步驟中配置的檔案) 來安裝圖表,也可以直接配置變數。

執行下列指令,以使用 Helm 圖表及變數 yaml 檔案來安裝代理程式:

helm install -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor.yaml

如果您不是使用 Helm 值檔案,則可以執行下列指令,透過使用 Helm 圖表並設定變數來安裝代理程式:

helm install sysdig-agent sysdig/sysdig-deploy --namespace ibm-observe --create-namespace\
    --set global.sysdig.accessKey=<SERVICE_ACCESS_KEY> \
    --set agent.collectorSettings.collectorHost=<INGESTION_ENDPOINT> \
    --set nodeAnalyzer.enabled=false \
    --set global.clusterConfig.name=<CLUSTER_NAME>

其中

  • CLUSTER_NAME 是您要在其中部署代理程式的叢集名稱。
  • SERVICE_ACCESS_KEY 是 IBM Cloud Monitoring 實例存取金鑰。
  • INGESTION_ENDPOINT 是實例的汲取端點。

例如,對於 us-east 地區,範例 Helm 安裝類似如下:

helm install sysdig-agent sysdig/sysdig-deploy --namespace ibm-observe \
    --set global.sysdig.accessKey=<ENTER_YOUR_ACCESS_KEY> \
    --set agent.collectorSettings.collectorHost=ingest.us-east.monitoring.cloud.ibm.com \
    --set nodeAnalyzer.enabled=false \
    --set global.clusterConfig.name=mycluster

如果您遇到下列錯誤: Error: INSTALLATION FAILED: Kubernetes cluster unreachable: xxxxxx failed to refresh token: oauth2: cannot fetch token: 400 Bad Request,請設定叢集環境定義,然後再試一次。

更新代理程式

若要使用 Helm來更新代理程式版本,請完成下列步驟:

  1. 更新圖表。

    helm repo update
    
  2. 升級代理程式。

    helm upgrade -n ibm-observe sysdig-agent sysdig/sysdig-deploy -f agent-values-monitor.yaml
    

這些步驟會在叢集裡安裝最新可用的版本。

移除代理程式

若要使用 Helm來刪除代理程式,您必須解除安裝該 Chart。

請完成下列步驟:

  1. 列出已安裝的圖表。

    helm list -n ibm-observe
    

    命令的輸出列出圖表如下:

    NAME        	NAMESPACE  	REVISION	UPDATED                             	STATUS  	CHART              	APP VERSION
    sysdig-agent	ibm-observe	1       	2023-03-24 15:02:58.408108 +0100 CET	deployed	sysdig-deploy-1.6.3
    
  2. 解除安裝圖表。

    helm delete sysdig-agent  -n ibm-observe
    

    就 Helm而言,sysdig-agent 是版次的名稱。

    如果您忘記在指令中包含名稱空間,則會收到下列錯誤: Error: uninstall: Release not loaded: sysdig-agent: release: not found