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

通過Pod環(huán)境變量采集應用日志

阿里云日志服務SLS(Log Service)是針對日志數據的一站式服務,讓您無需開發(fā)就能快捷完成日志數據采集、消費、投遞以及查詢分析等功能。ACK Serverless集群提供了日志服務托管功能。您可以在ACK Serverless集群中使用SLS環(huán)境變量,將業(yè)務容器的標準輸出和日志文件收集到SLS。

前提條件

已創(chuàng)建ACK Serverless集群,且集群已啟用日志服務組件alibaba-log-controller。

  • 新建集群:在創(chuàng)建集群的組件配置頁面,選中使用日志服務,安裝日志插件。具體操作,請參見創(chuàng)建ACK Serverless集群

  • 已有集群:在集群管理頁左側導航欄中,選擇運維管理>組件管理,并在日志與監(jiān)控區(qū)域找到alibaba-log-controller,并按照頁面指引安裝組件。

步驟一:創(chuàng)建應用并配置日志服務

您可以在創(chuàng)建應用的同時配置日志服務,從而對容器的日志進行采集。您可以通過鏡像和YAML模板兩種方式創(chuàng)建應用。阿里云日志服務SLS的詳細信息,請參見什么是日志服務

使用鏡像創(chuàng)建

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇工作負載 > 無狀態(tài)

  3. 無狀態(tài)頁面上方的命名空間下拉列表中選擇目標命名空間,然后在頁面右上角單擊使用鏡像創(chuàng)建

    1. 應用基本信息頁簽,設置應用名稱副本數量類型,然后單擊下一步

    2. 容器配置頁簽的日志服務區(qū)域,進行相關配置。

      說明

      本文僅介紹日志服務相關的配置,其他的應用配置,請參見創(chuàng)建無狀態(tài)工作負載Deployment

      配置示例如下:采集配置

      配置項

      說明

      采集配置

      單擊采集配置,配置日志庫容器內日志路徑

      • 日志庫:配置Logstore名稱,名稱中只能包含小寫字母、數字和短劃線(-)。

        您可以使用它來指定所采集日志存儲于該Logstore,如果該Logstore不存在的話,ACK Serverless會自動為您在集群關聯(lián)的日志服務Project下創(chuàng)建相應的Logstore。

      • 容器內日志路徑:指定希望采集的日志所在的路徑,例如使用/usr/local/tomcat/logs/catalina.*.log來采集Tomcat的文本日志。

        說明

        如果指定為stdout,表示采集容器的標準輸出和標準錯誤輸出。

      每一項采集配置都會被自動創(chuàng)建為對應Logstore的一個采集配置,默認采用極簡模式(按行)進行采集,如果您需要更豐富的采集方式,可以登錄日志服務控制臺,進入相應的Project(默認是k8s-log前綴)和Logstore對配置進行修改。

      自定義Tag

      單擊自定義Tag,配置Tag名稱Tag值

      每一個自定義Tag都是一個鍵值對,會拼接到所采集到的日志中,您可以使用它來為容器的日志數據進行標記,例如版本號。

    3. 配置完成后,在頁面右側單擊下一步,后續(xù)操作,請參見創(chuàng)建無狀態(tài)工作負載Deployment

