问题
起程拓殖部署您正在使用AWS,你得到一个工作空间没有凭证验证检查错误消息。
│错误:MALFORMED_REQUEST:凭证验证检查失败:请用一个有效的帐户我的角色和权限设置正确││databricks_mws_credentials。这一点,在cross-account-role│。tf线29日在资源“databricks_mws_credentials”“这”:│29:资源“databricks_mws_credentials”“这”{│
导致
这个问题可能发生由于竞态条件由起程拓殖cross-account角色配置应用。如果你重新运行起程拓殖应用得到许可后没有凭证验证检查错误,操作成功,不会导致一个错误消息。
解决方案
你应该添加一个人工延迟的依赖cross-account角色配置。这可以防止发生在使用起程拓殖的竞态条件。
- 在这个例子中cross-account角色配置文件,time_sleep.wait添加了依赖。
/ / cross-account-role。tf / /正确配置的cross-account角色创建新的工作区AWS帐户内。/ /见https://registry.terraform。io /供应商/ databrickslabs /砖/最近/ docs /资源/ mws_credentials资源“databricks_mws_credentials”“这”{提供者=砖。多工作站系统account_id = var.databricks_account_id role_arn = aws_iam_role.cross_account_role。在攻击credentials_name = " ${当地。前缀}-creds“depends_on = [time_sleep。等待]}
- 延迟的持续时间设置为10秒。你可以根据需要调整延迟长度。
资源“time_sleep”{depends_on = [aws_iam_role“等待”。cross_account_role] create_duration = " 10 "}
- 保存更新后的cross-account角色配置文件。
- 运行起程拓殖init。
- 运行起程拓殖应用。
后添加了人工延迟cross-account角色配置可以恢复正常部署起程拓殖。
检查起程拓殖time_sleep文档为更多的信息。
你也可以检查砖起程拓殖的文档。