azure 如何修复terraform databricks_global_init_script在首次部署时导致HTTP 503错误的问题?

a14dhokn  于 2023-06-30  发布在  其他
关注(0)|答案(1)|浏览(123)

我正在使用terraform在Azure上部署一个数据块工作区,其中包括一个全局init脚本。没什么特别的--工作区可以通过一个私有端点访问,初始化脚本depends_on同时访问工作区和私有端点。整个过程使用现有的服务主体进行身份验证。
当我从头开始terraform apply时,我从init脚本创建中获得以下结果:

<log preamble> POST /api/2.0/global-init-scripts
> {
>   "enabled": true,
>   "name": "the-init-script.sh",
>   "position": 0,
>   "script": "some base 64... (1234 more bytes)"
> }
< HTTP/2.0 503 Service Unavailable
< {
<   "error_code": "TEMPORARILY_UNAVAILABLE",
<   "message": "Missing credentials to access Azure container"
< }: timestamp=<a timestamp>

这种情况持续了几分钟,然后我才能从现有状态中得到一个没有错误的terraform apply
就谷歌而言,这是第一次有人在公共互联网上发布这个错误信息,我找不到任何相关的东西,似乎指向一个类似的问题。
这显然是某种传播问题,因为它在几分钟后就消失了,但我很想弄清楚是否有其他东西可以依赖,使这个计划干净地应用

ozxc1zmp

ozxc1zmp1#

这是already reported在github问题的Databricks Terraform提供商-在某些情况下,事情传播得不够快。
记者发帖说,他们能够解决这个问题,并通过在创建工作空间和添加全局init脚本之间添加延迟来获得干净的应用程序-他们的答案是:
我们已经通过使用on_create 30 s超时添加time_sleepdepends_on工作区ID解决了这个问题。全局init脚本等待30秒,其中depends_on this time_sleep

相关问题