メインコンテンツへスキップ

今すぐ始める

Kubernetes Intelligence を開始するには、コンソールで接続済みクラウドアカウントの Kubernetes core 設定を有効化し、その後 Kubernetes クラスタをオンボーディングします。

学習パスを選択

以下のステップバイステップの手順に従うか、AWS のオンボーディングフローをビジュアルで確認できる ▶️ EKS のインタラクティブデモ を参照してください。

必要なライセンス​

Kubernetes Intelligence は、すべての Cloud Intelligence プランに含まれています。 利用するために PerfectScale の顧客である必要はありません。

ただし、PerfectScale アカウントを有効化すると、PerfectScale プラットフォームへのワンクリックインテグレーションにアクセスできます。PerfectScale は、最適化を手作業の試行錯誤から、推奨事項に基づく自動化されたデータドリブンなワークフローへと変革する機能を提供し、ガバナンスポリシーを定義して、望ましい結果に向けて環境を継続的に最適化できるようにします。これらの機能を試したい場合は、PerfectScale アカウントを有効化し、エージェントを再インストールすることなく 30 日間の無料トライアルを開始 できます。

PerfectScale for Kubernetes は Cloud Intelligence Enterprise ティアに含まれています。 それ以外のプランでは、個別のサブスクリプションとして利用できます。利用可能なプランについては、PerfectScale Service Description を参照してください。

Kubernetes core を有効化する​

コンソールで接続済みクラウドアカウントの Kubernetes core を有効化すると、DoiT に Kubernetes クラスタを検出し、Kubernetes Intelligence 機能を使用するための権限が付与されます。これは DoiT 側で必要となる前提条件の設定であり、単体の製品機能ではありません。

新しいアカウントをリンクする際、またはリンク済みアカウントを編集する際に Kubernetes core を有効化できます。

Enable Kubernetes core

詳細な手順は Link your AWS account を参照してください。必要な権限については Kubernetes core を参照してください。

権限が付与されると、次の処理が行われます。

  • DoiT は接続済みの AWS アカウントおよび Google Cloud の組織・プロジェクトを、Kubernetes クラスタを検出するために毎日スキャンします (AWS は UTC 深夜、Google Cloud は UTC 午前 2 時)。

  • DoiT は PerfectScale プラットフォームにオンボーディング済みのクラスタについて PerfectScale と同期します。

注意

セルフマネージドの Kubernetes クラスタ (例: 生の EC2 インスタンス上で稼働するクラスタ) は、プラットフォームのデイリースキャンでは検出されません。セルフマネージドクラスタを使用している場合は、エージェントをインストール する前に、それらをコンソールで手動追加してください。

クラスタをオンボーディングする​

Kubernetes Intelligence エージェントは PerfectScale Exporter です。クラスタ内で動作し、利用状況メトリクスを PerfectScale に送信し、DoiT はそれらのメトリクスを Kubernetes Intelligence およびコンソール内の関連機能で可視化します。

Kubernetes クラスタをオンボーディングするには、エージェントをインストールするか、既存の PerfectScale デプロイメントをマッピングします。

  1. DoiT コンソール の上部ナビゲーションメガメニューから Data ingestion and integrations > Integrations を選択します。

  2. Kubernetes integration カードで Manage を選択します。ここに、プラットフォームのデイリースキャンで検出されたすべてのクラスタが表示されます。

  3. すでに PerfectScale でクラスタをオンボーディングしている場合は、Option 1: Map clusters に進んでください。そうでない場合は、Option 2: Install agent via Helm chart に進んでください。

    Kubernetes assets list

Option 1: Map clusters​

このオプションでは、すでに PerfectScale にオンボーディング済みのクラスタに対して、エージェントを再インストールせずに済みます。

Map clusters を選択し、PerfectScale のクラスタと対応する DoiT エンティティとのマッピングを指定します。

Kubernetes onboard - map clusters

