Simple Log Service (SLS) プロジェクトのサーバーログを収集するには、まずターゲットサーバーに Logtail クライアントをインストールする必要があります。このトピックでは、ターゲットサーバーで Logtail をインストール、実行、アップグレード、アンインストールする方法について説明します。
概要
Logtail は、サーバーの種類に基づいて 2 種類のシナリオで使用できます。
ホストシナリオ:物理サーバーや Elastic Compute Service (ECS) インスタンスなどの従来のコンピューティング環境に適用されます。
コンテナシナリオ:アプリケーションが Kubernetes コンテナ化プラットフォームにデプロイされているビジネスシナリオに適用されます。
ご利用のサーバー環境に基づいて適切な方法を選択してください。手順と構成要件はシナリオによって異なります。ハイブリッド環境の場合は、各環境で個別にインストールと構成を完了する必要があります。
ホストシナリオ
Logtail のインストール
ワンクリックインストールまたは手動インストールを使用して Logtail をインストールします。ワンクリックインストールは、プロジェクトと同じリージョンにあり、同じ Alibaba Cloud アカウントに属する ECS インスタンスを使用する場合にのみサポートされます。それ以外の場合は、手動で Logtail をインストールする必要があります。
ワンクリックインストール
SLS を使用すると、ワンクリックで ECS インスタンスに Logtail をインストールできます。この機能は CloudOps Orchestration Service (OOS) を使用し、ECS インスタンスにログインして手動でインストール手順を実行する必要がありません。Alibaba Cloud アカウントでログインすると、デフォルトで必要なすべての権限が付与されており、直接操作を実行できます。
Resource Access Management (RAM) ユーザーでログインする場合は、Alibaba Cloud アカウントに連絡して、OOS リソースを操作する権限を付与してもらいます。Alibaba Cloud アカウントは 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 名の前にある
アイコンをクリックして展開します。次に、[データ収集] の後に表示される
アイコンをクリックします。表示されたダイアログボックスで、テキストログ収集テンプレートを選択し、[今すぐ統合] をクリックします。SLS は、正規表現、単一行、複数行テンプレートなど、さまざまなテキストログテンプレートを提供します。これらのテンプレートは、ログ解析プラグインのみが異なります。テンプレート内でログ解析プラグインを追加または削除することもできます。ログの特性に基づいてテンプレートを選択するか、任意のテキストログテンプレートを選択して、必要に応じてプラグインを構成します。
[マシングループ構成] ページで、[シナリオ] を [サーバー] に、[インストール環境] を [ECS] に設定し、[マシングループの作成] をクリックします。
[マシングループの作成] パネルで、プロジェクトと同じリージョンにある 1 つ以上の ECS インスタンスを選択します。[インストールしてマシングループを作成] をクリックします。インストールが完了するのを待ち、マシングループの [名前] を指定して、[OK] をクリックします。
インストールが失敗するか、待機状態のままの場合は、ECS インスタンスがプロジェクトと同じリージョンにあるかどうかを確認してください。
インストール後、 ページに移動します。新しいマシングループをクリックします。 セクションで、[ハートビート] ステータスを確認します。ステータスが OK の場合、マシングループは作成されています。
手動インストール
次の表からダウンロードおよびインストール方法を選択します。
サンプルコードの ${region_id} は、SLS プロジェクトが配置されているリージョンです。必要に応じて置き換えてください。詳細については、「リージョンとエンドポイント」をご参照ください。たとえば、中国 (杭州) の ${region_id} は cn-hangzhou です。
低スペックのマシンや古いオペレーティングシステムを使用している場合、Logtail 2.0 のインストール時に互換性の問題が発生し、ソフトウェアが正しく実行されないことがあります。バージョン 1.8.7 をダウンロードし、
./logtail.sh install ${region_id} -v 1.8.7コマンドを実行してインストールすることを推奨します。
ホストタイプ | アーキテクチャ | ダウンロード方法 | インストール方法 |
Linux
| ARM | インターネット接続のあるホストの場合は、直接ダウンロードします: | ネットワークタイプに基づいてインストールコマンドを選択します: |
x86-64 | |||
ARM | オフラインホストの場合は、まずインターネット接続のあるサーバーでインストールスクリプトとパッケージをダウンロードします: | インストールスクリプトとパッケージを Logtail をインストールしたいサーバーにコピーします。次に、ネットワークタイプに基づいてインストールコマンドを選択します: | |
x86-64 | オフラインホストの場合は、まずインターネット接続のあるサーバーでインストールスクリプトとパッケージをダウンロードします: | ||
Windows 説明
| 32 ビット | 中国リージョン: Logtail 32 ビットインストールパッケージ | インストールパッケージを解凍します。Windows PowerShell を管理者として実行し、パッケージを解凍したディレクトリである |
中国国外のリージョン: Logtail 32 ビットインストールパッケージ | |||
64 ビット | 中国リージョン: Logtail 64 ビットインストールパッケージ | ||
中国国外のリージョン: Logtail 64 ビットインストールパッケージ |
Logtail の一括インストール
次のいずれかの方法を使用して、Logtail を一括でインストールします。
OOS オーケストレーション:この方法は、権限要件のあるシナリオに適しています。高い同時実行性をサポートし、大規模なバッチ操作に最適です。詳細については、「OOS を使用して Logtail を一括でインストールまたはアップグレードする」をご参照ください。
ECS クラウドアシスタント:この方法は使いやすいです。コマンドを実行して一時的なタスクを実行します。手順は次のとおりです。
ECS コンソール - ECS クラウドアシスタントに移動します。
上部のナビゲーションバーで、管理したいリソースのリージョンとリソースグループを選択します。
[ECS クラウドアシスタント] ページの右上隅にある [コマンドの作成/実行] をクリックします。
[コマンドの作成] パネルで、[コマンド内容] フィールドにインストールコマンドを入力します。この例では、インターネットインストール方法を使用します。その他のインストールコマンドについては、「Logtail のインストール」をご参照ください。