使用YAML創(chuàng)建

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇工作負載 > 無狀態(tài)

  3. 無狀態(tài)頁面上方的命名空間下拉列表中選擇目標命名空間,然后在頁面右上角單擊使用YAML創(chuàng)建資源

  4. 創(chuàng)建頁面,選擇示例模板,并使用YAML配置相應的模板,然后單擊創(chuàng)建

    YAML模板的語法同Kubernetes語法。但為了給容器指定采集配置,需要使用env來為容器增加采集配置和自定義Tag,并根據采集配置,創(chuàng)建對應的volumeMountsvolumes。Pod YAML示例如下:

    apiVersion: v1
    kind: Pod
    metadata:
      name: my-demo
    spec:
      containers:
      - name: my-demo-app
        image: 'registry.cn-hangzhou.aliyuncs.com/log-service/docker-log-test:latest'
        env:
        ######### 配置環(huán)境變量 ###########
        - name: aliyun_logs_log-stdout
          value: stdout
        - name: aliyun_logs_log-varlog
          value: /var/log/*.log
        - name: aliyun_logs_mytag1_tags
          value: tag1=v1
        ######### 配置Volume Mount ###########
        volumeMounts:
        - name: volumn-sls-mydemo
          mountPath: /var/log
      volumes:
      - name: volumn-sls-mydemo
        emptyDir: {}

    按需在Pod YAML示例中增加以下配置示例:

    說明

    若您有更多的日志采集需求,請參見步驟二:配置環(huán)境變量的高級參數

    1. 通過環(huán)境變量創(chuàng)建采集配置和自定義Tag,所有與配置相關的環(huán)境變量都采用aliyun_logs_作為前綴。

      1. 創(chuàng)建采集配置的規(guī)則:

        - name: aliyun_logs_log-stdout
          value: stdout
        - name: aliyun_logs_log-varlog
          value: /var/log/*.log

        示例中創(chuàng)建了兩個采集配置,格式為aliyun_logs_{key},對應的{key}分別為log-stdoutlog-varlog

        • aliyun_logs_log-stdout:該env表示創(chuàng)建一個名稱為log-stdout的Logstore,日志采集路徑為stdout的配置,對應的日志服務采集配置名稱也是log-stdout,目的是將容器的標準輸出采集到log-stdoutLogstore中。

        • aliyun_logs_log-varlog:該env表示創(chuàng)建一個名稱為log-varlog的Logstore,日志采集路徑為/var/log/*.log的配置,對應的日志服務采集配置名稱也是log-varlog,目的是將容器的/var/log/*.log文件內容采集到log-varlogLogstore中。

      2. 創(chuàng)建自定義Tag規(guī)則:

        - name: aliyun_logs_mytag1_tags
          value: tag1=v1

        配置Tag后,當采集到該容器的日志時,會自動附加對應的字段到日志服務。其中mytag1為只能包含小寫字母、數字和短劃線(-)的名稱。

    2. 如果您的采集配置中指定了非stdout的采集路徑,需要在此部分創(chuàng)建相應的volumeMounts。示例中采集配置添加了對/var/log/*.log的采集,因此相應地添加了/var/log的volumeMounts

步驟二:配置環(huán)境變量的高級參數

通過容器環(huán)境變量配置采集支持多種配置參數,您可以根據實際需求設置高級參數來實現日志采集的特殊需求。

重要

通過容器環(huán)境變量配置采集日志的方式不適用于邊緣場景。

字段

說明

示例

注意事項

aliyun_logs_{key}

  • 必選項。{key}只能包含小寫字母、數字和短劃線(-)。

  • 若不存在aliyun_logs_{key}_logstore,則默認創(chuàng)建并采集到名為{key}的logstore。

  • 當值為stdout表示采集容器的標準輸出;其他值為容器內的日志路徑。

  • - name: aliyun_logs_catalina
    
       stdout
  • - name: aliyun_logs_access-log
    
       /var/log/nginx/access.log
  • 默認采集方式為極簡模式,如需解析日志內容,建議使用日志服務控制臺。

  • {key}需保持在K8s集群內唯一。

aliyun_logs_{key}_tags

可選。值為{tag-key}={tag-value}類型,用于對日志進行標識。

- name: aliyun_logs_catalina_tags

   app=catalina

-

aliyun_logs_{key}_project

可選。值為指定的日志服務Project。當不存在該環(huán)境變量時為您安裝時所選的Project。

- name: aliyun_logs_catalina_project

   my-k8s-project

Project需與您的Logtail工作所在Region一致。

aliyun_logs_{key}_logstore

可選。值為指定的日志服務Logstore。當不存在該環(huán)境變量時Logstore和{key}一致。

- name: aliyun_logs_catalina_logstore

   my-logstore

-

aliyun_logs_{key}_shard

可選。值為創(chuàng)建Logstore時的shard數,有效值為1~10。當不存在該環(huán)境變量時值為2。

- name: aliyun_logs_catalina_shard

   '4'

-

aliyun_logs_{key}_ttl

可選。值為指定的日志保存時間,有效值為1~3650。

  • 當取值為3650時,指定日志的保存時間為永久保存。

  • 當不存在該環(huán)境變量時,默認指定日志的保存時間為90天。

- name: aliyun_logs_catalina_ttl

   '3650'

-

aliyun_logs_{key}_machinegroup

可選。值為應用的機器組。當不存在該環(huán)境變量時與安裝Logtail的默認機器組一致。

- name: aliyun_logs_catalina_machinegroup

   my-machine-group

-

  • 定制需求1:將多個應用數據采集到同一Logstore

    如果您需要將多個應用數據采集到同一Logstore,可以設置 aliyun_logs_{key}_logstore參數,例如以下配置將2個應用的stdout采集到stdout-logstore中。

    示例中應用1的{key}app1-stdout,應用2的{key}app2-stdout

    應用1設置的環(huán)境變量為:

    # 配置環(huán)境變量
        - name: aliyun_logs_app1-stdout
          value: stdout
        - name: aliyun_logs_app1-stdout_logstore
          value: stdout-logstore

    應用2設置的環(huán)境變量為:

    # 配置環(huán)境變量
        - name: aliyun_logs_app2-stdout
          value: stdout
        - name: aliyun_logs_app2-stdout_logstore
          value: stdout-logstore
  • 定制需求2:將不同應用數據采集到不同的Project

    如果您需要將不同應用的數據采集到多個Project中,您需要進行以下操作:

    1. 在每個Project中創(chuàng)建一個機器組,選擇自定義標識,標識名為k8s-group-{cluster-id},其中{cluster-id}為您的集群ID,機器組名稱可以自定義配置。

    2. 在每個應用的環(huán)境變量中配置project、logstore、machinegroup信息,其中機器組名稱為您在上一步創(chuàng)建的機器組名。

      如下示例中應用1的{key}app1-stdout,應用2的{key}app2-stdout。其中如果兩個應用在同一個K8s集群中,對應的machinegroup可以使用同一個machinegroup。

      應用1設置的環(huán)境變量為:

      # 配置環(huán)境變量
          - name: aliyun_logs_app1-stdout
            value: stdout
          - name: aliyun_logs_app1-stdout_project
            value: app1-project
          - name: aliyun_logs_app1-stdout_logstore
            value: app1-logstore
          - name: aliyun_logs_app1-stdout_machinegroup
            value: app1-machine-group

      應用2設置的環(huán)境變量為:

      # 應用2 配置環(huán)境變量
          - name: aliyun_logs_app2-stdout
            value: stdout
          - name: aliyun_logs_app2-stdout_project
            value: app2-project
          - name: aliyun_logs_app2-stdout_logstore
            value: app2-logstore
          - name: aliyun_logs_app2-stdout_machinegroup
            value: app1-machine-group

步驟三:查看日志

在容器服務控制臺查看應用容器的日志的具體步驟如下。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇運維管理 > 日志中心

  3. 日志中心頁面,單擊應用日志頁簽,按需選擇日志庫,查看應用容器的相關日志。