bar*_*man 1 google-cloud-platform kubernetes airflow google-cloud-composer
我想让我的 Cloud Composer 环境(Google Cloud 的托管 Apache Airflow 服务)在不同的kubernetes 集群上启动pod。我该怎么做?
请注意,Cloud composer 在 kubernetes 集群上运行气流。该集群被认为是作曲家的“环境”。使用 的默认值KubernetesPodOperator,composer 将在自己的集群上调度 pod。但是,在这种情况下,我有一个不同的 kubernetes 集群,我想在其上运行 pod。
我可以连接到工作 Pod 并在gcloud container clusters get-credentials CLUSTERNAME那里运行,但 Pod 时不时会被回收,所以这不是一个持久的解决方案。
我注意到 theKubernetesPodOperator既有 anin_cluster又有cluster_context论点,这似乎很有用。我希望这会起作用:
pod = kubernetes_pod_operator.KubernetesPodOperator(
task_id='my-task',
name='name',
in_cluster=False,
cluster_context='my_cluster_context',
image='gcr.io/my/image:version'
)
Run Code Online (Sandbox Code Playgroud)
但这导致 kubernetes.config.config_exception.ConfigException: Invalid kube-config file. Expected object with name CONTEXTNAME in kube-config/contexts list
虽然如果我kubectl config get-contexts在工作 Pod 中运行,我可以看到列出的集群配置。
所以我无法弄清楚的是:
为此,请查看GKEPodOperator。
文档中的示例用法:
operator = GKEPodOperator(task_id='pod_op',
project_id='my-project',
location='us-central1-a',
cluster_name='my-cluster-name',
name='task-name',
namespace='default',
image='perl')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1235 次 |
| 最近记录: |