ここで使用するインストールコマンドは次のとおりです:
#!/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重要Logtail をインストールした後、ECS インスタンスのネットワークタイプをクラシックネットワークから VPC に切り替える場合は、Logtail 構成を更新する必要があります。詳細については、「ECS インスタンスをクラシックネットワークから VPC に切り替えた後、マシングループ構成を更新するにはどうすればよいですか?」をご参照ください。
[インスタンスの選択] セクションで、ターゲットインスタンスのエージェントステータスが [正常] であることを確認します。ステータスが正常でない場合は、「クラウドアシスタントエージェントのインストール」を参照してクラウドアシスタントをインストールします。ターゲットインスタンスを選択し、[実行] をクリックします。実行ステータスは [成功] になります。実行が失敗した場合は、「実行結果の表示と一般的な問題の修正」をご参照ください。
Logtail の開始と停止
Linux
Logtail の開始
sudo /etc/init.d/ilogtaild startLogtail の停止
sudo /etc/init.d/ilogtaild stop
Windows
ターゲットサーバーにログインします。
を選択します。
[サービス] ダイアログボックスで、対応するサービスを選択します。
バージョン 0.x.x.x の場合、LogtailWorker サービスを選択します。
バージョン 1.0.0.0 以降の場合、LogtailDaemon サービスを選択します。
右クリックして、[開始]、[停止]、[再起動] などの目的の操作を選択します。
Logtail のステータスとバージョンの確認
Linux
Logtail のステータスの確認
sudo /etc/init.d/ilogtaild status コマンドを実行して Logtail のステータスを確認します。システムが ilogtail is running を返した場合、Logtail は実行中です。Logtail のステータスが実行中でないことを示している場合は、アンインストールしてから再インストールしてください。
Logtail のバージョンの確認
Logtail は、バージョン情報を /usr/local/ilogtail/app_info.json ファイルの logtail_version フィールドに保存します。次のコマンドを実行して、Logtail のバージョン情報を表示します。
cat /usr/local/ilogtail/app_info.json次の結果が返されます:
{
"logtail_version" : "0.16.30",
}Windows
Logtail のステータスの確認
Logtail のステータスを確認して、ターゲットサーバーに Logtail がインストールされているかどうかを判断します。
[ファイル名を指定して実行] ウィンドウを開き、
services.mscと入力して、[サービス] ウィンドウを開きます。LogtailDaemon サービス (Logtail 1.0.0.0 以降) または LogtailWorker サービス (Logtail 0.x.x.x) の実行ステータスを確認します。
実行中と表示されている場合、Logtail は実行中です。
Logtail のバージョンの確認
インストールパスにある app_info.json ファイルの logtail_version フィールドで Logtail のバージョンを確認します。
たとえば、次の内容は Logtail のバージョンが 1.0.0.0 であることを示しています。
{
"logtail_version" : "1.0.0.0"
}Logtail のアップグレード
Linux
Logtail をアップグレードするには、
upgradeコマンドを使用します。installコマンドを使用すると、上書きインストールが実行され、元の構成は失われます。アップグレード中、Logtail は一時的に停止します。アップグレードが完了すると、Logtail は自動的に起動し、起動項目として登録されます。アップグレードは必要なファイルのみを上書きします。構成ファイルとチェックポイントファイルは保持され、アップグレード中にログが失われないようにします。
サンプルコードの ${region_id} は、SLS プロジェクトが配置されているリージョンです。必要に応じて置き換えてください。詳細については、「リージョンとエンドポイント」をご参照ください。たとえば、中国 (杭州) の ${region_id} は cn-hangzhou です。
次の表から Logtail のアップグレード方法を選択します。
オペレーティングシステム | ダウンロード方法 | アップグレード方法 |
ARM および x86-64 | インターネット接続のあるホストの場合: | ダウンロードが完了したら、アップグレードコマンドを実行します: |
ARM | オフラインホストの場合は、まずインターネット接続のあるサーバーでインストールスクリプトとパッケージをダウンロードします:
| インストールスクリプトとパッケージを Logtail をアップグレードしたいサーバーにコピーします。次に、次のアップグレードコマンドを実行します: |
x86-64 | オフラインホストの場合は、まずインターネット接続のあるサーバーでインストールスクリプトとパッケージをダウンロードします: |
次の情報が表示された場合、アップグレードは成功です。
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
アップグレード手順はインストール手順と同じです。最新のインストールパッケージをダウンロードして解凍し、手順に従ってインストールします。詳細については、「Logtail のインストール」をご参照ください。
アップグレードは、自動的にアンインストールして再インストールするのと同じです。元のインストールディレクトリの内容は削除されます。アップグレードする前にデータをバックアップしてください。
64 ビットの Windows オペレーティングシステムで、32 ビットの Logtail を 64 ビットバージョンにアップグレードする場合は、まず 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 またはコマンドプロンプトを管理者として実行します。インストールパッケージを解凍したディレクトリである 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:構成したユーザー ID ファイルを保存します。
コンテナシナリオ
Logtail コンポーネントのインストール
ACK クラスターを使用し、クラスターが SLS と同じ Alibaba Cloud アカウントに属している場合は、ACK クラスターの手順に従います。セルフマネージドクラスターを使用している場合、または ACK クラスターと SLS が異なる Alibaba Cloud アカウントに属している場合は、セルフマネージドクラスターの手順に従います。
ACK クラスターへのインストール
この操作は、ACK 専用クラスターおよび ACK マネージドクラスターにのみ適用されます。
既存の ACK クラスターへの Logtail コンポーネントのインストール
ACK コンソールにログインします。
[クラスター] ページで、ターゲットクラスターを見つけ、[操作] 列で を選択します。
[ログとモニタリング] タブで、logtail-ds を見つけて [インストール] をクリックします。
インストールが完了すると、SLS は自動的に k8s-log-${your_k8s_cluster_id} という名前のプロジェクトを作成します。
新しい ACK クラスターの作成時に Logtail コンポーネントをインストールする
ACK コンソールにログインします。
左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、[Kubernetes クラスターの作成] をクリックします。
[Log Service を有効にする] を選択します。
説明このセクションでは、SLS を有効にするための主要な手順のみを説明します。クラスターの作成方法の詳細については、「ACK マネージドクラスターの作成」をご参照ください。
[Log Service を有効にする] を選択すると、プロジェクトを作成するためのプロンプトが表示されます。SLS でのログの構成の詳細については、「プロジェクト」をご参照ください。次の 2 つの方法のいずれかでプロジェクトを作成します。
[プロジェクトの選択]
収集されたコンテナログを管理するために既存のプロジェクトを選択します。

