在 Linux 電腦上安裝 Log Analytics 代理程式

警告

這篇文章參考 CentOS,這是接近生命週期結束 (EOL) 狀態的 Linux 發行版本。 請據以考慮您的使用方式和規劃。 如需詳細資訊,請參閱 CentOS 生命週期結束指引。 本文提供在裝載於其他雲端或內部部署之 Linux 計算機上安裝 Log Analytics 代理程式的詳細數據。

重要

舊版 Log Analytics 代理程式將於 2024 年 8 月被取代。 在此日期之後,Microsoft 將不再提供 Log Analytics 代理程式的任何支援。 在 2024 年 8 月之前移轉至 Azure 監視器代理程式,才能繼續擷取資料。

本文所述的安裝方法如下:

  • 使用 GitHub 上裝載的包裝函式腳本來安裝 Linux 代理程式。 當計算機直接或透過 Proxy 伺服器連線時,建議您使用此方法來安裝和升級代理程式。
  • 手動下載並安裝代理程式。 當 Linux 電腦無法存取因特網,且會透過 Log Analytics 閘道與 Azure 監視器或 Azure 自動化 通訊時,需要此步驟。

如需可用於 Azure 虛擬機的更有效率的選項,請參閱 安裝選項

需求

下列各節概述安裝的需求。

受支援的作業系統

如需 Log Analytics 代理程式支援的 Linux 散發套件清單,請參閱 Azure 監視器代理程式概觀。

只有 x86_x64 平臺 (64 位) 才支援 OpenSSL 1.1.0。 任何平臺上都不支援早於 1.x 的 OpenSSL。

注意

Log Analytics Linux 代理程式不會在容器中執行。 若要監視容器,請使用 適用於 Docker 主機的容器監視解決方案Kubernetes 的容器深入解析

從 2018 年 8 月之後發行的版本開始,我們會對支援模型進行下列變更:

  • 僅支援伺服器版本,而不是用戶端版本。
  • 將支援焦點放在任何 Azure Linux 背書散發版本上。 新散發版本與 Log Analytics Linux 代理程式支援的新散發版本/版本之間可能會有一些延遲。
  • 每個列出的主要版本都支援所有次要版本。
  • 不支援通過製造商終止支援日期的版本。
  • 僅支援 VM 映像。 不支援容器,即使是衍生自官方散發版本發行者映像的容器也一般。
  • 不支援新版本的AMI。
  • 預設僅支持執行 OpenSSL 1.x 的版本。

注意

如果您使用目前不支援的散發版本或版本,且不符合我們的支援模型,建議您派生此存放庫。 確認 Microsoft 支援不會提供分叉代理程式版本的協助。

Python 需求

從代理程式 1.13.27 版開始,Linux 代理程式將同時支援 Python 2 和 3。 我們一律建議您使用最新的代理程式。

如果您使用舊版的代理程式,則必須默認讓虛擬機使用 Python 2。 如果您的虛擬機使用預設不包含 Python 2 的散發版本,則必須加以安裝。 下列範例命令會在不同的散發版本上安裝 Python 2:

  • Red Hat、CentOS、Oracle
   sudo yum install -y python2
  • Ubuntu、Debian
   sudo apt-get update
   sudo apt-get install -y python2
  • SUSE:
   sudo zypper install -y python2

同樣地,只有當您使用舊版的代理程式時,python2 可執行文件必須別名為 python。 使用下列方法來設定此別名:

  1. 執行下列命令以移除任何現有的別名:

    sudo update-alternatives --remove-all python
    
  2. 執行下列命令以建立別名:

    sudo update-alternatives --install /usr/bin/python python /usr/bin/python2
    

支援的Linux強化

OMS 代理程式對Linux的自定義和強化支援有限。

目前支援下列工具:

  • SELinux (CentOS 和 RHEL 的 Marketplace 映射及其預設設定)
  • FIPS (CentOS 和 RHEL 6/7 的 Marketplace 映射及其預設設定)

不支援下列工具:

  • CIS
  • SELinux (自定義強化,例如 MLS)

已針對 Azure 監視器代理程序規劃 CIS、FIPS 和 SELinux 強化支援。 OMS 代理程式不支援或規劃進一步強化和自定義方法。 例如,不支援 GitHub Enterprise Server 之類的 OS 映射,包括使用者帳戶許可權的限制等自定義專案。

