ワークスペース作成に関するトラブルシューティング
概要
次のセクションでは、ワークスペース作成時の構成エラーとそのエラーの修正方法について説明します。ほとんどの問題は、アカウントコンソール または アカウントAPIの両方を使用したワークスペース作成に当てはまりますが、例外もあります。
一般的なエラー
VPCの最大数
VPCの最大数について言及したエラーメッセージが表示された場合は、リージョン内で許可されるVPCの数のサービス上限引き上げリクエストを送信してください。このエラーは通常、顧客管理VPCではなく、Databricks管理VPCを使用している場合にのみ発生します。
VPCエンドポイントの最大数
VPCエンドポイントの最大数について言及したエラーメッセージが表示された場合は、リージョンで許可されるゲートウェイVPC エンドポイントの数のサービス上限引き上げリクエストを送信してください。このエラーは通常、顧客管理VPCではなく、Databricks管理VPCを使用している場合にのみ発生します。
アドレスの最大数
アドレスの最大数について言及したエラーメッセージが表示された場合は、リージョンで許可されるVPC Elastic IPアドレスの数のサービス上限引き上げリクエストを送信してください。このエラーは通常、顧客管理VPCではなく、Databricks管理VPCを使用している場合にのみ発生します。
この操作を実行する権限がありません
この操作を実行する権限がないというエラーが表示された場合は、IAMロールの記事で定義されている通りに、IAMロールに必要なポリシーがすべて設定されていることを確認してください。
ストレージ構成に関するエラーメッセージ
不正なリクエスト:ストレージ設定の検証チェックに失敗しました
ストレージ設定の検証チェックの失敗を示すエラーメッセージが表示された場合は、S3バケットの権限が適切に設定されていません。「ワークスペースデプロイ用のS3バケットを作成する」の記事に従って、S3バケットの権限が正しいものか確認してください。
資格情報の設定に関するエラーメッセージ
不正なリクエスト:資格情報の設定の検証チェックに失敗しました
エラーメッセージに含まれるアクセス権限のチェックのリストは、問題についての考えられる原因を示します。
資格情報の設定の検証で失敗したアクセス権限のチェックが10件未満の場合は、IAMポリシーにこれらの特定のアクセス権限が欠落している可能性があります。「ワークスペースデプロイ用のIAMロールを作成する」の記事から正しいポリシーをコピーしてください。
資格情報の設定の検証で10件以上のチェックに失敗した場合、IAMロールの信頼関係が正しく設定されていない可能性が高くなります。「ワークスペースデプロイ用のIAMロールを作成する」の記事の説明に従って、顧客ロールの信頼関係が適切に設定されていることを確認します。
ポリシーと信頼関係の両方が正しいと思われる場合は、次も確認してください。
資格情報オブジェクトに正しいロールARNが含まれていることを確認します。
AssumeRole
のアクションを拒否する、またはEC2/VPCアクセスを拒否する組織レベルのサービスコントロールポリシー(SCP)があるかどうかを確認します。不明な場合は、SCPについてAWS管理者に問い合わせてください。
ネットワーク設定
サブネットはすでに別のネットワークによって使用されています
サブネットが使用されている場合のエラーは、通常、次のように表示されます。
MALFORMED_REQUEST: Malformed parameters: subnet_id subnet-xxxxxxxx1 is already used by another Network, subnet_id subnet-xxxxxxxx2 is already used by another Network.
これは、これらの同じサブネットを使用するDatabricksネットワーク設定があることを意味します。解決するには、次のいずれかの操作を行います。
以前の設定を削除します。 アカウント API を使用している場合は、ネットワーク構成削除 APIを使用します。 アカウント コンソールを使用して構成を削除することもできます。
以前の設定が使用されていない場合は、その以前の設定を新しいワークスペースに使用できます。
そのネットワーク設定が実行中のワークスペースですでに使用されている場合は、新しいワークスペース用にサブネットとネットワーク設定をそれぞれ新しく作成します。
前回のワークスペース作成の試行が失敗した場合、関連する設定コンポーネントは自動的に削除されない点に注意してください。
セットアップ中にネットワーク設定エラーは発生しないが、ワークスペース作成中にエラーが表示される
ワークスペースのセットアップ時にはエラーは表示されなかったにも関わらず、ワークスペースのデプロイを試行した後にネットワーク設定でエラーが表示される場合があります。これは、Databricksがネットワークオブジェクトの作成時に基本的な検証のみを実行するためです。たとえば、一意のサブネット、一意のセキュリティグループ、欠落しているフィールドがチェックの対象です。
最も意味のあるネットワーク設定の検証は、新しいネットワーク構成で新しいワークスペースを作成しようとした後にのみ行われます。ワークスペースのデプロイ中にエラーが発生した場合は、ネットワーク検証に関するエラーメッセージの詳細を確認してください。
ワークスペースは動作しているようだが、ネットワーク設定のステータスが WARNED
になっている
クラスターを起動でき、データジョブを実行でき、 コンピュート イベント ログにDBFS_DOWN
またはMETASTORE_DOWN
が表示されないことを確認してください。 クラスター イベント ログにこのようなエラーがない場合、 WARNED
ステータスは必ずしも問題ではありません。
新しいワークスペースの場合、Databricksがチェックを試みる項目は多数あります。ワークスペースのサブネット → NATゲートウェイ → インターネットゲートウェイといった単純なルーティングを実行しない場合、Databricksはネットワークが正しいことを検証できません。このような場合、Databricksではネットワーク設定に関する警告が表示されます。
サブネット・ルートテーブルのエラーをチェックする
クラスターのイベントログに、次のようなエラーが表示される場合があります。
subnet: Route Table with ID rtb-xxxxxxxx used for subnet with ID subnet-yyyyyyyyy is missing default route to direct all traffic to the NAT gateway nat-zzzzzzzzzzz.
単純なDatabricksワークスペース設定をデプロイしようとしている場合、このエラーが表示されるということは問題が生じている可能性があります。
ファイアウォール経由のルーティング(任意でハブスポーク方式のトランジットゲートウェイ経由)など独自の出力設定を行う場合、このエラーは必ずしも意味のあるものではありません。
このエラーのもう1つの理由として、NATサブネットをクラスターのDatabricksサブネットとして登録している可能性が考えられます。DatabricksワークスペースのサブネットのリストからNATサブネットを削除し、ワークスペースをもう一度作成します。
セキュリティグループを最新のルールで更新できませんでした
以下のようなクラスターログエラーが表示される場合があります。
Security Group with ID sg-xxxx could not be updated with latest Security Group Rules
IAMロールの記事に含まれるものと一致するようIAMロールを更新してください。場合によっては、AuthorizeSecurityGroupEgress
および同様のアクションのリソースにカンマ区切り値を含めることができます。これらを1つのリソースではなく個別のリソースに更新します。
正しい例
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": [
"arn:aws:ec2:us-east-1:444:security-group/sg-xxxx",
"arn:aws:ec2:us-east-1:444:security-group/sg-yyyy",
"arn:aws:ec2:us-east-1:444:security-group/sg-zzzz"
],
間違った例
"Resource": ["arn:aws:ec2:us-east-1:444:security-group/sg-xxxx,sg-yyyy,sg-zzzz"],
ネットワーク設定に問題がある場合は、Databricksで管理されるVPCの使用を検討してください
ネットワーク設定に問題がある場合は、顧客管理VPCではなくDatabricks管理のVPCを使用してワークスペースを作成することを選択できます。
重要
ワークスペースの作成時に、顧客管理VPCを提供するかどうかを選択する必要があります。ワークスペースを正常に作成した後は、この設定を変更することはできません。
障害が発生したワークスペースをDatabricks管理のVPCを使用するように切り替えるには、別のクロスアカウントIAM ロールも併せて使用する必要があります。
クロスアカウントIAM ロールの記事に移動します。
Databricks VPCというラベルの付いたポリシーを選択してコピーします。
アカウントコンソールを使用したワークスペース作成 または アカウントAPIを使用したワークスペース作成にそのポリシーを使用します。
アカウント コンソールのネットワーク構成ピッカーで、 Databricks-managedを選択します。
Account APIの場合は、
network_id
要素を含めないように注意してください。以下に例を挙げます。{ "workspace_name": "<workspace-name>", "deployment_name": "<deployment-name>", "aws_region": "<aws-region>", "credentials_id": "<credentials-id>", "storage_configuration_id": "<storage-configuration-id>" }
AWS Reachability Analyzerを使用してVPCネットワークの問題を診断する
AWSのReachability Analyzerは、VPC内のソースリソースと宛先リソースをテストするために使用できる構成分析ツールです。これは、AWSコンソールにVPC Reachability Analyzerとして表示されます。
Reachability Analyzerを使用すると、ログインすることなくDatabricksプライベートサブネットでテストマシンをスピンアップできます。ソースをEC2インスタンスとして追加し、宛先をDatabricksコントロールプレーンのIPアドレスおよびポートとして追加する必要があります。その後、障害となっているコンポーネントを特定するために接続をテストできます。詳細については、「Reachability Analyzerとは」を参照してください。