[プロジェクトの作成]
SLS は、収集されたコンテナログを管理するために自動的にプロジェクトを作成します。
ClusterIDは、新しい Kubernetes クラスターの一意の識別子です。
インストールが完了すると、選択したプロジェクトに次の SLS リソースが自動的に作成されます。
リソースタイプ | リソース名 | 目的 | 例 |
マシングループ | k8s-group-${your_k8s_cluster_id} | logtail-daemonset のマシングループで、主にログ収集シナリオに使用されます。 | k8s-group-my-cluster-123 |
k8s-group-${your_k8s_cluster_id}-statefulset | logtail-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 は削除できます。削除後、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構成ファイルを変更します。メトリックの説明
values.yaml
# ===================== 必須フィールド ===================== # 宛先プロジェクトの名前。 SlsProjectName: # プロジェクトが配置されているリージョン。 Region: # プロジェクトを所有する Alibaba Cloud アカウントの ID。ID は二重引用符 ("") で囲みます。 AliUid: "11099" # Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey ID と AccessKey Secret。AliyunLogFullAccess 権限が必要です。 AccessKeyID: AccessKeySercret: # カスタムクラスター ID。名前には大文字、小文字、数字、ハイフン (-) のみを含めることができます。 ClusterID: # ========================================================== # メトリック収集コンポーネントを有効にするかどうか。オプション値:true、false。デフォルト値:true。 SlsMonitoring: true # ネットワークタイプ。オプション値:Internet、Intranet。デフォルト値:Internet。 Net: Internet # コンテナランタイムが containerd であるかどうか。オプション値:true、false。デフォルト値:false。 SLS_CONTAINERD_USED: trueSlsProjectNameLogtail がログをアップロードするプロジェクトの名前。
Regionプロジェクトが配置されているリージョンの ID。たとえば、中国 (杭州) のリージョン ID は
cn-hangzhouです。詳細については、「リージョンとエンドポイント」をご参照ください。AliUidプロジェクトを所有する Alibaba Cloud アカウントの ID。ID は二重引用符 ("") で囲みます。例:
AliUid: "11**99"。ID の取得方法については、「Simple Log Service を所有する Alibaba Cloud アカウントの ID を取得する」をご参照ください。AccessKeyIDプロジェクトを所有する Alibaba Cloud アカウントの AccessKey ID。RAM ユーザーの AccessKey を使用し、RAM ユーザーに AliyunLogFullAccess 権限を付与することを推奨します。詳細については、「RAM ユーザーの作成と権限付与」をご参照ください。
AccessKeySecretプロジェクトを所有する Alibaba Cloud アカウントの AccessKey Secret。RAM ユーザーの AccessKey を使用し、RAM ユーザーに AliyunLogFullAccess 権限を付与することを推奨します。詳細については、「RAM ユーザーの作成と権限付与」をご参照ください。
ClusterIDカスタムクラスター ID。名前には大文字、小文字、数字、ハイフン (-) のみを含めることができます。このパラメーターは、後続の操作で
${your_k8s_cluster_id}に対応します。異なる Kubernetes クラスターに同じクラスター ID を構成しないでください。SlsMonitoringクラスターメトリックデータ収集を有効にするためのスイッチ。オプションは次のとおりです:
true (デフォルト):有効。
false:無効。
NetLogtail データ転送のネットワークタイプ。クラスターが Alibaba Cloud 内部ネットワークにアクセスできない場合は、インターネットを使用します。オプションは次のとおりです:
Internet (デフォルト):インターネット。
Intranet:内部ネットワーク。
SLS_CONTAINERD_USEDコンテナランタイムが containerd であるかどうかを指定します。オプションは次のとおりです:
true:はい。
false (デフォルト):いいえ。
containerd をコンテナランタイムとして使用するセルフマネージド Kubernetes クラスターで、このパラメーターが有効になっていない場合、Logtail はログを収集しない可能性があります。
Logtail とその依存コンポーネントをインストールします。
説明echo "$(uname -s | tr '[:upper:]' '[:lower:]')-$(uname -m)"コマンドを実行して、ホストのOS-architectureをクエリします。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
インストールが完了すると、プロジェクトに次の SLS リソースが自動的に作成されます。作成が失敗した場合は、変更した values.yaml ファイルを注意深く確認してください。
リソースタイプ | リソース名 | 目的 | 例 |
マシングループ | k8s-group-${your_k8s_cluster_id} | logtail-daemonset のマシングループで、主にログ収集シナリオに使用されます。 | k8s-group-my-cluster-123 |
k8s-group-${your_k8s_cluster_id}-statefulset | logtail-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 は削除できます。削除後、alibaba-log-controller のランタイムログは収集されなくなります。この Logstore の課金は通常の Logstore と同じです。詳細については、「書き込みデータ量による課金項目」をご参照ください。 | なし |
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 コンポーネントに関連する説明ファイルをバックアップします。
重要アップグレード前に大幅な収集遅延が存在する場合、アップグレードによって少量のログが失われる可能性があります。
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 クラスターを使用し、クラスターが SLS と同じ Alibaba Cloud アカウントに属している場合は、ACK クラスターの手順に従います。セルフマネージドクラスターを使用している場合、または ACK クラスターと SLS が異なる Alibaba Cloud アカウントに属している場合は、セルフマネージドクラスターの手順に従います。
ACK クラスターでのアップグレード
自動アップグレード方法を使用することを推奨します。logtail-ds DaemonSet または alibaba-log-controller デプロイメントで環境変数などのパラメーターを変更した場合は、変更がリセットされないように手動アップグレード方法を使用してください。
自動アップグレード
重要自動アップグレードは、logtail-ds および alibaba-log-controller で手動で変更した構成をリセットします。
ACK コンソールにログインします。
[ログとモニタリング] タブで、logtail-ds を見つけて [アップグレード] をクリックします。
[コンポーネントのアップグレード] ダイアログボックスで、[OK] をクリックします。
重要最新バージョンの Logtail にアップグレードできない場合、Kubernetes クラスターのバージョンが古すぎる可能性があります。まず Kubernetes クラスターをアップグレードするか、手動アップグレード方法を使用してください。
アップグレードを実行した後、ACK コンソールで logtail-ds Pod のステータスを表示します。すべての logtail-ds Pod が実行中の状態であれば、アップグレードは成功です。
[クラスター] ページで、ターゲットクラスターを見つけ、[操作] 列で を選択します。
手動アップグレード
重要手動アップグレードでは、最新の Logtail コンポーネントに基づいて構成が更新されません。一部の機能最適化が利用できない場合があります。
手動アップグレードには、logtail-ds と alibaba-log-controller のアップグレードが含まれます。通常、新しい Logtail バージョンが提供する収集機能を取得するには、logtail-ds をアップグレードするだけで十分です。新しい Logtail CRD メソッドの収集機能を取得する必要がある場合は、alibaba-log-controller をアップグレードする必要があります。次の手順では、logtail-ds を例として使用します。
ACK コンソールにログインします。
を選択します。
説明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 のバージョンが古すぎる可能性があります。して。
[イメージタグ] の横にある [イメージタグの選択] をクリックします。
[イメージタグ] ダイアログボックスで、最新バージョンをクリックし、[OK] をクリックします。
ページの右側にある [更新] をクリックします。
アップグレードを実行した後、ACK コンソールで logtail-ds Pod のステータスを表示します。すべての logtail-ds Pod が実行中の状態であれば、アップグレードは成功です。
[クラスター] ページで、ターゲットクラスターを見つけ、[操作] 列で を選択します。
セルフマネージドクラスターでのアップグレード
説明最新の Logtail コンポーネントをインストールしてアップグレードすることを推奨します。logtail-ds や alibaba-log-controller などの一部のコンポーネントのイメージバージョンのみを更新すると、アップグレードが失敗する可能性があります。
Logtail コンポーネントを再インストールして、自動アップグレードを完了します。詳細については、「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 クラスターを使用し、クラスターが SLS と同じ Alibaba Cloud アカウントに属している場合は、ACK クラスターの手順に従います。セルフマネージドクラスターを使用している場合、または ACK クラスターと SLS が異なる Alibaba Cloud アカウントに属している場合は、セルフマネージドクラスターの手順に従います。
ACK クラスターからのアンインストール
ACK コンソールにログインします。
[ログとモニタリング] タブで、logtail-ds を見つけて [アンインストール] をクリックします。
画面の指示に従い、[OK] をクリックしてアンインストールを完了します。
[クラスター] ページで、ターゲットクラスターを見つけ、[操作] 列で を選択します。
セルフマネージドクラスターからのアンインストール
logtail-ds や alibaba-log-controller などのインストール済みコンポーネントをアンインストールするにはどうすればよいですか?
kubectl delete -R -f result を実行して、logtail-ds や alibaba-log-controller などのインストール済みコンポーネントをアンインストールします。
このコマンドは、result ディレクトリ内のすべてのリソースを再帰的に削除します。ディレクトリに他のリソースが含まれている場合は、注意して使用してください。
クラスターに関するよくある質問
複数の Kubernetes クラスターで 1 つの SLS プロジェクトを使用するにはどうすればよいですか?
複数のクラスターから同じ SLS プロジェクトにコンテナログを収集したい場合は、他のクラスターの SLS コンポーネントのインストールパラメーターを、最初にコンポーネントをインストールしたときに使用したものと同じに設定します。
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 クラスター内の SLS コンポーネントのステータスを確認するにはどうすればよいですか?
次のコマンドを実行して確認します。
kubectl get deploy alibaba-log-controller -n kube-system
kubectl get ds logtail-ds -n kube-systemalibaba-log-controller が起動に失敗した場合はどうすればよいですか?
これらのインストール手順に従ったことを確認してください。
Kubernetes クラスターのマスターノードでインストールコマンドを実行します。
インストールコマンドのパラメーターとしてクラスター ID を入力します。
これらの問題でインストールが失敗した場合は、kubectl delete -f deploy コマンドを実行して生成されたインストールテンプレートを削除し、再度インストールコマンドを実行します。
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:0特定の Pod で Logtail を再起動するにはどうすればよいですか?
Logtail を停止します。
logtail-ds-gb92kはコンテナ名、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 successLogtail を開始します。
logtail-ds-gb92kはコンテナ名、kube-systemは名前空間です。必要に応じて置き換えてください。kubectl exec logtail-ds-gb92k -n kube-system /etc/init.d/ilogtaild start
以下の結果は、Logtail が起動したことを示します。
ilogtail is running