代理程式必要條件

下表醒目提示將安裝代理程式所 支援Linux散發版本 所需的套件。

必要的套件 描述 最小版本
Glibc GNU C 連結庫 2.5-12
Openssl OpenSSL 連結庫 1.0.x 或 1.1.x
Curl cURL 網路用戶端 7.15.5
Python 2.7 或 3.6+
Python-ctypes
PAM 插入式驗證模組

注意

需要 rsyslog 或 syslog-ng 才能收集 syslog 訊息。 syslog 事件集合不支援 Red Hat Enterprise Linux、CentOS 和 Oracle Linux 版本 5 版的預設 syslog 精靈。 若要從這個版本的這些散發套件收集 syslog 數據,應該安裝 rsyslog 精靈並設定為取代 sysklog。

網路需求

如需 Linux 代理程式的網路需求,請參閱 Log Analytics 代理程式概觀

工作區識別碼和金鑰

不論使用的安裝方法為何,您都需要代理程式將連線之 Log Analytics 工作區的工作區標識碼和密鑰。 從 Azure 入口網站的Log Analytics工作區功能表中選取工作區。 在 [設定] 區段底下,選取 [代理程式]。

顯示工作區詳細數據的螢幕快照。

注意

雖然可以重新產生 Log Analytics 工作區共用金鑰,但 這樣做的目的不是 立即限制目前使用這些密鑰之任何代理程式的存取。 代理程式會使用金鑰來產生三個月後到期的憑證。 重新產生共用金鑰只會防止代理程式更新其憑證,在憑證到期之前不會繼續使用這些憑證。

代理程式安裝套件

適用於Linux的Log Analytics代理程式是由多個套件所組成。 發行檔案包含下列套件,可藉由使用 --extract 參數執行殼層套件組合來取得:

套件 版本 描述
omsagent 1.16.0 適用於Linux的Log Analytics代理程式。
omsconfig 1.2.0 Log Analytics 代理程式的組態代理程式。
omi 1.7.1 開啟管理基礎結構 (OMI),輕量型 CIM 伺服器。 OMI 需要根存取權,才能執行服務運作所需的cron作業。
scx 1.7.1 操作系統效能計量的 OMI CIM 提供者。
apache-cimprov 1.0.1 適用於 OMI 的 Apache HTTP 伺服器效能監視提供者。 只有在偵測到 Apache HTTP Server 時才會安裝。
mysql-cimprov 1.0.1 適用於 OMI 的 MySQL Server 效能監視提供者。 只有在偵測到 MySQL/MariaDB 伺服器時才會安裝。
docker-cimprov 1.0.0 適用於 OMI 的 Docker 提供者。 只有在偵測到 Docker 時才安裝。

代理程式安裝詳細數據

重要

舊版 Log Analytics 代理程式將於 2024 年 8 月被取代。 在此日期之後,Microsoft 將不再提供 Log Analytics 代理程式的任何支援。 在 2024 年 8 月之前移轉至 Azure 監視器代理程式,才能繼續擷取資料。

安裝適用於Linux套件的Log Analytics代理程式也會套用下列全系統設定變更。 卸載 omsagent 套件會移除這些成品。

  • 系統會建立名為 omsagent 的非特殊許可權使用者。 精靈會在此認證下執行。
  • 會在 中/etc/sudoers.d/omsagent建立 sudoers include 檔案。 此檔案會 omsagent 授權重新啟動 syslog 和 omsagent 精靈。 如果已安裝的 sudo 版本不支援 sudo include 指示詞,這些專案將會寫入 /etc/sudoers
  • syslog 組態已修改為將事件子集轉送至代理程式。 如需詳細資訊,請參閱 設定 Syslog 數據收集

在受監視的 Linux 電腦上,代理程式會列為 omsagentomsconfig 是 Linux 設定代理程式的 Log Analytics 代理程式,每 5 分鐘會尋找新的入口網站端設定。 新的和更新的組態會套用至位於 /etc/opt/microsoft/omsagent/conf/omsagent.conf的代理程式組態檔。

安裝代理程式

重要

