Skip to main content

プライベートデータ用のAWSアカウントとVPCのセットアップ

AWSでのプライベートデータ処理では、AWSアカウントとVPC内部でのAlteryx One Platformのデータ処理クラスターを実行します。ソフトウェア、ユーザーのインフラストラクチャ、Alteryxによって管理されるAWSリソースのこの組み合わせは、プライベートデータプレーンと呼ばれます。このページでは、Alteryx One用にAWSアカウントとVPCをセットアップして、プライベートデータプレーンを作成する方法を説明します。

注記

AWSアカウントとVPCのセットアップには、AWSコンソールへのアクセスと権限が必要です。このアクセス権がない場合は、ITチームに連絡してこの手順を完了してください。

警告

プライベートデータ処理用にプロビジョニングされたリソースは削除しないでください

ステップ1: AWSアカウントを選択

プライベートデータプレーンを実行するアカウントを選択します。

IAM資格情報はアカウント全体にスコープが設定されているため、専用のAWSアカウントでプライベートデータプレーンを実行することが最も安全な方法になります。これは必須ではありませんが、推奨されます。

このアカウントは、プライベートデータストレージ用に選択したS3バケットや、Alteryx Oneに接続するデータソースと同じリージョンに配置することが推奨されます。これにより、パフォーマンスが向上し、エグレスコストが削減されます。

AWSアカウントで作成したVPCはAlteryx One専用にする必要があります。VPCピアリングやトランジットゲートウェイなどを使用して、プライベートデータソースへの接続を設定できます。

ステップ2: IAMの設定

AWSアカウントを設定したら、次のステップではIAMユーザーアカウントとアクセスキーを設定します

ステップ2a: IAMユーザー(サービスアカウント)の作成

キー名

AACResource

aac_iam_user

  1. 新しいIAMユーザーを選択し、[セキュリティ認証情報]タブを選択します。

  2. [アクセスキーの作成]を選択します。

  3. [アクセスキーのベストプラクティスと代替方法]で[その他]を選択し[次へ]を選択します。

  4. [アクセスキーの作成]を選択します。

注記

後でクラウドリソースをプロビジョニングしてソフトウェアをデプロイするときに、IAMユーザーのアクセスキーとシークレットキーが必要になります。

  1. IAMユーザーを、aac_automation_saという名前で作成します。このユーザーにコンソールのアクセス権がないことを確認してください。

  2. [権限の設定]で、[次へ]を選択します。

  3. IAMユーザーを以下のようにタグ付けします。

  4. [ユーザーの作成] を選択します。

  5. アクセスキーを生成します。

ステップ2b: IAMポリシーを作成し、サービスアカウントに連携する

カスタムIAMポリシーを作成する必要があります。名前を「AAC_Base_SA_Policy」とし、次のポリシードキュメントを使用します。ビジュアルエディターではなくJSONタブを使用することをお勧めします。実行するには、Alteryx Oneに一部*権限が必要です。ポリシーの作成時に、セキュリティ警告が何件か発生する場合があります。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor2",
            "Effect": "Allow",
            "Action": [
                "iam:GetOpenIDConnectProvider",
                "iam:GetPolicy",
                "iam:GetPolicyVersion",
                "iam:GetRole",
                "iam:GetRolePolicy",
                "iam:GetUser",
                "iam:GetUserPolicy",
                "iam:ListAttachedRolePolicies",
                "iam:ListAttachedUserPolicies",
                "iam:ListGroupsForUser",
                "iam:ListInstanceProfilesForRole",
                "iam:ListPolicyTags",
                "iam:ListPolicyVersions",
                "iam:ListRolePolicies"
            ],
            "Resource": [
                "arn:aws:iam::*:policy/*",
                "arn:aws:iam::*:oidc-provider/*",
                "arn:aws:iam::*:user/*",
                "arn:aws:iam::*:role/*"
            ]
        },
        {
            "Sid": "VisualEditor3",
            "Effect": "Allow",
            "Action": [
                "elasticloadbalancing:*",
                "iam:GetAccountName",
                "iam:ListAccountAliases",
                "iam:ListRoles",
                "networkmanager:Describe*",
                "networkmanager:Get*",
                "networkmanager:List*",
                "s3:GetBucketAcl",
                "s3:GetBucketCORS",
                "s3:GetBucketLocation",
                "s3:GetBucketLogging",
                "s3:GetBucketObjectLockConfiguration",
                "s3:GetBucketOwnershipControls",
                "s3:GetBucketPolicy",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPublicAccessBlock",
                "s3:GetBucketRequestPayment",
                "s3:GetBucketTagging",
                "s3:GetBucketVersioning",
                "s3:GetBucketWebsite",
                "s3:GetEncryptionConfiguration",
                "s3:GetLifecycleConfiguration",
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectVersion",
                "s3:GetObjectVersionAcl",
                "s3:GetObjectVersionAttributes",
                "s3:GetObjectVersionForReplication",
                "s3:GetObjectVersionTagging",
                "s3:GetObjectVersionTorrent",
                "s3:GetReplicationConfiguration",
                "s3:ListAllMyBuckets",
                "s3:ListBucket",
                "s3:ListBucketVersions",
                "sts:GetCallerIdentity"
            ],
            "Resource": "*"
        },
        {
            "Sid": "VisualEditor4",
            "Effect": "Allow",
            "Action": "secretsmanager:*",
            "Resource": "arn:aws:secretsmanager:*:*:secret:*"
        }
    ]
}

