サポート終了通知: 2025 AWS 年 9 月 10 日、 は AWS RoboMaker のサポートを終了します。2025 年 9 月 10 日以降、 AWS RoboMaker コンソールまたは AWS RoboMaker リソースにアクセスできなくなります。コンテナ化されたシミュレーションの実行に役立つ AWS Batch への移行の詳細については、このブログ記事
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
トラブルシューティング AWS RoboMaker
以下のセクションでは、 AWS RoboMaker シミュレーション、IDEs、または Simulation WorldForge の使用時に発生する可能性のあるエラーや問題のトラブルシューティングに関するアドバイスを提供します。ここに記載されていない問題が見つかった場合は、このページの下部で [フィードバックを提供します] ボタンを使用して報告することができます。
シミュレーションジョブのログは、 CloudWatch Logs コンソール streamOutputToCloudWatch
を True
に設定すると、ツールにも同じ動作が適用されます。シミュレーションジョブで カスタムアップロード設定の追加 がアップロードするよう設定することもできます。
詳細については、「AWS RoboMaker でのログ記録とモニタリング」を参照してください。
シミュレーションジョブ
問題: シミュレーションジョブが失敗しました。
以下の質問を参考にして根本原因を特定し、推奨アクションを実行してください。
Amazon S3 リソースは AWS RoboMaker と同じリージョンにありますか?
ロボットアプリケーション、シミュレーションアプリケーション、および出力場所は、 AWS RoboMaker と同じリージョンにある必要があります。アプリケーションのソースとシミュレーションジョブの出力の場所を確認してください。
ロボットアプリケーションは異常終了しましたか?
シミュレーション用にロボットアプリケーションをセットアップするときに問題がありました。Amazon CloudWatch でシミュレーションジョブのロボットアプリケーションを確認してください。
ログにはシミュレーションジョブの詳細画面からアクセスします。[Logs] (ログ) を選択し、ログストリームを選択します。特定の問題を見つけるには、フィルターを使用します。例えば、WARNING または ERROR を使用します。
アプリケーションの .so
ファイルが欠落していませんか?
アプリケーションがクラッシュした場合、依存する共有オブジェクト (.so
) ファイルが欠落している場合があります。環境のアプリケーションバンドルを抽出し、必要な共有オブジェクトライブラリが /usr/local/lib
または /usr/lib
に存在することを確認してください。依存関係がパッケージ .xml
ファイルに追加されていることを確認します。
AWS CLIでロールの ARN を使用しましたか?
create-simulation-job
から を呼び出すときは AWS CLI、ロール名だけでなく、ロールの完全な Amazon リソースネーム (ARN) を使用します。
ロールには AWS RoboMaker の信頼ポリシーがありますか?
create-simulation-job
から を呼び出すときに IAM ロールの完全な Amazon リソースネーム (ARN) を渡す場合 AWS CLI、信頼ポリシーに十分な権限がない可能性があります。以下のように、ロールに robomaker.amazonaws.com
と信頼関係があることを確認します。
{"Version": "2012-10-17", "Statement": {"Effect": "Allow", "Principal": { "Service": "robomaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": {"StringEquals": {"aws:SourceAccount": "account#" // Account where the simulation job resource is created }, "StringEquals": {"aws:SourceArn": "arn:aws:robomaker:region:account#:simulation-job/*" } } } }
条件キーは、 AWS サービス間のトランザクション中に サービスを混乱した代理として使用することを防ぎます。条件キーに関する詳しい情報については、「SourceAccount」と「SourceArn」を参照してください。
ロールアクセスの表示と IAM ロールへの信頼ポリシーの追加の詳細については、「ロールの修正」を参照してください。
Amazon S3 に発行するためのアクセス許可がロールにありますか?
シミュレーションジョブの出力 Amazon S3 バケットを指定する場合、ロールにはバケットへの書き込みアクセス許可が必要です。信頼ポリシーを更新して書き込みアクセス許可を含めてください。以下の信頼ポリシーの例は、読み取りアクセス許可、リストアクセス許可、および Amazon S3 バケットへの書き込みアクセス許可を追加します。
{"Action": "s3:ListBucket", "Resource": [ "amzn-s3-demo-bucket/*" ], "Effect": "Allow" },{"Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "amzn-s3-demo-bucket/*" ], "Effect": "Allow" },{"Action": "s3:Put*", "Resource": [ "amzn-s3-demo-bucket/*" ], "Effect": "Allow" }
ロールには、CloudWatch に発行するアクセス許可がありますか?
IAM ロールのアクセス許可ポリシーを更新して CloudWatch へのアクセスを含めてください。
{"Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": "*" }
アプリケーションに不一致のエンティティタグがありませんか?
エンティティタグ (ETag) は、シミュレーションの作成時に提供される Amazon S3 オブジェクトのハッシュです。ETag は、オブジェクトのコンテンツに加えた変更のみを反映し、メタデータに加えた変更は反映しません。 AWS RoboMaker がロボットアプリケーションまたはシミュレーションバンドルを使用する前に Amazon S3 のロボットアプリケーションまたはシミュレーションバンドルのコンテンツを変更すると、バージョンの不一致が発生します。
この問題を解決するには、ロボットアプリケーションやシミュレーションアプリケーションの新しいバージョンを作成し、更新したアプリケーションバンドルのキーの場所を指定します。詳細については、アプリケーションバージョンの作成 または シミュレーションアプリケーションバージョンの作成 を参照してください。
サブネットの Elastic Network Interface (ENI) の制限を超えていますか?
AWS RoboMaker は、シミュレーションジョブが実行されるサブネット内の同時シミュレーションジョブごとに 1 つの ENI を使用します。これらの ENI ごとに IP アドレスを割り当てる必要があります。この問題を解決する方法は以下のとおりです。
未使用の ENI を削除し、サブネットの IP アドレスを解放します。未使用の ENI を削除するには、「ネットワークインターフェイスの削除」を参照してください。
を使用して AWS Management Console、特定の AWS リージョンの ENIs のサービス制限の引き上げ
起動コマンドは適切に設定されていますか?
シミュレーションが複雑な場合やコンテナイメージが大きい場合は、シミュレーションジョブの起動に数分かかることがあります。 AWS RoboMaker がシミュレーションジョブの準備に 25 分以上費やした場合、起動コマンドに問題がある可能性があります。ジョブをキャンセルして新しいシミュレーションジョブを作成します。問題が解決しない場合は、 AWS サポートにお問い合わせください。
CloudWatch Logs を使用すると、シミュレーションとロボットアプリケーションの実行ログにエラーがないかどうかを確認できます。ターミナルのカスタマイズされたツールを追加して、実行中のシミュレーションジョブに接続し、トラブルシューティングを行うこともできます。
サブネットは AWS RoboMaker がサポートするゾーンにありますか?
AWS RoboMaker でサポートされている 2 つの AWS アベイラビリティーゾーンにサブネットを指定します。API レスポンスには、サポートされている AWS アベイラビリティーゾーンのリストが含まれます。
ワールドファイルのモデル参照は正しいですか?
CloudWatch Logs を使用して、ワールドファイルのすべてのモデルが正しいことを確認します。モデルが見つからない場合は、以下のエラーが表示されます。
[Wrn] [ModelDatabase.cc:340] Getting models from[http://models.gazebosim.org/]. This may take a few seconds. [Wrn] [ModelDatabase.cc:212] Unable to connect to model database using [http://models.gazebosim.org//database.config]. Only locally installed models will be available. [Err] [ModelDatabase.cc:414] Unable to download model[model://model_name] [Err] [SystemPaths.cc:429] File or path does not exist[""] Error [parser.cc:581] Unable to find uri[model://model_name]
Simulation WorldForge
問題: ワールド生成ジョブが失敗しました。
ワールド生成ジョブが完了しなかった場合は、ワールドカウント floorplanCount * interiorCountPerFloorplan
が 1 より大きく 50 未満であるか確認してください。
問題: ワールドエクスポートジョブが失敗したのはなぜですか?
以下の質問を参考にして根本原因を特定し、推奨アクションを実行してください。
AWS RoboMaker の信頼ポリシーはありますか?
create-world-export-job
から を呼び出すときに IAM ロールの完全な Amazon リソースネーム (ARN) を渡す場合 AWS CLI、信頼ポリシーに十分な権限がない可能性があります。以下のように、ロールに robomaker.amazonaws.com
と信頼関係があることを確認します。
{"Version": "2012-10-17", "Statement": {"Effect": "Allow", "Principal": { "Service": "robomaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": {"StringEquals": {"aws:SourceAccount": "account#" // Account where the simulation job resource is created }, "StringEquals": {"aws:SourceArn": "arn:aws:robomaker:region:account#:simulation-job/*" } } } }
条件キーは、 AWS サービス間のトランザクション中に サービスを混乱した代理として使用することを防ぎます。条件キーに関する詳しい情報については、「SourceAccount」と「SourceArn」を参照してください。
Amazon S3 に発行するためのアクセス許可がロールにありますか?
エクスポートジョブの出力 Amazon S3 バケットを指定する場合、ロールにはバケットへのアクセス許可が必要です。信頼ポリシーを更新してアクセス許可を含めてください。
{"Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetObject", "s3:PutObject" ], "Resource": "amzn-s3-demo-bucket" }
エクスポートジョブに対して指定されているバケットを変更または削除しましたか?
エクスポートジョブ中にバケットを更新すると、エクスポートジョブの ResourceNotFound
エラーが発生することがあります。
問題: ワールドイメージに問題があります。
以下の質問を参考にして根本原因を特定し、推奨アクションを実行してください。
出入口にドアがないのはなぜですか?
ドアは、バージョン 2 以降のテンプレートを使用している場合しか追加できません。バージョン 1 テンプレートを新しいバージョンに更新できます。詳細については、「シミュレーションワールドテンプレートのバージョン、機能、および変更」を参照してください。
AWS RoboMaker Simulation WorldForge は一意でランダムなワールドを作成するため、指定したドア設定は生成時にワールドに存在しない可能性があります。例えば、テンプレートでリビングルームとキッチンの間にドアを指定し、それらの部屋の間に開放壁があるとします。出入口の代わりに開放壁があるので、そこにはドアを追加できないはずです。
ドアが部屋の入口を塞いでるのはなぜですか?
部屋の入口を塞ぐドアは、ロボットへのチャレンジに使用できる状況です。このチャレンジをロボットに提示しないワールドを作成するには、以下の作業のいずれかを行ってください。
ワールドテンプレートから別のワールドを生成する。新しいワールドで生成されたドアは入口を塞がないかもしれません。
ワールドテンプレート内のドアの開放率を変更する。
ワールドイメージ内の壁が、シミュレーションジョブ内またはエクスポートされたワールド内の壁よりも短いのはなぜですか?
AWS RoboMaker では、ワールドイメージの壁を切り捨てることで、壁に隠れることなく Simulation WorldForge ワールドを表示できます。壁の高さは、作成したワールドのワールドテンプレートで指定した高さになります。
バージョン 2 以降のテンプレートで生成されたワールドでは、ワールドイメージにおいてドアモデルが切り取られません。ワールドイメージ内のドアの高さは、作成したワールドのドアの高さと同じになります。