日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用日志服務

工作流完成時,一般需要配置工作流和Pod的回收策略清理相應的資源,以避免集群控制面和工作流控制器資源的線性增長。當工作流出現問題或需要進行流程分析時,查看工作流日志是一個必不可少的能力。由于原生的集群在Pod清理后就不能查看Pod或工作流日志,因此,工作流集群集成了阿里云日志服務SLS,收集工作流運行過程中Pod產生的日志,上報到您賬號下的SLS服務中,并且支持通過Argo CLI或Argo UI便捷地查看工作流的日志。

使用說明

注意事項

  • 如果工作流集群開啟oss-artifact-repository,同時設置archiveLogs: true,即工作流集群已配置使用oss-artifact-repository存儲日志,則SLS日志收集不生效。

  • 相比oss-artifact-repository收集,SLS日志收集具有自動的日志生命周期管理(可配置日志保留的天數),強大的查詢能力。如需通過SLS收集日志,可以將archiveLogs: true刪除。

前提條件

若您選擇使用Argo CLI方式開啟日志服務和獲取日志,您需要提前完成以下操作:

  • 下載并安裝v3.4.12或以上版本的阿里云Argo CLI。具體操作,請參見阿里云Argo CLI

  • 若您使用的賬號為RAM用戶,則需要為RAM用戶授予日志服務SLS的只讀權限,系統權限策略為AliyunLogReadOnlyAccess。具體授權操作,請參見創建RAM用戶及授權

開啟日志服務

工作流集群創建后,系統會自動創建一個名為k8s-log-<clusterid>的Project,用來收集工作流集群日志。如果日志服務Project不存在,請自行創建名為k8s-log-<clusterid>的Project。關于創建Project的具體操作,請參見創建Project

您可以通過阿里云 Argo CLI或者通過直接創建日志服務CR兩種方式開啟日志服務。

通過阿里云Argo CLI開啟

阿里云Argo CLI完全兼容開源Argo CLI,增強了日志能力,可以獲取工作流已刪除Pod的日志。

執行以下命令,配置日志服務參數。

argo config sls
Please input log retention days. Default is 7 days.
10

預期輸出:

Start to config SLS for your cluster.
Created AliyunLogConfig CR workflow-sls-config in default namespace.
Created SLS logstore workflow-logstore in SLS project k8s-log-<clusterid>, log retention days is 10 days

預期輸出表明,日志服務配置成功。所有工作流日志將被收集到名為workflow-logstore的日志庫(Logstore)中。

您可以登錄日志服務控制臺,查找名為k8s-log-<clusterid>的Project,然后查看對應的workflow-logstore

通過創建日志服務CR開啟

執行以下命令,創建阿里云日志配置CR。日志服務控制器會自動創建一個名為k8s-log-<clusterid>的Project和一個名為workflow-logstore的日志庫(Logstore)。

cat << EOF | kubectl apply -f -
apiVersion: log.alibabacloud.com/v1alpha1
kind: AliyunLogConfig
metadata:
  name: workflow-sls-config
  namespace: default
spec:
  # log will store for 5 days
  lifeCycle: 5
  logstore: workflow-logstore
  logtailConfig:
    inputType: plugin
    configName: workflow-sls-config
    inputDetail:
      plugin:
        inputs:
        - detail:
            Stderr: true
            Stdout: true
          type: service_docker_stdout
EOF

通過Argo CLI訪問日志服務

訪問集群中的工作流日志

通過Argo CLI可以訪問在集群中現存的工作流的日志,包括已存在的Pod和刪除的Pod。

在集群中存在的Pod可以通過原生kubectl logs <pod-name>訪問,默認最多顯示2000行日志,若該方式顯示的日志數量不夠或者需要訪問已經刪除的Pod,可以通過以下兩種方式訪問SLS的日志。

通過Argo CLI直接訪問SLS(推薦)

  1. 執行以下命令,配置訪問權限。

    argo config init #按照提示配置相關信息,包括ak、sk等。
  2. 執行以下命令獲取對應Pod的日志。

    argo logs <workflow-name> <pod-name> --sls # 獲取對應Pod日志。
    argo logs <workflow-name> --sls # 獲取對應workflow日志ZIP包。

通過訪問Argo Server訪問SLS

如需通過Argo CLI訪問已刪除Pod的日志,則需要先開啟Argo Server并配置相關參數。

    說明

    通過日志服務獲取工作流日志,必須指定<pod-name>

    若需要訪問其他Namespace的Workflow/Pod,則獲取KUBE_TOKEN時,需要使用對應Namespace。

  1. 執行以下命令,開啟Argo Server并配置參數。

    export ARGO_SERVER=argo.<cluster id>.<region>.alicontainer.com:2746
    export KUBE_TOKEN=$(k create token default -n default --duration 24h)
    export ARGO_TOKEN="Bearer $KUBE_TOKEN"
    export ARGO_INSECURE_SKIP_VERIFY=true
  2. 執行以下命令,獲取工作流Pod的日志。

    argo logs <workflow-name> <pod-name>

訪問持久化到數據庫的工作流日志

您可以配置持久化工作流,將工作流持久化保存到數據庫中,即使工作流在集群中被刪除,也可以通過Agro CLI方式下載工作流日志。

  1. 執行以下命令,配置訪問權限。

    argo config init #按照提示配置相關信息,包括ak、sk等。
  2. 執行以下命令查詢工作流的UID。

    # argo archive list
    NAMESPACE   NAME                                    STATUS      AGE   DURATION   PRIORITY   MESSAGE   P/R/C   PARAMETERS   UID
    default     hello-world-l6c2r                       Succeeded   3d    1m         0                    0/0/0                179eaef0-fde3-496f-946d-549e8f******
  3. 下載工作流日志。

    # argo archive logs 179eaef0-fde3-496f-946d-549e8f******
    # ls
    hello-world-l6c2r.zip

通過Argo UI訪問日志服務

無論工作流Pod是否被刪除,您都可以通過Argo UI訪問Pod的日志。如果Pod被刪除,則訪問SLS獲取日志并顯示到Argo UI,如下圖所示。

訪問日志

關閉日志服務

  1. 執行以下命令,刪除AliyunLogConfig CR。

    kubectl delete aliyunlogconfigs.log.alibabacloud.com workflow-sls-config -n default
  2. 登錄日志服務控制臺,將名為workflow-logstore的日志庫刪除。