Simple Log Service プロジェクトを使用してサーバーログを収集するには、まずターゲットサーバーに Logtail クライアントをインストールする必要があります。このトピックでは、ターゲットサーバーで Logtail をインストール、実行、アップグレード、アンインストールする方法について説明します。
概要
Logtail は、サーバーの種類に基づいて、主に 2 つのシナリオで使用できます。
ホストシナリオ: 物理サーバーや Elastic Compute Service (ECS) インスタンスなどの従来のコンピューティング環境向け。
コンテナシナリオ: アプリケーションが Kubernetes コンテナ化プラットフォームにデプロイされているビジネスシナリオ向け。
サーバー環境に基づいてソリューションを選択してください。手順と構成要件はシナリオによって異なります。ハイブリッドデプロイメントの場合は、各環境のインストールと構成を個別に完了する必要があります。
ホストシナリオ
Logtail のインストール
Logtail は、ワンクリックインストールまたは手動インストールの方法でインストールできます。ワンクリックインストールは、プロジェクトと同じリージョンにあり、同じ Alibaba Cloud アカウントに属する ECS インスタンスでのみ利用できます。それ以外の場合は、Logtail を手動でインストールする必要があります。
ワンクリックインストール
Simple Log Service は、ECS インスタンスへの Logtail のワンクリックインストールを提供します。この機能は CloudOps Orchestration Service (OOS) のオーケストレーション機能を使用するため、ECS インスタンスにログインして手動でインストールする必要はありません。Alibaba Cloud アカウントでログインすると、デフォルトで必要なすべての権限が付与され、操作を直接実行できます。
Resource Access Management (RAM) ユーザーでログインする場合は、Alibaba Cloud アカウントのオーナーに OOS リソースを操作する権限を付与するように依頼してください。アカウントのオーナーは、システムポリシーまたはカスタムポリシーを使用して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 名の前にある
アイコンをクリックして展開し、次に [データ取り込み] の後にある
アイコンをクリックします。表示されたダイアログボックスで、テキストログ取り込みテンプレートを選択し、[今すぐ取り込み] をクリックします。Simple Log Service は、正規表現、単一行、複数行など、さまざまなテキストログテンプレートを提供します。これらのテンプレートは、ログ解析プラグインのみが異なります。テンプレート内でログ解析プラグインを追加または削除することもできます。収集したいログの特性に基づいてテンプレートを選択するか、任意のテキストログテンプレートを選択してから、ログの特性に基づいてプラグインを構成できます。
[マシングループ設定] ページで、[ホストシナリオ] と [ECS] を選択します。次に、[マシングループの作成] をクリックします。
[マシングループの作成] パネルで、プロジェクトと同じリージョンにある 1 つ以上の ECS インスタンスを選択します。[インストールしてマシングループとして作成] をクリックします。インストールが完了するまで待ちます。マシングループの [名前] を入力し、[OK] をクリックします。
インストールが失敗した場合、または待機状態のままの場合は、ECS リージョンがプロジェクトリージョンと同じであることを確認してください。
インストール後、 ページに移動します。新しいマシングループをクリックします。 セクションで、[ハートビート] のステータスを表示します。ステータスが [OK] の場合、マシングループは正常に作成されています。
手動インストール
次の表に基づいて、Logtail をダウンロードしてインストールする方法を選択します。
サンプルコードでは、${region_id} は Simple Log Service プロジェクトが配置されているリージョンを表します。実際のリージョン ID に置き換えてください。詳細については、「利用可能なリージョン」をご参照ください。たとえば、中国 (杭州) の ${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 は、次の 2 つの方法のいずれかでバッチインストールできます。
OOS オーケストレーション: 特定の権限要件があるシナリオに適しています。高い同時実行性を提供し、大規模なバッチ操作に最適です。詳細については、「OOS を使用して Logtail をバッチでインストールまたはアップグレードする」をご参照ください。
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 のバージョンの表示
Logtail のバージョンは、インストールパスの app_info.json ファイルの logtail_version フィールドで表示できます。
たとえば、次の内容は Logtail のバージョンが 1.0.0.0 であることを示します。
{
"logtail_version" : "1.0.0.0"
}Logtail のアップグレード
Linux
Logtail をアップグレードするときは、
upgradeコマンドを使用します。installコマンドを使用すると、コマンドは上書きインストールを実行し、元の構成は失われます。アップグレード中、Logtail は一時的に停止します。アップグレードが完了すると、Logtail は自動的に起動し、起動時に起動するように登録されます。アップグレードでは、必要なファイルのみが上書きされます。構成ファイルとチェックポイントファイルは保持され、アップグレード中にログが失われないようにします。
サンプルコードでは、${region_id} は Simple Log Service プロジェクトが配置されているリージョンを表します。実際のリージョン ID に置き換えてください。詳細については、「利用可能なリージョン」をご参照ください。たとえば、中国 (杭州) の ${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} を実際のリージョン 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 コンポーネントのインストール
Simple Log Service プロジェクトと同じ Alibaba Cloud アカウントに属する ACK クラスターを使用する場合は、ACK クラスターのインストール方法に従ってください。それ以外の場合は、自己管理クラスターのインストール方法に従ってください。
ACK クラスターのインストール
この操作は、ACK 専用クラスターおよび ACK マネージドクラスターにのみ適用されます。
既存の ACK クラスターに Logtail コンポーネントをインストールする
ACK コンソールにログインします。
[クラスター] ページで、ターゲットクラスターを見つけ、[アクション] 列で を選択します。
[ログとモニタリング] タブで [logtail-ds] を見つけ、[インストール] をクリックします。
インストールが完了すると、Simple Log Service は自動的に k8s-log-${your_k8s_cluster_id} という名前のプロジェクトを作成します。
ACK クラスターの作成時に Logtail コンポーネントをインストールする
ACK コンソールにログインします。
左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、[クラスターの作成] をクリックします。
[コンポーネント構成] ページで、[Log Service を使用] を選択します。
説明このステップでは、Simple Log Service を有効にするための重要なステップのみを説明します。クラスターの作成方法の詳細については、「ACK マネージドクラスターの作成」をご参照ください。
[Log Service を使用] を選択すると、プロジェクトを作成するプロンプトが表示されます。Simple Log Service でのログの整理方法の詳細については、「プロジェクト」をご参照ください。次の 2 つの方法のいずれかでプロジェクトを作成できます。
[既存のプロジェクトを使用]
既存のプロジェクトを選択して、収集されたコンテナログを管理できます。

新規プロジェクトの作成
Simple Log Service は、収集されたコンテナログを管理するためのプロジェクトを自動的に作成します。
ClusterIDは、新しい Kubernetes クラスターの一意の識別子です。
インストールが完了すると、選択したプロジェクトに次の Simple Log Service リソースが自動的に作成されます。
リソースタイプ | リソース名 | 機能 | 例 |
マシングループ | 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。二重引用符 ("") で囲む必要があります。 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 ユーザーを作成して権限を付与する」をご参照ください。
AccessKeySercretプロジェクトが属する 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)"コマンドを実行して、ホストのオペレーティングシステム-アーキテクチャを確認できます。k8s-custom-install.shでサポートされているオペレーティングシステム-アーキテクチャの組み合わせは、linux-386、linux-amd64、linux-arm、linux-arm64、linux-ppc64le、linux-s390x、および darwin-amd64 です。その他の要件がある場合は、チケットを送信してください。bash k8s-custom-install.sh; kubectl apply -R -f result
インストールが完了すると、プロジェクトに次の Simple Log Service リソースが自動的に作成されます。作成に失敗した場合は、変更した 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 コンポーネントに関連する説明ファイルをバックアップします。
重要数秒かかるアップグレード中に、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クラスターの種類に基づいてアップグレード方法を選択します。Simple Log Service プロジェクトと同じ Alibaba Cloud アカウントに属する ACK クラスターを使用する場合は、ACK クラスターのアップグレード方法に従ってください。それ以外の場合は、自己管理クラスターのアップグレード方法に従ってください。
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 のアンインストール
クラスターの種類に基づいてアンインストール方法を選択します。Simple Log Service プロジェクトと同じ Alibaba Cloud アカウントに属する ACK クラスターを使用する場合は、ACK クラスターのアンインストール方法に従ってください。それ以外の場合は、自己管理クラスターのアンインストール方法に従ってください。
ACK クラスターのアンインストール
ACK コンソールにログインします。
[ログとモニタリング] タブで [logtail-ds] を見つけ、[アンインストール] をクリックします。
画面の指示に従い、[OK] をクリックしてアンインストールを完了します。
自己管理クラスターのアンインストール
logtail-ds や alibaba-log-controller などのコンポーネントをアンインストールするにはどうすればよいですか?
kubectl delete -R -f result を実行して、logtail-ds や alibaba-log-controller などのインストール済みコンポーネントをアンインストールします。
このコマンドは、result ディレクトリ内のすべてのリソースを再帰的に削除します。ディレクトリに他のリソースが含まれている場合は、注意して使用してください。
クラスターに関するよくある質問
複数の Kubernetes クラスターで同じ 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 -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:0Pod 内で 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