ステップ2c: IAMポリシーのタグ付け

  1. ステップ2bで作成したカスタムIAMポリシーにタグを付けます。

    キー名

    AACResource

    aac_sa_custom_policy

  2. ステップ2aで作成したaac_automation_saサービスアカウントに、AAC_Base_SA_Policy IAMポリシーを追加します。

    注記

    AAC_Base_SA_Policyは、ポリシー名の例です。ポリシーには任意の名前を指定できますが、名前は「AAC_Base」で始まる必要があります

ステップ3: VPCの作成

以下のCIDRブロックは、Alteryx Oneのコントロールプレーン用に予約されています。以下は、VPC CIDRの設定に使用しないでください。

  • 100.64.0.0/10

  • 10.4.0.0/14

  • 10.64.0.0/20

  • 10.0.0.0/22

IAMポリシーを作成したらVPCを作成します。

  1. サポートされているリージョンの1つに新しいVPCを作成します。サポートされているリージョンの詳細については、 Private Data Processingを参照してください。

  2. [VPC and more] (VPCなど)を選択します。

  3. VPCでCIDRブロックを設定します。CIDRを1つ使用してVPCを作成し、[CIDRの編集]を選択して2つ目のCIDRを追加する必要がある場合があります。

    1. Designer CloudMachine LearningAuto InsightsApp Builderの場合は、/18および/21 CIDRを追加します。

    2. Cloud Execution for Desktopの場合は、/21 CIDRを追加します。

  4. [アベイラビリティーゾーン(AZ)の数]セクションで[3]を選択します。

  5. [パブリックサブネットの数]セクションで[0]を選択します。

  6. [プライベートサブネットの数]セクションで[0]を選択します。

  7. [NATゲートウェイ]セクションで[なし]を選択します。

  8. VPC内で[S3ゲートウェイ]VPCエンドポイントを有効にします。

  9. DNSホスト名と解決を有効にします。

  10. VPCにタグ付けをします。

タグ名

AACResource

aac_vpc

注記

プライベートデータソースへの接続には、VPCとデータソース間のネットワークパスが必要です。共有責任マトリックスで定義されているように、これらのネットワークパスは、使用するネットワークポリシーと設定に従って設定します。

ステップ4: トランジットゲートウェイとインターネットゲートウェイにタグ付けする

ネットワーク設定でトランジットゲートウェイまたはインターネットゲートウェイを使用する必要がある場合は、ここで設定してタグ付けします。

タグ名

AACResource

aac

ステップ4a: IPをホワイトリストに登録する

Alteryx Cloud製品は、Kubernetesクラスター内にデプロイされます。コントロールプレーンは、WireGuard VPNトンネルを介してデータプレーンKubernetesクラスターと安全に通信します。WireGuard VPNを介したシームレスで安全な通信を有効にするには、以下のIPアドレスのイングレストラフィックとエグレストラフィックの両方を、データプレーンネットワーク内でホワイトリストに登録する必要があります。

Alteryx CloudのPDP

ホワイトリストに登録するIP

us1.alteryxcloud.com

WireguardサーバーIP: TCPポート44334.149.191.17

UDPポート5182034.127.5.13435.203.150.52

コントロールプレーンIP: 34.118.199.2634.82.130.80/29

