Simple Log Service (SLS) プロジェクトでサーバーログを収集するには、あらかじめ各ターゲットサーバーに Logtail クライアントをインストールする必要があります。このトピックでは、サーバー環境とコンテナ環境における Logtail のインストール、開始、停止、アップグレード、アンインストールの方法について説明します。
概要
Logtail は、ターゲットサーバーのタイプに応じて、次の 2 つのシナリオのいずれかで使用します。
物理サーバーや Elastic Compute Service (ECS) インスタンスなどの従来のコンピューティング環境
Kubernetes コンテナプラットフォームにデプロイされたワークロード
サーバーのランタイム環境に適したソリューションを選択してください。この 2 つのシナリオでは、手順と設定要件が異なります。ハイブリッドデプロイメントの場合は、各環境のインストールと設定を個別に完了してください。
サーバー
Logtail のインストール
Logtail は、ワンクリックインストールまたは手動インストールの 2 つの方法のいずれかでインストールできます。Simple Log Service は、Elastic Compute Service (ECS) インスタンスを使用し、インスタンスとプロジェクトが同じ Alibaba Cloud アカウントに属し、同じリージョンに存在する場合にのみ、ワンクリックインストールをサポートします。それ以外の場合は、Logtail を手動でインストールしてください。
ワンクリックインストール
Simple Log Service では、ワンクリックで ECS インスタンスに Logtail をインストールできます。インストールは CloudOps Orchestration Service (OOS) のオーケストレーション機能を利用するため、ECS インスタンスにログインしてインストール手順を手動で実行する必要はありません。Alibaba Cloud アカウントでログインした場合、デフォルトで必要なすべての権限が付与されているため、操作を直接実行できます。
RAM ユーザーとしてログインする場合は、Alibaba Cloud アカウントの所有者に OOS リソースを管理するための権限を付与するよう依頼してください。アカウント所有者は、システムポリシーまたはカスタムポリシーを使用してRAM ユーザーを作成し、RAM ユーザーに権限を付与できます。
システムポリシー:
AliyunOOSFullAccess:CloudOps Orchestration Service (OOS) を管理するための完全な権限を付与します。AliyunECSFullAccess:ECS を管理するための権限を付与します。
カスタムポリシー:データセキュリティ要件が厳しい場合は、きめ細かな権限付与のためにカスタムポリシーを作成できます。次のポリシーは、OOS リソースを管理するための権限を付与します。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:DescribeTagKeys",
"ecs:DescribeTags",
"ecs:DescribeInstances",
"ecs:DescribeInvocationResults",
"ecs:RunCommand",
"ecs:DescribeInvocations",
"ecs:InvokeCommand"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"oos:ListTemplates",
"oos:StartExecution",
"oos:ListExecutions",
"oos:GetExecutionTemplate",
"oos:ListExecutionLogs",
"oos:ListTaskExecutions"
],
"Resource": "*"
}
]
}ECS インスタンスに Logtail をインストールし、同時にマシングループを作成して設定するには、次の手順を実行してください。
Simple Log Service コンソールにログインします。ログリソースを管理するプロジェクトをクリックして、Logstore のリストを表示します。ログを格納する Logstore の名前の前にある
アイコンをクリックして展開し、データのインポート の後に表示される
アイコンをクリックし、ダイアログボックスでテキストログテンプレートを選択して、今すぐ統合 をクリックします。Simple Log Service は、正規表現、単一行、複数行のテンプレートなど、複数のテキストログテンプレートを提供します。これらのテンプレートは、ログ解析プラグインのみが異なり、他のすべての設定は同じです。テンプレートでログ解析プラグインを追加または削除することもできます。収集したいログの特性に基づいてテンプレートを選択するか、任意のテキストログテンプレートを選択してから、ログの特性に基づいてプラグインを設定します。
サーバグループ設定 ページで、インストール環境として ホストシナリオ と ECS を選択し、次に マシングループの作成 をクリックします。
マシングループの作成 パネルで、プロジェクトと同じリージョンにある 1 つ以上の ECS インスタンスを選択して マシングループとしてインストールおよび作成する をクリックし、インストールが完了したら、マシン グループの 名前 を指定して [OK] をクリックします。
インストールが失敗した場合、または待機状態のままの場合は、ECS インスタンスがプロジェクトと同じリージョンにあるかどうかを確認してください。
インストール後、
[リソース] > マシングループ ページに移動し、作成したマシングループをクリックし、サーバグループ設定 > サーバグループのステータス セクションでハートビート ステータスを確認します。ハートビートステータスが OK の場合、マシングループが作成されたことを示します。
手動インストール
サーバーのオペレーティングシステムと CPU アーキテクチャに基づいて、Logtail のダウンロード方法とインストール方法を選択してください。
サンプルコードの ${region_id} は、Simple Log Service プロジェクトが存在するリージョンです。実際のリージョンIDに置き換えてください。詳細については、「サポートされているリージョン」をご参照ください。たとえば、中国 (杭州) の ${region_id} は cn-hangzhou です。
Logtail をインストールする前に、次の点にご注意ください。
Logtail 2.0 の互換性:マシンのスペックが低い場合や古いオペレーティングシステムを実行している場合、Logtail 2.0 で互換性の問題が発生し、ソフトウェアが正常に実行されないことがあります。この場合は、
https://logtail-release-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/linux64/1.8.7/logtail.shからバージョン 1.8.7 をダウンロードし、./logtail.sh install ${region_id} -v 1.8.7コマンドを実行してインストールすることを推奨します。
Linux
次のバージョンの Linux x86-64 (64 ビット) サーバーがサポートされています。- Alibaba Cloud Linux 2 および 3
Anolis OS 7 および 8 - CentOS Linux 6、7、および 8 - Debian GNU/Linux 8、9、10、11、および 12
Red Hat Enterprise Linux 6、7、8、および 9
openSUSE 15.1、15.2、および 42.3
SUSE Linux Enterprise Server 11、12、および 15 - Ubuntu 14.04、16.04、18.04、20.04、22.04、および 24.04 - glibc 2.5 以降をベースとするその他の Linux オペレーティングシステム。Logtail 2.0 以降では glibc 2.6 以降が必要です。
Logtail 2.0 以降では、CPU が sse4_2 および avx 命令セットをサポートしている必要があります。- 次のバージョンの Linux ARM (64 ビット) サーバーがサポートされています。- Alibaba Cloud Linux 3.2 for ARM - Anolis OS 8.2 for ARM 以降 - CentOS 8.4 for ARM
Debian 11.2 および 12.2 for ARM - Ubuntu 20.04、22.04、および 24.04 for ARM
Logtail 2.0 以降では、最小限必要な CPU アーキテクチャは ARMv8.2-A です。
インターネットにアクセスできるサーバー (ARM および x86-64)
インターネットにアクセスできるサーバーの場合は、Logtail を直接ダウンロードしてください。
# イントラネット経由でダウンロード
wget http://logtail-release-${region_id}.oss-${region_id}-internal.aliyuncs.com/linux64/logtail.sh -O logtail.sh;
# インターネット経由でダウンロード
wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh -O logtail.sh;ネットワーク条件に基づいてインストールコマンドを選択してください。
# インターネット経でインストール
chmod +x logtail.sh; ./logtail.sh install ${region_id}-internet
# 中国本土以外のオンプレミスデータセンターにあるサーバー、または中国本土以外のクラウドベンダーが提供するサーバーの場合、インターネット経由のデータ転送では、高いネットワーク遅延や不安定な転送が発生する可能性があります。転送アクセラレーションを使用してデータを転送することを推奨します。
chmod +x logtail.sh; ./logtail.sh install ${region_id}-acceleration
# イントラネット経由でインストール。この方法は、イントラネットに接続されているオンプレミスデータセンターに適用されます。
chmod +x logtail.sh; ./logtail.sh install ${region_id}オフラインの ARM サーバー
オフラインサーバーの場合は、まずインターネットにアクセスできるサーバーにインストールスクリプトとインストールパッケージをダウンロードしてください。
wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh; wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/aarch64/logtail-linux64.tar.gzインストールスクリプトとインストールパッケージを Logtail をインストールしたいサーバーにコピーし、ネットワーク条件に基づいてインストールコマンドを選択してください。
# インターネット経由でインストール
chmod +x logtail.sh; ./logtail.sh install-local ${region_id}-internet
# 中国本土以外のオンプレミスデータセンターにあるサーバー、または中国本土以外のクラウドベンダーが提供するサーバーの場合、インターネット経由のデータ転送では、高いネットワーク遅延や不安定な転送が発生する可能性があります。転送アクセラレーションを使用してデータを転送することを推奨します。
chmod +x logtail.sh; ./logtail.sh install-local ${region_id}-accelerationオフラインの x86-64 サーバー
オフラインサーバーの場合は、まずインターネットにアクセスできるサーバーにインストールスクリプトとインストールパッケージをダウンロードしてください。
wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh; wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail-linux64.tar.gzインストールスクリプトとインストールパッケージを Logtail をインストールしたいサーバーにコピーし、ネットワーク条件に基づいてインストールコマンドを選択してください。
# インターネット経由でインストール
chmod +x logtail.sh; ./logtail.sh install-local ${region_id}-internet
# 中国本土以外のオンプレミスデータセンターにあるサーバー、または中国本土以外のクラウドベンダーが提供するサーバーの場合、インターネット経由のデータ転送では、高いネットワーク遅延や不安定な転送が発生する可能性があります。転送アクセラレーションを使用してデータを転送することを推奨します。
chmod +x logtail.sh; ./logtail.sh install-local ${region_id}-accelerationWindows
> - Microsoft Windows Server 2008 および Microsoft Windows 7 では、x86 版または x86_64 版に Logtail をインストールできます。 > - 他の Windows オペレーティングシステムでは、x86_64 版にのみ Logtail をインストールできます。
次の Windows バージョンがサポートされています。- Microsoft Windows Server 2008、2012、2016、2019、2022、および 2025 - Microsoft Windows 7 - Microsoft Windows 10 - Microsoft Windows Server Version 1909 - Microsoft Windows Server Version 2004
サーバーのアーキテクチャとプロジェクトのリージョンに一致するインストールパッケージをダウンロードしてください。
アーキテクチャ | プロジェクトのリージョン | インストールパッケージ |
32 ビット | 中国本土のリージョン | Logtail 32 ビットインストールパッケージ: |
32 ビット | 中国本土以外のリージョン | Logtail 32 ビットインストールパッケージ: |
64 ビット | 中国本土のリージョン | Logtail 64 ビットインストールパッケージ: |
64 ビット | 中国本土以外のリージョン | Logtail 64 ビットインストールパッケージ: |
インストールパッケージを展開し、管理者として Windows PowerShell を実行します。展開先の logtail_installer ディレクトリに移動し、ネットワーク条件に基づいてインストールコマンドを選択してください。
# インターネット経由でインストール
.\logtail_installer.exe install ${region_id}-internet
# 中国本土以外のオンプレミスデータセンターにあるサーバー、または中国本土以外のクラウドベンダーが提供するサーバーの場合、インターネット経由のデータ転送では、高いネットワーク遅延や不安定な転送が発生する可能性があります。転送アクセラレーションを使用してデータを転送することを推奨します。
.\logtail_installer.exe install ${region_id}-accelerationLogtail の一括インストール
Logtail は、次の 2 つの方法のいずれかで一括インストールできます。
OOS オーケストレーション:権限要件のあるシナリオに適用されます。この方法は高い同時実行性をサポートし、大規模な一括操作に適しています。詳細については、「OOS を使用して Logtail を一括でインストールまたはアップグレードする」をご参照ください。
ECS Cloud Assistant:使い方は簡単です。コマンドを実行して、1回限りのタスクを実行します。
ECS Cloud Assistant を使用して Logtail を一括インストールするには、次の手順を実行してください。
ECS コンソール - Cloud Assistant、ページの左上で、リージョンとリソースグループを選択します。
[コマンドの作成] パネルで、[コマンドの内容] フィールドにインストールコマンドを入力してください。この例では、インターネット経由のインストールを使用します。
この例では、次のインストールコマンドを使用します。
#!/bin/bash region_id='cn-hangzhou' wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh -O logtail.sh chmod +x logtail.sh ./logtail.sh install ${region_id}-internet[インスタンスの選択] セクションで、宛先インスタンスのエージェントステータスが 正常 であることを確認します。ステータスが異常な場合は、Cloud Assistant エージェントのインストールを参照して Cloud Assistant のインストールを完了します。宛先インスタンスを選択し、実行 をクリックします。実行ステータスが [実行成功] に変わります。実行が失敗した場合は、実行結果の表示と一般的な問題のトラブルシューティングをご参照ください。
Logtail の起動と停止
Linux
Logtail の起動
sudo /etc/init.d/ilogtaild startLogtail の停止
sudo /etc/init.d/ilogtaild stopWindows
ターゲットサーバーにログインしてください。
開始日時 > コントロール パネル > 管理ツール > サービス を選択します。
サービス ダイアログボックスで、必要なサービスを探します。
バージョン 0.x.x.x の場合は、LogtailWorker サービスを選択してください。
バージョン 1.0.0.0 以降の場合は、LogtailDaemon サービスを選択してください。
サービスを右クリックし、開始、停止、[再起動] などの必要な操作を選択します。
Logtail のステータスとバージョンの確認
Linux
Linux での Logtail ステータスの確認
sudo /etc/init.d/ilogtaild status コマンドを実行して Logtail のステータスを確認してください。システムが ilogtail is running を返した場合、Logtail はインストールされています。Logtail が実行されていない場合は、アンインストールしてから再度インストールしてください。
Linux での Logtail バージョンの確認
Logtail は、バージョン情報を /usr/local/ilogtail/app_info.json ファイルの logtail_version フィールドに保存します。次のコマンドを実行して、Logtail のバージョン情報を表示してください。
cat /usr/local/ilogtail/app_info.json次の結果が返されます。
{
"logtail_version" : "0.16.30",
}Windows
Windows での Logtail ステータスの確認
Logtail のステータスを確認して、Logtail がターゲットサーバーにインストールされているかどうかを判断してください。
[ファイル名を指定して実行] ウィンドウを開き、
services.mscと入力して、[サービス] ウィンドウを開いてください。Logtail 1.0.0.0 以降に適用される LogtailDaemon サービス、または Logtail 0.x.x.x に適用される LogtailWorker サービスの実行ステータスを確認してください。
ステータスが [実行中] であれば、Logtail がインストールされていることを示します。
Windows での Logtail バージョンの確認
Logtail のバージョンは、インストールパスにある app_info.json ファイルの logtail_version フィールドで確認できます。
たとえば、次の内容は Logtail のバージョンが 1.0.0.0 であることを示しています。
{
"logtail_version" : "1.0.0.0"
}Logtail のアップグレード
Linux
Linux サーバーで Logtail をアップグレードする前に、次の点にご注意ください。
アップグレードコマンド:Logtail をアップグレードするには、
upgradeコマンドを使用してください。installコマンドを使用すると、上書きインストールが実行され、元の設定は失われます。サービス中断:アップグレード中、Logtail は短時間停止します。アップグレードが完了すると、Logtail は自動的に起動し、スタートアップ項目として登録されます。アップグレードでは必要なファイルのみが上書きされます。設定ファイルとチェックポイントファイルは保持されるため、アップグレード中にログが失われることはありません。
サンプルコードの
${region_id}は、Simple Log Service プロジェクトが存在するリージョンです。実際のリージョンIDに置き換えてください。詳細については、「サポートされているリージョン」をご参照ください。たとえば、中国 (杭州) の${region_id}はcn-hangzhouです。
次の表から Logtail のアップグレード方法を選択してください。
アーキテクチャ | ダウンロード方法 | アップグレード方法 |
ARM および x86-64 | インターネットにアクセスできるサーバーの場合: | ダウンロードが完了したら、次のアップグレードコマンドを実行してください: |
ARM | オフラインサーバーの場合は、まずインターネットにアクセスできるサーバーにインストールスクリプトとインストールパッケージをダウンロードしてください: | インストールスクリプトとインストールパッケージを Logtail をアップグレードしたいサーバーにコピーし、次のアップグレードコマンドを実行してください: |
x86-64 | オフラインサーバーの場合は、まずインターネットにアクセスできるサーバーにインストールスクリプトとインストールパッケージをダウンロードしてください: | インストールスクリプトとインストールパッケージを Logtail をアップグレードしたいサーバーにコピーし、次のアップグレードコマンドを実行してください: |
次の情報は、アップグレードが成功したことを示します。
stop successfully
Stop logtail successfully.
Upgrading logtail files ...
Upgrade logtail files successfully.
Starting logtail ...
ilogtail is running
Upgrade logtail successfully.
{
"UUID" : "XXXXXXXX-XXXX",
"compiler" : "GCC 9.3.1",
"hostname" : "xxx",
"instance_id" : "XXXXXXXX-XXXX_172.16.0.75_1730950372",
"ip" : "172.16.0.75",
"logtail_version" : "2.0.8",
"os" : "Linux; 5.10.134-13.an8.x86_64; #1 SMP Mon Jan 9 10:39:46 CST 2023; x86_64",
"update_time" : "2024-11-07 11:32:52"
}Windows
アップグレード手順はインストール手順と同じです。最新のインストールパッケージをダウンロードして展開し、インストール手順を実行してください。
アップグレードは、自動的なアンインストールと再インストールに相当します。元のインストールディレクトリの内容は削除されます。アップグレードを実行する前に、データをバックアップしてください。
64 ビットの Windows オペレーティングシステムで、32 ビットの Logtail を 64 ビットの Logtail にアップグレードするには、まず 32 ビットの Logtail をアンインストールしてから、64 ビットの Logtail をインストールする必要があります。
Logtail のアンインストール
Linux
Simple Log Service プロジェクトが存在するリージョンの ${region_id} を取得します。${region_id} を置き換えてから、次のコマンドを実行して Logtail をアンインストールします。
各リージョンの ${region_id} については、「サポートされているリージョン」をご参照ください。たとえば、中国 (杭州) の ${region_id} は cn-hangzhou です。
wget http://logtail-release-${region_id}.oss-${region_id}.aliyuncs.com/linux64/logtail.sh -O logtail.sh; chmod +x logtail.sh; ./logtail.sh uninstallWindows
管理者として Windows PowerShell または cmd を実行し、インストールパッケージの展開先である logtail_installer ディレクトリに移動してから、次のコマンドを実行してください。
.\logtail_installer.exe uninstallアンインストールが完了すると、Logtail のインストールディレクトリは削除されますが、一部の設定は C:\LogtailData ディレクトリに保持されます。要件に応じて手動で削除できます。保持される情報には、次のものがあります。
checkpoint:すべての Logtail プラグインのチェックポイント情報を保存します。このファイルは、Logtail プラグインを使用した後にのみ存在します。
user_config.d:ローカルの収集設定を保存するディレクトリです。.json 拡張子を持つファイルは収集設定と見なされます。形式は /usr/local/ilogtail/user_log_config.json に似ています。
logtail_check_point:メインの Logtail コンポーネントのチェックポイント情報を保存します。
users:設定したユーザー識別子ファイルを保存します。
コンテナ シナリオ
Logtail コンポーネントのインストール
ACK クラスターを使用し、そのクラスターが Simple Log Service と同じ Alibaba Cloud アカウントにある場合は、ACK クラスターのインストール方法をご参照ください。セルフマネージドクラスターを使用する場合、または ACK クラスターが Simple Log Service とは異なる Alibaba Cloud アカウントにある場合は、セルフマネージドクラスターのインストール方法をご参照ください。
ACK クラスター
この操作は、専用 Kubernetes クラスターとマネージド Kubernetes クラスターにのみ適用されます。
既存の ACK クラスターへの Logtail コンポーネントのインストール
Container Service for Kubernetes (ACK) コンソールにログインします
クラスターリスト ページで、宛先クラスターの右端の列にある 詳細 > 操作 > アドオン管理 を選択します。
ログとモニタリング タブで、
logtail-dsを見つけ、インストール をクリックします。インストールが完了すると、Simple Log Service は自動的に
k8s-log-${your_k8s_cluster_id}という名前のプロジェクトを作成します。
ACK クラスター作成時の Logtail コンポーネントのインストール
Container Service for Kubernetes (ACK) コンソールにログインします
左側のナビゲーションペインで、クラスターリスト をクリックします。
クラスターリスト ページで、クラスターの作成 をクリックします。
コンポーネント設定 設定ステップで、Log Service の使用 を選択します。
このセクションでは、Simple Log Service を有効にするための主要な手順のみを説明します。クラスターの作成方法の詳細については、「ACK マネージドクラスターの作成」をご参照ください。
Log Service の使用 を選択すると、プロジェクトの作成を促すメッセージが表示されます。Simple Log Service でのログの整理方法に関する詳細については、「プロジェクト」をご参照ください。プロジェクトは、次の 2 つの方法のいずれかで作成できます。
[プロジェクトの選択]:既存のプロジェクトを選択して、収集したコンテナログを管理できます。
[プロジェクトの作成]:Simple Log Service は、収集したコンテナログを管理するためのプロジェクトを自動的に作成します。
ClusterIDは、作成する Kubernetes クラスターの一意の識別子です。[ログサービス] セクションで、Log Service の使用 を選択します。[新しいプロジェクトを作成] を選択すると、システムは自動的に
k8s-log-{ClusterID}という名前のプロジェクトを作成します。
インストールが完了すると、選択したプロジェクトに次の Simple Log Service リソースが自動的に作成されます。
リソースタイプ | リソース名 | 説明 | 例 |
マシングループ | k8s-group-${your_k8s_cluster_id} |
| k8s-group-my-cluster-123 |
マシングループ | k8s-group-${your_k8s_cluster_id}-statefulset |
| k8s-group-my-cluster-123-statefulset |
マシングループ | k8s-group-${your_k8s_cluster_id}-singleton | 単一インスタンスのマシングループです。主に一部の単一インスタンス収集設定に使用されます。 | k8s-group-my-cluster-123-singleton |
LogStore | config-operation-log | Logtail コンポーネント内の alibaba-log-controller のログを保存します。この LogStore には収集設定を作成しないことを推奨します。この LogStore は削除できます。LogStore を削除すると、alibaba-log-controller のオペレーションログは収集されなくなります。この LogStore は、通常の LogStore と同じ方法で課金されます。詳細については、「書き込みデータ量課金」をご参照ください。 | config-operation-log |
セルフマネージドクラスター
Kubernetes クラスターにログインし、リージョンに基づいてコマンドを選択して、Logtail とその依存コンポーネントをダウンロードします。
# 中国本土のリージョン wget https://logtail-release-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/kubernetes/0.5.5/alibaba-cloud-log-all.tgz; tar xvf alibaba-cloud-log-all.tgz; chmod 744 ./alibaba-cloud-log-all/k8s-custom-install.sh # 中国本土以外のリージョン wget https://logtail-release-ap-southeast-1.oss-ap-southeast-1.aliyuncs.com/kubernetes/0.5.5/alibaba-cloud-log-all.tgz; tar xvf alibaba-cloud-log-all.tgz; chmod 744 ./alibaba-cloud-log-all/k8s-custom-install.sh./alibaba-cloud-log-all/values.yaml設定ファイルを変更します。設定ファイルには、次のパラメーターが含まれています。
# ===================== 必須コンテンツ ===================== # 宛先プロジェクトの名前。 SlsProjectName: # プロジェクトのリージョン。 Region: # プロジェクトの Alibaba Cloud アカウントの ID。二重引用符 ("") で囲んでください。 AliUid: "11099" # Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID と AccessKey Secret。AliyunLogFullAccess 権限が必要です。 AccessKeyID: AccessKeySecret: # カスタムクラスター ID。ID には、文字、数字、ハイフン (-) のみを含めることができます。 ClusterID: # ========================================================== # メトリック収集に関連するコンポーネントを有効にするかどうかを指定します。有効な値:true および false。デフォルト値:true。 SlsMonitoring: true # ネットワークタイプ。有効な値:Internet および Intranet。デフォルト値:Internet。 Net: Internet # コンテナランタイムが containerd であるかどうかを指定します。有効な値:true および false。デフォルト値:false。 SLS_CONTAINERD_USED: trueパラメーター
説明
SlsProjectNameLogtail がログをアップロードするプロジェクトの名前。
Regionプロジェクトがあるリージョンの ID。たとえば、中国 (杭州) のリージョン ID は
cn-hangzhouです。AliUidプロジェクトの Alibaba Cloud アカウントの ID。ID は二重引用符 ("") で囲む必要があります。例:
AliUid: "11099"。AccessKeyIDプロジェクトの Alibaba Cloud アカウントの AccessKey ID。RAM ユーザーの AccessKey ペアを使用し、RAM ユーザーに AliyunLogFullAccess 権限を付与することを推奨します。
AccessKeySecretプロジェクトの Alibaba Cloud アカウントの AccessKey Secret。RAM ユーザーの AccessKey ペアを使用し、RAM ユーザーに AliyunLogFullAccess 権限を付与することを推奨します。
ClusterIDカスタムクラスター ID。ID には、文字、数字、ハイフン (-) のみを含めることができます。このパラメーターは、後続の操作における
${your_k8s_cluster_id}に対応します。異なる Kubernetes クラスターに同じクラスター ID を設定しないでください。SlsMonitoringクラスターメトリックデータ収集を有効にするかどうかを指定します。有効な値は
true(デフォルト) とfalseです。trueはクラスターメトリックデータ収集を有効にし、falseは無効にします。NetLogtail がデータ転送に使用するネットワークタイプ。クラスターが Alibaba Cloud イントラネットに接続されていない場合は、インターネットを使用します。有効な値は、インターネットを示す
Internet(デフォルト) と、イントラネットを示すIntranetです。SLS_CONTAINERD_USEDコンテナランタイムが containerd であるかどうかを指定します。有効な値:
trueはコンテナランタイムが containerd であることを示し、false(デフォルト) はコンテナランタイムが containerd でないことを示します。containerd をコンテナランタイムとして使用するセルフマネージド Kubernetes クラスターでは、このパラメーターを有効にしない場合、Logtail がログを収集できないことがあります。Logtail とその依存コンポーネントをインストールします。
ホストの
OS-architectureを確認するには、echo "$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m)"コマンドを実行できます。k8s-custom-install.shスクリプトは、linux-386、linux-amd64、linux-arm、linux-arm64、linux-ppc64le、linux-s390x、darwin-amd64のOS-architectureの組み合わせをサポートします。bash k8s-custom-install.sh; kubectl apply -R -f result変更した
values.yamlファイル。
リソースタイプ | リソース名 | 説明 | 例 |
マシングループ | k8s-group-${your_k8s_cluster_id} |
| k8s-group-my-cluster-123 |
マシングループ | k8s-group-${your_k8s_cluster_id}-statefulset |
| k8s-group-my-cluster-123-statefulset |
マシングループ | k8s-group-${your_k8s_cluster_id}-singleton | 単一インスタンスのマシングループです。主に一部の単一インスタンス収集設定に使用されます。 | k8s-group-my-cluster-123-singleton |
LogStore | config-operation-log | Logtail コンポーネント内の alibaba-log-controller のログを保存します。この LogStore には収集設定を作成しないことを推奨します。この LogStore は削除できます。LogStore を削除すると、alibaba-log-controller のオペレーションログは収集されなくなります。この LogStore は、通常の LogStore と同じ方法で課金されます。詳細については、「書き込みデータ量課金」をご参照ください。 | config-operation-log |
Logtail のステータス、バージョン、IP アドレス
次のコマンドを実行して、Logtail のステータスを確認します。
kubectl get po -n kube-system | grep logtail次の結果が返されます。
NAME READY STATUS RESTARTS AGE
logtail-ds-gb92k 1/1 Running 0 2h
logtail-ds-wm7lw 1/1 Running 0 4d次のコマンドを実行して、Logtail のバージョン番号や IP アドレスなどの情報を表示します。
kubectl exec logtail-ds-gb92k -n kube-system cat /usr/local/ilogtail/app_info.json次の結果が返されます。
{
"hostname" : "logtail-ds-gb92k",
"instance_id" : "0EBB2B0E-0A3B-11E8-B0CE-0A58AC140402_172.20.4.2_1517810940",
"ip" : "192.0.2.0",
"logtail_version" : "0.16.2",
"os" : "Linux; 3.10.0-693.2.2.el7.x86_64; #1 SMP Tue Sep 12 22:26:13 UTC 2017; x86_64",
"update_time" : "2021-02-05 06:09:01"
}Logtail のアップグレードとロールバック
アップグレードの前に、Logtail コンポーネントの記述ファイルをバックアップしてください。
アップグレード前から大きな収集レイテンシーが発生している場合、Logtail のアップグレードにより少量のログデータが失われる可能性があります。
kubectl get ds -n kube-system logtail-ds -o yaml > logtail-ds.yaml kubectl get deployment -n kube-system alibaba-log-controller -o yaml > alibaba-log-controller.yaml kubectl get crd aliyunlogconfigs.log.alibabacloud.com -o yaml > aliyunlogconfigs-crd.yaml kubectl get cm -n kube-system alibaba-log-configuration -o yaml > alibaba-log-configuration.yaml kubectl get aliyunlogconfigs --all-namespaces -o yaml > aliyunlogconfigs-cr.yamlクラスターに基づいて、コンポーネントのアップグレード方法を選択してください。ACK クラスターを使用しており、かつクラスターが Simple Log Service と同一の Alibaba Cloud アカウントに属している場合は、ACK クラスター向けのアップグレード方法を参照してください。セルフマネージドクラスターを使用している場合、または Simple Log Service と異なる Alibaba Cloud アカウントに属する ACK クラスターを使用している場合は、セルフマネージドクラスター向けのアップグレード方法を参照してください。
ACK クラスター
ほとんどの場合は、自動アップグレードを使用することを推奨します。logtail-ds の DaemonSet または alibaba-log-controller のデプロイメントで環境変数などのパラメーターを変更している場合は、変更内容がリセットされないように、手動アップグレードを使用してください。
自動アップグレード
自動アップグレードを実行すると、logtail-ds と alibaba-log-controller で手動で変更した設定がリセットされます。
コンテナサービス管理コンソールにログオンします。
ログとモニタリング タブで
logtail-dsを見つけて、アップグレード をクリックします。更新 ダイアログボックスで、OK をクリックします。
Logtail を最新バージョンにアップグレードできない場合は、Kubernetes クラスターのバージョンが古すぎる可能性があります。先に Kubernetes クラスターをアップグレードするか、手動アップグレードを使用してください。
アップグレード後、コンテナサービス管理コンソールで logtail-ds Pod のステータスを確認できます。すべての logtail-ds Pod が Running 状態であれば、アップグレードは成功です。
手動アップグレード
手動アップグレードでは Logtail コンポーネントの最新バージョンに基づいて設定が更新されないため、一部の機能最適化を利用できない場合があります。
手動アップグレードの対象は logtail-ds と alibaba-log-controller です。ほとんどの場合、新しい Logtail バージョンの収集機能を利用するには、logtail-ds をアップグレードするだけで十分です。新しい Logtail CRD が提供する収集機能を利用するには、alibaba-log-controller をアップグレードする必要があります。次の手順では logtail-ds を例に説明します。
コンテナサービス管理コンソールにログオンします。
ワークロード > Daemon Sets を選択します。
説明alibaba-log-controller をアップグレードするには、ワークロード > 展開 を選択します。 次に、kube-system 名前空間で alibaba-log-controller を見つけ、アップグレードを完了します。
名前空間 を kube-system に設定し、
logtail-dsの 編集 をクリックします。次の環境変数が存在するかどうかを確認します。
ALIYUN_LOGTAIL_CONFIG、ALIYUN_LOGTAIL_USER_ID、ALIYUN_LOGTAIL_USER_DEFINED_ID の環境変数が存在しない場合、Logtail のバージョンが古すぎる可能性があります。Logtail をアップグレードしてください。
イメージバージョン には、イメージバージョンの選択 をクリックします。
イメージバージョン ダイアログボックスで、最新バージョンをクリックし、OK をクリックします。
ページの右側で、更新 をクリックします。
アップグレード後、コンテナサービス管理コンソールで
logtail-dsPod のステータスを確認できます。すべてのlogtail-dsPod が Running 状態であれば、アップグレードは成功です。
セルフマネージドクラスター
最新の Logtail コンポーネントをインストールしてアップグレードすることを推奨します。logtail-ds や alibaba-log-controller などの一部コンポーネントのイメージバージョン番号のみを更新した場合、アップグレードに失敗する可能性があります。
アップグレードを完了するには、Logtail コンポーネントを再度インストールしてください。
特定のバージョンにロールバックするには、次の手順を実行します。
アップグレード前にバックアップした YAML ファイルには冗長な情報が含まれています。これらのファイルを使用して Logtail の設定を復元するには、冗長な情報を手動で削除する必要があります。この操作には kubectl-neat ツールを使用できます。削除が必要なフィールドは metadata.creationTimestamp、metadata.generation、metadata.resourceVersion、metadata.uid、および status です。
ビジネス要件に基づいて、アップグレード後に作成された新しい Logtail 設定を保持するかどうかを判断します。
保持しない場合は、アップグレード後に作成された新しい Logtail 設定を削除できます。
バックアップファイルから冗長な情報を削除します。
cat logtail-ds.yaml | kubectl-neat > neat-logtail-ds.yaml cat alibaba-log-controller.yaml | kubectl-neat > neat-alibaba-log-controller.yaml cat aliyunlogconfigs-crd.yaml | kubectl-neat > neat-aliyunlogconfigs-crd.yaml cat alibaba-log-configuration.yaml | kubectl-neat > neat-alibaba-log-configuration.yaml cat aliyunlogconfigs-cr.yaml | kubectl-neat > neat-aliyunlogconfigs-cr.yaml整理したバックアップファイルを適用して、Logtail の設定を復元します。
kubectl apply -f neat-logtail-ds.yaml kubectl apply -f neat-alibaba-log-controller.yaml kubectl apply -f neat-aliyunlogconfigs-crd.yaml kubectl apply -f neat-alibaba-log-configuration.yaml kubectl apply -f neat-aliyunlogconfigs-cr.yaml
Logtail コンポーネントのアンインストール
ご利用のクラスターに応じて、アンインストール方法を選択してください。ACK クラスターが Simple Log Service と同じ Alibaba Cloud アカウントに属している場合は、ACK クラスター向けのアンインストール方法を参照してください。セルフマネージドクラスターの場合、または ACK クラスターが Simple Log Service とは異なる Alibaba Cloud アカウントに属している場合は、セルフマネージドクラスター向けのアンインストール方法を参照してください。
ACK クラスター
コンテナサービス管理コンソールにログインします。
ログとモニタリング タブで、
logtail-dsを見つけ、アンインストール をクリックします。画面の指示に従い、OK をクリックしてアンインストールを完了します。
セルフマネージドクラスター
kubectl delete -R -f result コマンドを実行して、logtail-ds や alibaba-log-controller などのインストール済みコンポーネントをアンインストールします。
このコマンドは result ディレクトリ内のすべてのリソースを再帰的に削除します。ディレクトリに他のリソースが含まれている場合は、注意して使用してください。
クラスターに関するよくある質問
複数の Kubernetes クラスターで 1 つの Simple Log Service プロジェクトを共有するにはどうすればよいですか?
複数のクラスターから同じ Simple Log Service プロジェクトにコンテナログを収集する場合は、最初のクラスターに Simple Log Service コンポーネントをインストールしたときと同じインストールパラメータを使用してください。
Logtail ログを表示するにはどうすればよいですか?
Logtail ログは、Logtail コンテナ内の /usr/local/ilogtail/ ディレクトリに保存されます。ファイル名は ilogtail.LOG および logtail_plugin.LOG です。
Logtail コンテナの標準出力には意味がありません。次の標準出力は無視してください:
start umount useless mount points, /shm$|/merged$|/mqueue$
umount: /logtail_host/var/lib/docker/overlay2/3fd0043af174cb0273c3c7869500fbe2bdb95d13b1e110172ef57fe840c82155/merged: must be superuser to unmount
umount: /logtail_host/var/lib/docker/overlay2/d5b10aa19399992755de1f85d25009528daa749c1bf8c16edff44beab6e69718/merged: must be superuser to unmount
umount: /logtail_host/var/lib/docker/overlay2/5c3125daddacedec29df72ad0c52fac800cd56c6e880dc4e8a640b1e16c22dbe/merged: must be superuser to unmount
......
xargs: umount: exited with status 255; aborting
umount done
start logtail
ilogtail is running
logtail status:
ilogtail is runningKubernetes クラスター内の Simple Log Service コンポーネントのステータスを確認するにはどうすればよいですか?
次のコマンドを実行します:
kubectl get deploy alibaba-log-controller -n kube-system
kubectl get ds logtail-ds -n kube-systemalibaba-log-controller が起動に失敗します。どうすればよいですか?
以下の点を確認してください:
Kubernetes クラスターのマスターノードでインストールコマンドを実行していること。
インストールコマンドのパラメータにクラスター ID を入力していること。
上記のいずれかの理由でインストールが失敗した場合は、
kubectl delete deployment alibaba-log-controller -n kube-system; kubectl delete daemonset logtail-ds -n kube-systemコマンドを実行して作成されたリソースを削除してから、インストールコマンドを再度実行してください。
Kubernetes クラスター内の Logtail-ds DaemonSet のステータスを確認するにはどうすればよいですか?
kubectl get ds -n kube-system コマンドを実行して、Logtail-ds DaemonSet のステータスを確認してください。
デフォルトでは、Logtail コンテナは kube-system 名前空間に存在します。
Logtail の運用ログを表示するにはどうすればよいですか?
Logtail の運用ログは /usr/local/ilogtail/ ディレクトリに保存されます。ファイル名は ilogtail.LOG で、ローテーションされたファイルは圧縮されて ilogtail.LOG.x.gz として保存されます。たとえば、次のコマンドを実行してログを表示できます:
kubectl exec logtail-ds-gb92k -n kube-system tail /usr/local/ilogtail/ilogtail.LOG次の結果が返されます:
[2018-02-05 06:09:02.168693] [INFO] [9] [build/release64/sls/ilogtail/LogtailPlugin.cpp:104] logtail plugin Resume:start
[2018-02-05 06:09:02.168807] [INFO] [9] [build/release64/sls/ilogtail/LogtailPlugin.cpp:106] logtail plugin Resume:success
[2018-02-05 06:09:02.168822] [INFO] [9] [build/release64/sls/ilogtail/EventDispatcher.cpp:369] start add existed check point events, size:0
[2018-02-05 06:09:02.168827] [INFO] [9] [build/release64/sls/ilogtail/EventDispatcher.cpp:511] add existed check point events, size:0 cache size:0 event size:0 success count:0Pod 内の Logtail を再起動するにはどうすればよいですか?
次のコマンドを実行して Logtail を停止してください。コマンド内の logtail-ds-gb92k は Pod 名で、kube-system は名前空間です。実際の値に置き換えてください。
kubectl exec logtail-ds-gb92k -n kube-system /etc/init.d/ilogtaild stop次の結果は、Logtail が停止されたことを示します:
kill process Name: ilogtail pid: 7
kill process Name: ilogtail pid: 9
stop success次のコマンドを実行して Logtail を開始してください。コマンド内の logtail-ds-gb92k は Pod 名で、kube-system は名前空間です。実際の値に置き換えてください。
kubectl exec logtail-ds-gb92k -n kube-system /etc/init.d/ilogtaild start次の結果は、Logtail が開始されたことを示します:
ilogtail is running