コンピュートの問題のトラブルシューティング
この記事では、ワークスペースでのコンピュートの動作をトラブルシューティングする必要がある場合に使用できるリソースを提供します。 この記事のトピックは、コンピュートのスタートアップの問題に関連しています。
その他のトラブルシューティングの記事については、以下を参照してください。
新しいコンピュートが反応しない
ワークスペースのデプロイが成功したように見えても、最初のテストコンピュートが応答しないことに気付く場合があります。 約 20 分から 30 分後、 コンピュート イベント ログを確認します。 次のようなエラーメッセージが表示される場合があります。
The compute plane network is misconfigured. Please verify that the network for your compute plane is configured correctly. Error message: Node daemon ping timeout in 600000 ms ...
このメッセージは、ルーティングまたはファイアウォールが正しくないことを示しています。 Databricks 新しいコンピュートの EC2 インスタンスをリクエストしましたが、 EC2 インスタンスがブートストラップしてコントロールプレーンに接続するのを待つのに長い遅延が発生しました。 コンピュートマネージャーはインスタンスを終了し、このエラーを報告します。
ネットワーク設定では、コンピュートノードインスタンスがDatabricksコントロールプレーンに正常に接続できるようにする必要があります。コンピュートを使用するよりも迅速なトラブルシューティング手法として、 EC2 インスタンスをワークスペースサブネットの1つにデプロイし、nc
、ping
、telnet
、traceroute
などの一般的なネットワークトラブルシューティング手順を実行できます。 各リージョンのリレー CNAME については 、顧客管理VPC の記事に記載されています。 アーティファクトストレージの場合は、S3 へのネットワークパスが成功していることを確認します。
リージョン別のアクセス ドメインと IP については、「 Databricks サービスと資産の IP アドレスとドメイン」を参照してください。 リージョン エンドポイントについては、「 (推奨) リージョン エンドポイントの構成」を参照してください。 次の例では、AWS リージョン の eu-west-1
を使用しています。
# Verify access to the web application
nc -zv ireland.cloud.databricks.com 443
# Verify access to the secure compute connectivity relay
nc -zv tunnel.eu-west-1.cloud.databricks.com 443
# Verify S3 global and regional access
nc -zv s3.amazonaws.com 443
nc -zv s3.eu-west-1.amazonaws.com 443
# Verify STS global and regional access
nc -zv sts.amazonaws.com 443
nc -zv sts.eu-west-1.amazonaws.com 443
# Verify regional Kinesis access
nc -zv kinesis.eu-west-1.amazonaws.com 443
これらがすべて正しく返された場合、ネットワークは正しく設定されている可能性があります。ただし、ファイアウォールを使用している場合は別の問題が発生している可能性もあります。ファイアウォールに、ディープパケットインスペクション、SSLインスペクション、またはDatabricksコマンドが失敗する原因となる何かが含まれている可能性があります。Databricksサブネットに含まれるEC2インスタンスを使用して、以下を試してください。
curl -X GET -H 'Authorization: Bearer <token>' \
https://<workspace-name>.cloud.databricks.com/api/2.0/clusters/spark-versions
<token>
を自分の個人用アクセストークンに置き換え、ワークスペースの正しいURLを使用します。「トークン管理 API」を参照してください。
このリクエストが失敗した場合は、SSL検証を削除するリクエストで -k
オプションを試してください。これが -k
オプションで機能する場合は、ファイアウォールによって SSL証明書に問題が発生しています。
以下を使用して SSL 証明書を確認し、ドメイン名を地域の コントロールプレーン Web アプリケーションドメイン に置き換えます。
openssl s_client -showcerts -connect oregon.cloud.databricks.com:443
このコマンドは、リターンコードとDatabricks証明書を表示します。エラーが返された場合は、ファイアウォールの設定が間違っている可能性があるため修正する必要があります。
SSLの問題はネットワーク層の問題ではない点に注意してください。ファイアウォールでトラフィックを表示しても、これらのSSLの問題は表示されません。ソースと宛先リクエストの確認は問題なく機能します。
メタストアまたはコンピュート イベント ログの使用中に問題が発生するMETASTORE_DOWN
ワークスペースが稼働しているように見え、コンピュートを設定できるにもかかわらず、コンピュートのイベントログにMETASTORE_DOWN
イベントがある場合、またはメタストアが機能していないように見える場合は、SquidプロキシなどのWebアプリケーションファイアウォール(WAF)を使用しているかどうかを確認してください。コンピュートのメンバーは、WAF経由で動作しないいくつかのサービスに接続する必要があります。
コンピュート スタート エラー: インスタンスで Spark コンテナを起動できませんでした
次のようなコンピュート ログ エラーが表示される場合があります。
Cluster start error: failed to launch spark container on instance ...
Exception: Could not add container for ... with address ....
Timed out with exception after 1 attempts
この コンピュートログエラー は、インスタンスがSTSを使用してルート S3 バケットに入ることができないことが原因である可能性があります。 これは通常、流出防止を実装している場合、VPC エンドポイントを使用して通信をロックダウンしている場合、またはファイアウォールを追加している場合に発生します。
修正するには、以下のいずれかの操作を行います。
- VPC 要件のドキュメントに記載されているように、グローバル STS エンドポイントが通過 ( ) できるようにファイアウォールを変更します (
sts.amazonaws.com
)。 - VPC エンドポイントを使用して 、リージョンエンドポイントを設定します。
エラーに関する詳細情報を取得するには、decode-authorization-message
AWS CLI コマンドを呼び出します。詳細については、デコード認証メッセージに関するAWSの記事を参照してください。コマンドは以下のようになります。
aws sts decode-authorization-message --encoded-message
STS VPCEに対してワークスペースとは異なるセキュリティグループを使用してVPCエンドポイント(VPCE)を設定すると、このエラーが発生することがあります。セキュリティグループを更新することにより各セキュリティグループ内のリソースが相互に通信できるようにするか、あるいはSTS VPCE をワークスペースサブネットと同じセキュリティグループに配置してください。
コンピュートノードは、STS を使用して、顧客 S3 ポリシーを使用してルートS3バケットにアクセスする必要があります。ネットワーク パスは、 コンピュートAWS ノードから STS サービスで使用できる必要があります。Databricks