13.2. ログストレージのインストール
OpenShift CLI (oc) または OpenShift Container Platform Web コンソールを使用して、OpenShift Container Platform クラスターにログストアをデプロイできます。
Logging 5.9 リリースに、OpenShift Elasticsearch Operator の更新バージョンは含まれていません。ロギング 5.8 でリリースされた OpenShift Elasticsearch Operator を現在使用している場合、Logging 5.8 の EOL まで引き続き Logging で機能します。OpenShift Elasticsearch Operator を使用してデフォルトのログストレージを管理する代わりに、Loki Operator を使用できます。Logging のライフサイクルの日付の詳細は、Platform Agnostic Operator を参照してください。
13.2.1. Loki ログストアのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
Loki Operator を使用して、OpenShift Container Platform クラスターに内部 Loki ログストアをデプロイできます。Loki Operator をインストールした後、シークレットを作成することで Loki オブジェクトストレージを設定し、LokiStack カスタムリソース (CR) を作成する必要があります。
13.2.1.1. Loki デプロイメントのサイズ リンクのコピーリンクがクリップボードにコピーされました!
Loki のサイズは 1x.<size> の形式に従います。この場合の 1x はインスタンスの数を、<size> は性能を指定します。
デプロイメントサイズの 1x の数は変更できません。
| 1x.demo | 1x.extra-small | 1x.small | 1x.medium | |
|---|---|---|---|---|
| Data transfer | デモ使用のみ | 100 GB/日 | 500 GB/日 | 2 TB/日 |
| 1 秒あたりのクエリー数 (QPS) | デモ使用のみ | 200 ミリ秒で 1 - 25 QPS | 200 ミリ秒で 25 - 50 QPS | 200 ミリ秒で 25 - 75 QPS |
| レプリケーション係数 | なし | 2 | 2 | 2 |
| 合計 CPU 要求 | なし | 仮想 CPU 14 個 | 仮想 CPU 34 個 | 仮想 CPU 54 個 |
| ルーラーを使用する場合の合計 CPU リクエスト | なし | 仮想 CPU 16 個 | 仮想 CPU 42 個 | 仮想 CPU 70 個 |
| 合計メモリー要求 | なし | 31 Gi | 67 Gi | 139 Gi |
| ルーラーを使用する場合の合計メモリーリクエスト | なし | 35Gi | 83 Gi | 171 Gi |
| 合計ディスク要求 | 40Gi | 430 Gi | 430 Gi | 590 Gi |
| ルーラーを使用する場合の合計ディスクリクエスト | 80Gi | 750Gi | 750Gi | 910Gi |
13.2.1.2. Web コンソールを使用してロギングと Loki Operator をインストールする リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform クラスターにログをインストールして設定するには、まずログストレージ用の Loki Operator などの Operator をインストールする必要があります。これは、Web コンソールの OperatorHub から実行できます。
前提条件
- サポートされているオブジェクトストア (AWS S3、Google Cloud Storage、Azure、Swift、Minio、OpenShift Data Foundation) にアクセスできる。
- 管理者権限がある。
- OpenShift Container Platform Web コンソールにアクセスできる。
手順
-
OpenShift Container Platform Web コンソールの Administrator パースペクティブで、Operators
OperatorHub に移動します。 Filter by keyword フィールドに Loki Operator と入力します。使用可能な Operator のリストで Loki Operator をクリックし、Install をクリックします。
重要Community Loki Operator は Red Hat ではサポートされていません。
Update channel として stable または stable-x.y を選択します。
注記stable チャネルは、Logging の最新リリースを対象とする更新のみを提供します。以前のリリースの更新を引き続き受信するには、サブスクリプションチャネルを stable-x.y に変更する必要があります。
x.yは、インストールしたログのメジャーバージョンとマイナーバージョンを表します。たとえば、stable-5.7 です。Loki Operator はグローバルオペレーターグループ namespace である
openshift-operators-redhatにデプロイする必要があるため、Installation mode と Installed Namespace がすでに選択されています。この namespace がない場合は、自動的に作成されます。Enable Operator-recommended cluster monitoring on this namespace. を選択します。
このオプションは、
Namespaceオブジェクトにopenshift.io/cluster-monitoring: "true"ラベルを設定します。クラスターモニタリングがopenshift-operators-redhatnamespace を収集できるように、このオプションを選択する必要があります。Update approval で Automatic を選択し、Install をクリックします。
サブスクリプションの承認ストラテジーが Automatic に設定されている場合、アップグレードプロセスは、選択したチャネルで新規 Operator バージョンが利用可能になるとすぐに開始します。承認ストラテジーが Manual に設定されている場合は、保留中のアップグレードを手動で承認する必要があります。
Red Hat OpenShift Logging Operator をインストールします。
-
OpenShift Container Platform Web コンソールで、Operators
OperatorHub をクリックします。 - 利用可能な Operator のリストから Red Hat OpenShift Logging を選択し、Install をクリックします。
- A specific namespace on the cluster が Installation Mode で選択されていることを確認します。
- Operator recommended namespace が Installed Namespace で openshift-logging になっていることを確認します。
Enable Operator recommended cluster monitoring on this namespace を選択します。
このオプションは、namespace オブジェクトに
openshift.io/cluster-monitoring: "true"ラベルを設定します。クラスターモニタリングがopenshift-loggingnamespace を収集できるように、このオプションを選択する必要があります。- Update Channel として stable-5.y を選択します。
Approval Strategy を選択します。
- Automatic ストラテジーにより、Operator Lifecycle Manager (OLM) は新規バージョンが利用可能になると Operator を自動的に更新できます。
- Manual ストラテジーには、Operator の更新を承認するための適切な認証情報を持つユーザーが必要です。
- Install をクリックします。
-
OpenShift Container Platform Web コンソールで、Operators
-
Operators
Installed Operators ページに移動します。All instances タブをクリックします。 - Create new ドロップダウンリストから、LokiStack を選択します。
YAML view を選択し、次のテンプレートを使用して
LokiStackCR を作成します。LokiStackCR の例apiVersion: loki.grafana.com/v1 kind: LokiStack metadata: name: logging-loki1 namespace: openshift-logging2 spec: size: 1x.small3 storage: schemas: - version: v13 effectiveDate: "<yyyy>-<mm>-<dd>" secret: name: logging-loki-s34 type: s35 credentialMode:6 storageClassName: <storage_class_name>7 tenants: mode: openshift-logging8 - 1
logging-lokiという名前を使用します。- 2
openshift-loggingnamespace を指定する必要があります。- 3
- デプロイメントサイズを指定します。ロギング 5.8 以降のバージョンでは、Loki の実稼働インスタンスでサポートされているサイズオプションは
1x.extra-small、1x.small、または1x.mediumです。 - 4
- ログストアシークレットの名前を指定します。
- 5
- 対応するストレージタイプを指定します。
- 6
- 任意のフィールド、Logging 5.9 以降。サポートされているユーザー設定値は、次のとおりです。static は、シークレットに保存された認証情報を使用する、サポートされているすべてのオブジェクトストレージタイプで使用できるデフォルトの認証モードです。token は、認証情報ソースから取得された有効期間の短いトークンです。このモードでは、オブジェクトストレージに必要な認証情報が静的設定に格納されません。代わりに、実行時にサービスを使用して認証情報が生成されるため、有効期間が短い認証情報の使用と、よりきめ細かい制御が可能になります。この認証モードは、すべてのオブジェクトストレージタイプでサポートされているわけではありません。token-cco は、Loki がマネージド STS モードで実行し、STS/WIF クラスターで CCO を使用している場合のデフォルト値です。
- 7
- 一時ストレージのストレージクラスの名前を指定します。最適なパフォーマンスを得るには、ブロックストレージを割り当てるストレージクラスを指定します。クラスターで使用可能なストレージクラスは、
oc get storageclassesコマンドを使用してリスト表示できます。 - 8
- LokiStack はデフォルトでマルチテナントモードで実行されます。このデフォルト設定は変更できません。ログの種類 (監査ログ、インフラストラクチャーログ、アプリケーションログ) ごとに 1 つのテナントが提供されます。これにより、個々のユーザーおよびユーザーグループのさまざまなログストリームのアクセス制御が可能になります。
重要デプロイメントサイズの
1xの数は変更できません。- Create をクリックします。
OpenShift Logging インスタンスを作成します。
-
Administration
Custom Resource Definitions ページに切り替えます。 - Custom Resource Definitions ページで、ClusterLogging をクリックします。
- Custom Resource Definition details ページで、Actions メニューから View Instances を選択します。
ClusterLoggings ページで、Create ClusterLogging をクリックします。
データを読み込むためにページの更新が必要になる場合があります。
YAML フィールドで、コードを以下に置き換えます。
apiVersion: logging.openshift.io/v1 kind: ClusterLogging metadata: name: instance1 namespace: openshift-logging2 spec: collection: type: vector logStore: lokistack: name: logging-loki type: lokistack visualization: type: ocp-console ocpConsole: logsLimit: 15 managementState: Managed
-
Administration
検証
-
Operators
Installed Operators に移動します。 - openshift-logging プロジェクトが選択されていることを確認します。
- Status 列に、緑色のチェックマークおよび InstallSucceeded と、Up to date というテキストが表示されていることを確認します。
インストールが完了する前に、Operator に Failed ステータスが表示される場合があります。InstallSucceeded メッセージが表示されて Operator のインストールが完了した場合は、ページを更新します。
13.2.1.3. Web コンソールを使用して Loki オブジェクトストレージのシークレットを作成する リンクのコピーリンクがクリップボードにコピーされました!
Loki オブジェクトストレージを設定するには、シークレットを作成する必要があります。OpenShift Container Platform Web コンソールを使用してシークレットを作成できます。
前提条件
- 管理者権限がある。
- OpenShift Container Platform Web コンソールにアクセスできる。
- Loki Operator がインストールされている。
手順
-
OpenShift Container Platform Web コンソールの Administrator パースペクティブで、Workloads
Secrets に移動します。 - Create ドロップダウンリストから、From YAML を選択します。
access_key_idフィールドとaccess_key_secretフィールドを使用して認証情報を指定し、bucketnames、endpoint、およびregionフィールドを使用してオブジェクトの保存場所を定義するシークレットを作成します。次の例では、AWS が使用されています。Secretオブジェクトの例apiVersion: v1 kind: Secret metadata: name: logging-loki-s3 namespace: openshift-logging stringData: access_key_id: AKIAIOSFODNN7EXAMPLE access_key_secret: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY bucketnames: s3-bucket-name endpoint: https://s3.eu-central-1.amazonaws.com region: eu-central-1