Option 2: Install agent via Helm chart​

  1. まだ行っていない場合は、ローカル環境に Helm をインストール します。

  2. kubectl コマンドラインツールがクラスタと通信するよう構成されていることを確認します。

    kubectl を正しいクラスタに向ける方法はいくつかあります。ここではその一例を示します。

    1. 対象クラスタに対して、IAM ユーザーを AmazonEKSClusterAdminPolicy アクセスポリシーに関連付けます。

    2. AWS CLI で次のコマンドを使用して、kubectl を EKS クラスタに接続するための kubeconfig ファイルを作成します。

      aws eks update-kubeconfig --name <eks_cluster_name> --region <region>

  3. コンソールで Kubernetes assets リストに移動し、対象のクラスタを見つけて、Action 列で Install agent を選択します。

    プラットフォームが、PerfectScale にエージェントがインストールされているものの、まだマッピングされていないクラスタを検出した場合は、そのクラスタをマッピングして以降の手順をスキップするオプションが表示されます。

    Kubernetes onboard - install agent: map cluster

  4. コンソールに表示されている Helm コマンドをコピーして実行し、PerfectScale Helm chart repo を追加します。

    この Helm chart は複数のコンポーネントをデプロイします。エージェントの Pod をスケジューリングできるよう、クラスタノードに十分な割り当て可能 CPU とメモリがあることを確認してください。デフォルトでは、メインのエクスポーターは 200m CPU と 300Mi メモリを要求し、さらに kube-state-metrics など追加のリソースを要求するサポートコンポーネントもデプロイされます。

    ネットワークポリシー、ファイアウォール、プロキシを使用している場合は、エージェントおよび Helm chart に必要な宛先への HTTPS アウトバウンドアクセスを許可してください。必要なホスト名、ポート、プロキシ設定の一覧については、Outbound request ports used by the PerfectScale agent および PerfectScale agent を参照してください。

    Kubernetes onboard - install agent

  5. PerfectScale tenant ドロップダウンが表示されている場合は、クラスタをオンボーディングするテナントを選択します。

    注意

    このドロップダウンは、そのクラスタが初めてテナントに割り当てられる場合で、かつ組織に承認済みの PerfectScale テナントが複数存在する場合に表示されます。組織に承認済みテナントが 1 つしかない場合、クラスタは自動的にそのテナントに割り当てられます。

  6. Generate secret を選択して、認証情報が埋め込まれた Helm デプロイコマンドを生成します。

    1. コンソールに表示される Helm コマンド内の secret.clientId と secret.clientSecret の値を控えておいてください。新しい認証情報が必要な場合を除き、コマンドは複数回生成しないようにしてください。

    2. Helm コマンドをコピーして実行し、chart をデプロイします。

      このコマンドはクラスタを PerfectScale テナントに登録します。DoiT はそのテナントを組織にマッピングするため、クラスタデータがコンソールに表示されます。

    コマンドが生成されると、テナントの選択はロックされ、変更できなくなります。

    注意

    Generate secret が次のようなエラーを返した場合:

    • クラスタがすでに別の PerfectScale テナントに割り当てられている場合、そのクラスタは他のテナントでオンボーディング済みであり、再割り当てはできません。

    • 選択したテナントが利用できない場合、そのテナントは組織で承認されていません。PerfectScale tenant ドロップダウンから別のテナントを選択し、もう一度実行してください。

  7. Helm デプロイが完了したら Done を選択します。

エージェントステータスを確認する​

インストールまたはマッピングが正常に完了すると、アセット一覧のクラスタの エージェントステータス(Agent status) が Waiting for data と表示されます。このステータスは最大 3 分間続く場合があります。その後、ステータスは Transmitting Data に変わります。

エージェントステータス(Agent status) が数分以上 Waiting for data のままで、Transmitting Data に変わらない場合は、perfectscale ネームスペース内の pod が稼働しているか確認してください。

kubectl get pods -n perfectscale

クラスタノード上の割り当て可能な CPU またはメモリが不足していることは、スケジューリング失敗の一般的な原因です。pod が Pending ステータスのままの場合は、kubectl describe nodes でノード容量を確認するか、インストールを再試行する前にクラスタに容量を追加してください。

複数のクラスタをオンボードする場合は、各クラスタについて上記の手順を繰り返してください。

アセットテーブルのステータスが更新されるまで最大 3 分、Kubernetes Intelligence でデータを利用できるようになるまで最大 24 時間かかる場合があります。

(オプション)Amazon EC2 上にホストされたクラスタのコストトラッキングを有効にする​

Amazon EC2 インスタンス上にホストされたセルフマネージドクラスタのコストをトラッキングするには、eks:cluster-name などのユーザー定義コストアロケーションタグで EC2 インスタンスに手動でタグ付けする必要があります。これらのタグが AWS の請求でコストアロケーションタグとして有効化されていることを確認してください。詳細は、Activating user-defined cost allocation tags および AWS cost allocation tags in the platform を参照してください。

DoiT は請求データを毎日スキャンします。クラスタが新規作成(72 時間以内)の場合や、支出がない場合、DoiT はそれらのクラスタを検出しません。

(オプション)GKE 上にホストされたクラスタのコストトラッキングを有効にする​

GKE Intelligence を最大限に活用するには、計測したいすべてのクラスタで GKE コストアロケーションを有効にしてください。詳細は GKE cost allocation を参照してください。

クラスタのオフボード​

クラスタをオフボードするには、次の kubectl コマンドを実行します。ネームスペースを削除すると、クラスタからエージェントが削除され、すべてのデータ送信が停止します。

kubectl delete namespace perfectscale

Delete agent の手順内でも、このコマンドを確認できます。

▶️ EKS 用インタラクティブデモ​

AWS/EKS のオンボードフローをハンズオン形式で体験できるインタラクティブデモをお試しください。

デモが正しく表示されない場合は、ブラウザウィンドウを拡大するか、新しいタブでデモを開いてください。

注意

このデモは AWS/EKS の手順のみを対象としています。GKE ユーザーは上記の手順書に従ってください。