Teleport IP: TCPポート443302330243026303634.145.177.98

TCPポート44334.85.215.128

eu1.alteryxcloud.com

WireguardサーバーIP: TCPポート44335.244.193.191

UDPポート5182034.141.115.20834.159.185.26

コントロールプレーンIP: 34.141.45.23634.89.162.16/29

Teleport IP: TCPポート443302330243026303634.145.177.98

TCPポート44334.85.215.128

au1.alteryxcloud.com

WireguardサーバーIP: TCPポート44334.107.140.97

35.197.167.15535.244.84.72、UDPポート51820

コントロールプレーンIP: 34.87.234.11034.40.128.80/29

Teleport IP: 34.145.177.98およびTCPポート44330233024、3026、3036

34.85.215.128およびTCPポート443

preprod.alteryxcloud.com

WireguardサーバーIP: TCPポート44334.120.226.216

35.230.188.19635.221.3.230、UDPポート51820

コントロールプレーンIP: 34.86.96.5935.199.17.1434.86.74.210

Teleport IP: 34.145.177.98およびTCPポート44330233024、3026、3036

34.85.215.128およびTCPポート443

ステップ5: 安全に保管するための対称キーを作成する

データソースの資格情報は、キーを使用して暗号化され、プライベートデータプレーンアカウント内のプライベート保管庫(プライベート資格情報ストレージ)に安全に保存されます。これらの資格情報は、必要なときにのみ保管庫から取得されます。

  1. [キー管理サービス]に移動し、[Create Key] (キーの作成)を選択します。

  2. [Key Type] (キータイプ) > [Symmetric] (対称)の順に選択します。

  3. [Key Usage] (キーの用途) > [Encrypt and Decrypt] (暗号化および復号)を選択します。

  4. キーにaac-credentials-vault-keyという名前を付けます。

  5. キーにタグ付けします。

    タグ名

    AACResource

    aac

  6. [Key Administrator] (キー管理者)で[Next] (次へ)を選択します。

  7. [Key Usage Permissions] (キーの使用アクセス許可)で[Next] (次へ)を選択します。

  8. [完了]を選択します。

注記

ARNキーは、[プライベートデータ処理]ページで確認できます。

ステップ6: クォータ引き上げのリクエスト

既定では、各AWSアカウントには同時に実行するvCPUの数に上限があります。プライベート環境を実行するには、クォータの引き上げをリクエストする必要があります。これにより、ユーザーの環境をニーズに合わせて拡張できます。

指定する実際の数は、実行しているアプリケーションの数、ハードウェアが十分でない場合にジョブの実行を待機できる許容レベル、ジョブの実行待機時間短縮のためのインフラストラクチャ追加に対して支払う意思など、いくつかの要因によって異なります。

以下は、Alteryx One Platformで分析ワークロードを実行するにあたって推奨される数です。数字は調整できます。たとえば、推奨の値ほど大きく拡張せず、環境にかかるコストを抑えることができます。あるいは、複数のAlteryx One Platformアプリケーションを実行していて、ハードウェアを常に利用できる状態にするために、この値を増やすこともできます。

Alteryxでは次のクォータについて、クォータの引き上げをリクエストすることを推奨しています。

Amazon EC2

このクォータは、Designer Cloud、Machine Learning、Auto Insights、App Builderを実行するKubernetesクラスターに適用されます。また、Cloud Execution for Desktopを動かすVMの自動スケーリンググループにも適用されます。

このクォータでは、クラスターグループと自動スケールグループで最大50ノードを使用できるようにすることが推奨されます。

  • クォータ名: オンデマンド標準(A、C、D、H、I、M、R、T、Z)インスタンスの実行。

  • クォータの説明: オンデマンド標準(A、C、D、H、I、M、R、T、Z)インスタンスの実行に割り当てられたvCPの最大数。

  • AWS既定クォータ値: 5

  • 推奨の最小クォータ値: 800 (50ノードx 16 vCPU/ノード)。

Amazon EMR

このクォータは、EMRをDesigner Cloudの処理オプションとしてデプロイする場合にのみ適用されます。

  • クォータ名: アカウントあたりの最大同時vCPU数。

  • クォータの説明: 現在リージョンで使用中のアカウントで同時に実行できるvCPUの最大数。

  • AWS既定クォータ値: 16

  • 適用されるクォータ値: 1024

