AWSアカウントの必要条件

Cloudera Altusは、ユーザーのAWSアカウントを使ってユーザーの代わりにクラスターを作成し、ジョブを実行します。AltusユーザーがユーザーのAWSアカウントを使ってタスクを実行できるようにするには、AWSのアカウントに対してAltusの要求を満たすリソースやサービスが設定されていなければなりません。Altusの管理者のAWSアカウントには、ポリシーやロールの作成と、管理タスクを実行できるパーミッションが割り当てられていなければなりません。

AWSのリソースとサービス

Altusは、ユーザーのAWSアカウント内の以下のリソースにアクセスします。
  • VPC
  • EC2のインスタンス
  • リージョンとアベイラビリティゾーン
  • セキュリティグループ
以下のガイドラインを用いて、AltusがAWSアカウント内のリソースを使ってクラスターを作成し、ジョブが実行できるようにしてください。
VPC
Altusは、EC2-VPCをサポートしています。

Altusのワークロードには、既存のAWSアカウントを使うことも、新しくAWSアカウントを作成して使うこともできます。2013年12月4日以降に作成された既存のアカウントを使う場合は、そのAWSアカウントに提供されているデフォルトVPCを使うことができます。デフォルトVPCはEC2-VPCの一種です。詳しくは、デフォルトVPCに関するAWSのドキュメントを参照してください。

2013年12月4日以前に作成した既存のアカウントを使っている場合、EC2-ClassicではなくEC2-VPCを使ってください。

VPCは、以下のように設定されていなければなりません。
  • インターネットゲートウェイに接続されていること。
  • 少なくとも1つ、パブリックなIPアドレスの自動割り当てが設定されているパブリックなサブネットがあり、そのサブネットはデフォルトのトラフィックをインターネットゲートウェイを通じて流すこと。
  • Amazonが管理するDNSが有効になっていること。

AWSのアカウントで利用できるVPCとサブネットの上限に、Altusでクラスターを作成できるだけの余裕があることを確認してください。VPCの上限に関する詳しい情報は、AWSの制限を参照してください。

EC2のインスタンス
AWSのアカウントで提供されているデフォルトVPCを使っているなら、EC2のインスタンス数は20が上限になっています。それ以上のインスタンス数が必要な場合、Amazonに連絡して上限を引き上げてもらわなければなりません。

Altusでクラスターが作成できるか、インスタンス数の上限を確認しておいてください。VPCの制限に関する詳しい情報については、AWSの制限を参照してください。

Altusがサポートしているインスタンスタイプはc4、m4、r4です。

リージョンとアベイラビリティゾーン

クラスターは、Altusがサポートしている任意のAWSのリージョンにデプロイできます。通常は、データの入出力に利用するS3のバケットと同じリージョンにクラスターをデプロイすることになるでしょう。

AltusがサポートしているAWSのリージョンについては、 サポートされているAWSのリージョンを参照してください。
セキュリティグループ

以下のようなセキュリティグループを設定する必要があります。

  • インバウンド: そのセキュリティグループ自身からのすべてのトラフィックと、以下のIPアドレスからのSSHのトラフィックを許可:

    35.165.50.128/32

    35.162.235.125/32

    35.165.43.32/32

  • アウトバウンド: すべての宛先へのすべてのトラフィックを許可。

AWSアカウントのセキュリティグループの制限内で設定できるかを確認してください。セキュリティグループの制限に関する詳しい情報については AWSの制限を参照してください。

CDHクラスター及びCloudera Managerに接続するには、セキュリティグループのインバウンドのルールでローカルのマシンのIPアドレスもしくは組織が利用しているIPアドレスの範囲からSSHで接続できるように許可しなければなりません。詳しくは SSHの接続を参照してください。

AWSのパーミッション

Altusの管理者は、AWSのアカウントで以下のタスクを実行できなければなりません。

  • IAMでのポリシーとロールの作成。
  • サブネット、セキュリティグループ、EC2、VPC、S3、セキュリティトークンサービス(STS) での管理タスクの実行。

AWS管理者権限があれば、Altusに必要なリソースを作成するための権限は持っていることになります。

AWSアカウントのAdministratorsグループに属していないなら、AWSの以下の権限が必要です。
ec2:AssociateRouteTable
ec2:AttachInternetGateway
ec2:AuthorizeSecurityGroupIngress
ec2:CreateInternetGateway
ec2:CreateRoute
ec2:CreateRouteTable
ec2:CreateSecurityGroup
ec2:CreateSubnet
ec2:CreateVpc
ec2:CreateVpcEndpoint
ec2:CreateTags
ec2:DescribeAccountAttributes
ec2:DescribeAvailabilityZones
ec2:DescribeInternetGateways
ec2:DescribeRouteTables
ec2:DescribeSecurityGroups
ec2:DescribeSubnets
ec2:DescribeVpcEndpoints
ec2:DescribeVpcs
ec2:ModifySubnetAttribute
ec2:ModifyVpcAttribute
iam:AddRoleToInstanceProfile
iam:AttachRolePolicy
iam:CreateInstanceProfile
iam:CreateRole
iam:GetRole
iam:PassRole
iam:PutRolePolicy
s3:CreateBucket
s3:GetObject
s3:PutObject
      

加えて、Environment Quickstartを使ってAltus Environmentを作成するなら、以下のCloudFormationのパーミッションが必要です。

cloudformation:CreateStack
cloudformation:CreateUploadBucket
cloudformation:GetTemplateSummary

AWSの制限

AWSのアカウントを作成する際には、AWSによって利用可能なリソースに制限が設定されます。この制限はリージョンによって異なります。Amazonによって設定された制限を見るには、AWSにログインしてEC2 > 制限とします。

EC2サービスの制限のページには、インスタンスやホスト数を含むEC2のインスタンスで利用可能なリソースの制限のリストが表示されます。

ネットワーキングの制限のセクションには、ユーザーのAWSのアカウントに対するVPC、サブネット、セキュリティグループの制限のリストが表示されます。

Amazonに設定された制限を超えるリソースが必要な場合は、Amazonに対してリソースの上限を引き上げてもらうようリクエストできます。EC2サービスの制限のページで 上限を引き上げたいリソースの 制限緩和のリクエストをクリックし、サービス制限の増加のAWSサポートケースを作成してください。

サポートされているAWSのリージョン

Cloudera Altusは、AWSの以下のリージョンをサポートしています。

リージョン名 場所
us-east-1 米国東部(バージニア北部)
us-east-2 米国東部 (オハイオ)
us-west-1 米国西部 (北カリフォルニア)
us-west-2 米国西部 (オレゴン)
ap-south-1 アジアパシフィック (ムンバイ)
ap-northeast-1 アジアパシフィック (東京)
ap-northeast-2 アジアパシフィック (ソウル)
ap-southeast-1 アジアパシフィック (シンガポール)
ap-southeast-2 アジアパシフィック (シドニー)
ca-central-1 カナダ(中部)
eu-central-1 欧州 (フランクフルト)
eu-west-1 欧州 (アイルランド)
eu-west-2 欧州 (ロンドン)
sa-east-1 南米 (サンパウロ)