Amazon EKSへの Custom Editionのインストール

Amazon Elastic Kubernetes Service (Amazon EKS)に、セルフホスト型の Instana Custom Editionをインストールできます。 Amazon Elastic Kubernetes Service (Amazon EKS)は、 AWS クラウドおよびオンプレミスのデータセンターで Kubernetes を実行するための、マネージド型の Kubernetes サービスです。

手順

Amazon EKSに Instana をインストールするには、以下の手順を実行してください:

  1. 「 Instana 」プラグイン( kubectl )をインストールします。 詳しくは、「 Instana 」プラグイン( kubectl )のインストール方法をご覧ください。

  2. Helm をインストールします。 詳しくは、「オンラインインストールの準備」 を参照してください。

  3. Instana およびOperatorのバージョンを確認してください:

    kubectl instana -v
    
  4. データ・ストアの名前空間を作成します。

    kubectl create ns instana-zookeeper
    kubectl create ns instana-kafka
    kubectl create ns instana-clickhouse
    kubectl create ns instana-postgres
    kubectl create ns instana-cassandra
    kubectl create ns instana-elastic
    kubectl create ns instana-core
    kubectl create ns instana-units
    kubectl create ns instana-operator
    kubectl create ns cert-manager
    
  5. Helm のリポジトリを追加します。 詳細は「データストアオペレーターのインストール準備」 を参照してください。

  6. データ・ストア・オペレーターをインストールします。

    1. Cassandra データストアを作成します。 詳しくは、「 Cassandra データストアの作成」 を参照してください。
    2. Clickhouseデータストアを作成するには、 「 ClickHouse データストアの作成」 を参照してください。
    3. 「 Elasticsearch 」データストアを作成します。 「 Elasticsearch 」データストアの作成を参照してください。
    4. Kafka データストアを作成します。 詳しくは、「 Kafka データストアの作成」 を参照してください。
    5. Postgres データストアを作成します。 詳しくは、「 Postgres データストアの作成」 を参照してください。
    6. Zookeeperデータストアを作成します。 「 ZooKeeper データストアの作成」 を参照してください。
    7. BeeInstana, をインストールします。 詳細は、「 BeeInstana Kubernetes オペレーターの使用方法 」を参照してください。
  7. 「 Instana Enterprise」オペレーターをインストールするには、 「 Instana Enterprise」オペレーターのインストール」 を参照してください。

  8. Instana のライセンスをダウンロード:

    kubectl instana license download --sales-key <redacted>
    
  9. AWS リソースのプロビジョニング: Instana では、 rawSpans を保存し、 NFS または Ceph を使用してデータを監視するために、ストレージタイプ ReadWriteMany が必要です。 パブリッククラウドでは、 Instana は S3 のバケットまたはGCSを利用できます。

    1. クラスターがデプロイされているのと同じリージョンに S3 バケットを作成し、IAM ユーザーまたは IAM 役割を作成し、IAM ポリシーを使用して必要な IAM 権限を付与します。以下のいずれかの手順を実行します。
      • IAM 役割、IAM ポリシー、 AWS コンソールをプロビジョンします。

        1. 特権を使用して IAM ポリシーを作成します。
          1. S3:

            {
                "Version": "2012-10-17",
                "Statement": [
                    {
                        "Effect": "Allow",
                        "Action": [
                            "s3:CreateBucket",
                            "s3:DeleteBucket",
                            "s3:PutBucketTagging",
                            "s3:GetBucketTagging",
                            "s3:PutBucketPublicAccessBlock",
                            "s3:GetBucketPublicAccessBlock",
                            "s3:PutEncryptionConfiguration",
                            "s3:GetEncryptionConfiguration",
                            "s3:PutLifecycleConfiguration",
                            "s3:GetLifecycleConfiguration",
                            "s3:GetBucketLocation",
                            "s3:ListBucket",
                            "s3:GetObject",
                            "s3:PutObject",
                            "s3:DeleteObject",
                            "s3:ListBucketMultipartUploads",
                            "s3:AbortMultipartUpload",
                            "s3:ListMultipartUploadParts"
                        ],
                        "Resource": "arn:aws:s3:::my-pod-secrets-bucket"
                    }
                ]
            }
            
          2. Amazon Simple Email Service(SES)を使用する場合は、SES用のIAMポリシーを追加してください:

            {
              "Id":"ExamplePolicy",
              "Version":"2012-10-17",
              "Statement":[
                {
                  "Sid":"ControlAction",
                  "Effect":"Allow",
                  "Resource":"arn:aws:ses:<ReplaceWithActualRegion>:<ReplaceAccountID>:identity/<ReplaceWithEmailID>",
                  "Action":[
                    "ses:SendEmail",
                    "ses:SendRawEmail"
                  ]
                }
              ]
            }
            
        2. IAM 役割を作成し、IAM 役割を関連付けます。 静的資格情報が使用されないようにするには、サービス・アカウントに付加できる IAM 役割を構成して、 S3SES へのアクセス権限を付与します。
          1. AWS で OIDC プロバイダーを作成します
          2. 以下の信頼関係を持つ IAM 役割を作成します。
            {
                "Version": "2012-10-17",
                "Statement": [
                    {
                        "Sid": "",
                        "Effect": "Allow",
                        "Principal": {
                            "Federated": "arn:aws:iam::<ReplaceAccountID>:oidc-provider/oidc.eks.<ReplaceWithActualRegion>.amazonaws.com/id/<ReplaceWithID>"
                        },
                        "Action": "sts:AssumeRoleWithWebIdentity",
                        "Condition": {
                            "StringEquals": {
                                "oidc.eks.<ReplaceWithActualRegion>.amazonaws.com/id/<ReplaceWithID>:sub": "system:serviceaccount:<KubernetesNamespace>:<KubernetesServiceAccount>",
                                "oidc.eks.<ReplaceWithActualRegion>.amazonaws.com/id/<ReplaceWithID>:aud": "sts.amazonaws.com"
                            }
                        }
                    }
                ]
            }
            
        3. 新しく作成した IAM ポリシーを添付します。
  10. RAWスパンストレージとして S3 を使用し、 Instana バックエンドをインストールします。 raw span に対する ` S3 ` の詳細については、 S3 (または互換性のあるドキュメント) を参照してください。

  11. ロードバランサーの詳細と DNS を追加します。詳細は、 「ロードバランサーの設定」および DNS を参照してください。