クオータの引き上げをリクエストする方法

  1. AWSアカウントコンソールにサインインします。

  2. [サービスクォータ]を検索し、該当のサービスを選択します。

  3. 左側のナビゲーションペインから[AWSサービス]を選択します。

  4. サービスを検索します(Amazon EMR ServerlessまたはAmazon EC2など)。

  5. クォータ名を選択します。

  6. [クォータの引き上げをリクエスト]を選択します。

  7. 指定のクォータの引き上げをリクエストします。

ステップ7: プライベートデータ処理のプロビジョニングをトリガーする

警告

プライベートデータ処理を設定した後に、Alteryx Oneのプロビジョニングされたパブリッククラウドリソースを変更または削除すると、不整合が生じる可能性があります。これらの不整合により、ジョブの実行中またはプライベートデータ処理設定のプロビジョニング解除時にエラーが発生する可能性があります。

データ処理環境のプロビジョニングは、Alteryx Oneの管理者コンソールからトリガーできます。このページを表示するには、ワークスペース内のワークスペース管理者権限が必要です。

  1. Alteryx Oneのランディングページで、ユーザーのイニシャルが入った右上の丸いアイコンを選択します。メニューから[管理者コンソール]を選択します。

  2. 左側のナビゲーションメニューから[プライベートデータ処理]を選択します。

続行する前に、プライベートデータストレージにSuccessfully Configuredと表示されていることを確認してください。ステータスがNot Configuredの場合は、まずプライベートデータストレージとしてのAWS S3に進み、その後このステップを実行します。

[プライベートデータ処理]セクションでは、5つのフィールドに入力する必要があります。これらの値は、前に完了したAWSアカウントとVPCのセットアップ手順から取得されます。

注記

ARNキーは、「ステップ5: 安全に保管するための対称キーを作成する」の[プライベートデータ処理]ページで取得できます。

[作成]を選択すると、必要に応じてAWSアカウントが設定されていることを確認するための一連の検証チェックがトリガーされます。権限が正しく設定されていない場合、またはVnetリソースが正しく作成またはタグ付けされていない場合は、正しく設定するための説明を含むエラーメッセージが表示されます。

重要事項

設定変更のタイミング

Alteryx One Platformは分散システムです。プライベートデータ処理設定に加えた変更は、完全に有効になる前に複数のシステムに伝播されます。たとえば、プライベートデータ処理を設定するときにワークスペースにすでにジョブの実行スケジュールが設定されている場合、設定後後数分間、Alteryxデータ処理環境でジョブの実行が継続することがあります。

アウトバウンド通信

プライベートデータ処理環境で実行されるソフトウェアには、以下のさまざまな理由によりアウトバウンド通信(出力)が必要になります。

  1. ワークフローでは、クラウドストレージバケットやデータウェアハウスなどのパブリックデータソースに頻繁にアクセスする必要があるため。

  2. データプレーンサービスでは、コントロールプレーンで実行されている他のサービスへのアクセス(API呼び出し、メッセージキューへの登録など)が必要になることが多いため。

  3. ソフトウェアを最新の状態に保つために、ソフトウェアイメージをイメージリポジトリから取得することが多いため。

  4. Alteryxは、アプリケーションログとテレメトリデータを収集して、データプレーンサービスの健全性とパフォーマンスを監視し、トラブルシューティング作業をサポートするため。

VPCまたはセキュリティグループに、このアウトバンドトラフィックをブロックまたは制限するルールを追加で適用しないでください

資格情報のローテーション

ステップ2a: IAMユーザー(サービスアカウント)の作成のステップでは、「aac_iam_user」という名前のIAMユーザーと、そのユーザー用のアクセスキーを作成しました。Alteryxはこれらの資格情報を管理しません。

Alteryxでは、ユーザーが所属する会社のポリシーに従ってこの資格情報をローテーションすることを推奨しています。会社にポリシーがない場合は、90日ごとのローテーションがAWSでは推奨されています。ただし、クラウドリソースとソフトウェアの更新、プライベート環境の健全性の監視、トラブルシューティングを行うには、AlteryxがVPCに常にアクセスできる必要があります。AWSでこの資格情報をローテーションする場合は、必ずAlteryx One Platformにもログインして最新の資格情報を入力してください。

次のステップ

App Builder in AWS

Auto Insights in AWS

Cloud Execution for Desktop in AWS

Designer Cloud and EMR Serverless in AWS

Machine Learning in AWS