我正在尝试在 App Engine Flexible 上运行 Airflow Webserver,但是要使其正常工作,我需要一个已安装的 GCS 存储桶。我正在使用自定义运行时。我这样做的原因是为了获得一个安全端点,该端点由 app Engine 与 IAP 一起提供。
我的 app.yaml 是一个简单的文件,包含服务名称、环境和运行时我的 Dockerfile 有很多apt-get install
s,在 CMD 中有 gcsfuse 安装和运行气流网络服务器,这没什么大不了的。
尝试在 App Engine 中使用 gcsfuse 时遇到的错误是:
daemonize.Run: readFromProcess: sub-process: mountWithArgs: mountWithConn: Mount: mount: running fusermount: exit status 1
stderr:
fusermount: fuse device not found, try 'modprobe fuse' first
我知道 Google Composer 存在,但它对我的需求来说太贵了。所以我更喜欢在 GAE 上创建一个带有调度程序和网络服务器的 VM,共享一个 GCS 存储桶,类似于 Composer 提供的,但没有所有 HA 和我想要运行的简单事情的疯狂成本。
我正在寻找在 App Engine 中执行此操作,到目前为止我发现的所有答案都出于某种原因提到了 GKE。
我知道这是一个权限问题,但是在 App Engine 中我看不到任何设置权限的选项,这样做的方法会非常有帮助。
甚至可以在 App Engine 上做我想做的事吗?