舊版 Log Analytics 代理程式將於 2024 年 8 月被取代。 在此日期之後,Microsoft 將不再提供 Log Analytics 代理程式的任何支援。 在 2024 年 8 月之前移轉至 Azure 監視器代理程式,才能繼續擷取資料。

下列步驟會設定 Azure 和 Azure Government 雲端中 Log Analytics 的代理程式設定。 包裝函式腳本用於可以直接或透過 Proxy 伺服器通訊的 Linux 計算機,以下載裝載於 GitHub 上的代理程式並安裝代理程式。

如果您的 Linux 電腦需要透過 Proxy 伺服器與 Log Analytics 通訊,則可以在命令行上指定此設定,方法是包括 -p [protocol://][user:password@]proxyhost[:port]。 屬性 protocol 接受 httphttps。 屬性 proxyhost 接受 Proxy 伺服器的完整功能變數名稱或IP位址。

例如:https://proxy01.contoso.com:30443

如果任一情況下都需要驗證,請指定使用者名稱和密碼。 例如:https://user01:password@proxy01.contoso.com:30443

  1. 若要設定 Linux 計算機以連線到 Log Analytics 工作區,請執行下列命令來提供工作區識別碼和主鍵。 下列命令會下載代理程序、驗證其總和檢查碼,並加以安裝。

    wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh && sh onboard_agent.sh -w <YOUR WORKSPACE ID> -s <YOUR WORKSPACE PRIMARY KEY>
    

    下列命令包含 -p Proxy 伺服器需要驗證時的 Proxy 參數和範例語法:

     wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh && sh onboard_agent.sh -p [protocol://]<proxy user>:<proxy password>@<proxyhost>[:port] -w <YOUR WORKSPACE ID> -s <YOUR WORKSPACE PRIMARY KEY>
    
  2. 若要設定 Linux 計算機以連線到 Azure Government 雲端中的 Log Analytics 工作區,請執行下列命令,以提供稍早複製的工作區標識符和主鍵。 下列命令會下載代理程序、驗證其總和檢查碼,並加以安裝。

    wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh && sh onboard_agent.sh -w <YOUR WORKSPACE ID> -s <YOUR WORKSPACE PRIMARY KEY> -d opinsights.azure.us
    

    下列命令包含 -p Proxy 伺服器需要驗證時的 Proxy 參數和範例語法:

     wget https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/master/installer/scripts/onboard_agent.sh && sh onboard_agent.sh -p [protocol://]<proxy user>:<proxy password>@<proxyhost>[:port] -w <YOUR WORKSPACE ID> -s <YOUR WORKSPACE PRIMARY KEY> -d opinsights.azure.us
    
  3. 執行下列命令,以重新啟動代理程式:

    sudo /opt/microsoft/omsagent/bin/service_control restart [<workspace id>]
    

從舊版升級

從舊版升級,從 1.0.0-47 版開始,每個版本都受到支援。 使用 參數執行安裝, --upgrade 將代理程式的所有元件升級至最新版本。

注意

升級期間會出現警告訊息「略過docker提供者套件安裝」, --skip-docker-provider-install 因為已設定旗標。 如果您要透過現有的 omsagent 安裝進行安裝,而且想要移除 Docker 提供者,請先清除現有的安裝。 然後使用旗標進行安裝 --skip-docker-provider-install

快取資訊

來自 Linux 的 Log Analytics 代理程式的數據會在本機電腦上快取到 %STATE_DIR_WS%/out_oms_common.buffer* ,再傳送至 Azure 監視器。 自訂記錄數據會在 %STATE_DIR_WS%/out_oms_blob.buffer*中緩衝處理。 某些 解決方案和數據類型的路徑可能不同。

代理程式會嘗試每隔 20 秒上傳一次。 如果失敗,它會等候指數增加的時間長度,直到成功為止。 例如,它會等候第二次嘗試前 30 秒、第三次、120 秒之前的 60 秒等等,重試之間最多 16 分鐘,直到成功再次連線為止。 代理程式會針對指定的數據區塊重試最多六次,然後再捨棄並移至下一個數據區塊。 此程式會繼續進行,直到代理程式可以再次成功上傳為止。 基於這個理由,數據可能會在捨棄之前緩衝處理最多 30 分鐘。

默認快取大小為 10 MB,但可以在 omsagent.conf 檔案修改。

下一步