- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想与我的 Kubeflow 管道分享一些 secret ,这样我就可以将它们用作容器中的环境变量。我写了一个 pipeline-secrets.yaml,看起来像这样:
apiVersion: v1
kind: Secret
metadata:
name: pipeline-secrets
namespace: kubeflow
type: Opaque
data:
mysql_db_name: <SECRET>
mysql_username: <SECRET>
mysql_password: <SECRET>
mysql_endpoint: <SECRET>
和一个 pipeline-pod-defaults.yaml 看起来像这样:
apiVersion: kubeflow.org/v1alpha1
kind: PodDefault
metadata:
name: pipeline-pod-defaults
namespace: kubeflow
specs:
desc: Configure pipeline secrets as environment variables
env:
- name: MYSQL_DB_NAME
valueFrom:
secretKeyRef:
name: pepeline-secrets
key: mysql_db_name
- name: MYSQL_USER_NAME
valueFrom:
secretKeyRef:
name: pepeline-secrets
key: mysql_username
- name: MYSQL_PASSWORD
valueFrom:
secretKeyRef:
name: pepeline-secrets
key: mysql_password
- name: MYSQL_ENDPOINT
valueFrom:
secretKeyRef:
name: pepeline-secrets
key: mysql_endpoint
这就是我的管道的样子:
import kfp
from kfp.dsl import ContainerOp
from kubernetes import client as k8s_client
@kfp.dsl.pipeline(
name="Training pipeline",
description=""
)
def train_pipeline():
get_data = ContainerOp(
name="Get data",
image=BASE_IMAGE,
file_outputs={
'data': 'data.csv'
}
)
kfp.dsl.get_pipeline_conf().set_image_pull_secrets([
k8s_client.V1ObjectReference(name="regcred"),
k8s_client.V1ObjectReference(name="pipeline-secrets"),
])
kfp.dsl.ResourceOp(
name="pipeline-pod-defaults",
k8s_resource=k8s_client.V1ObjectReference(name="pipeline-pod-defaults"),
action="apply"
)
但最后我得到了这个错误:
This step is in Failed state with this message: error: error validating "/tmp/manifest.yaml": error validating data: [apiVersion not set, kind not set]; if you choose to ignore these errors, turn validation off with --validate=false
这是正确的做法吗?我如何与管道的其余部分分享我的 secret ?抱歉,如果这是一个新手问题,我是 Kubernetes 和 Kubeflow 的新手
最佳答案
所以,最后,我所做的是编写一个 get-data-components.yaml 来创建我的组件并编写下面的函数并且它起作用了:
def build_get_data():
component = kfp.components.load_component_from_file(os.path.join(COMPONENTS_PATH, 'get-data-component.yaml'))()
component.add_volume(k8s_client.V1Volume(
name="get-data-volume",
secret=k8s_client.V1SecretVolumeSource(secret_name="pipeline-secrets"))
)
envs = [
("MYSQL_DB_NAME", "mysql_db_name"),
("MYSQL_USER_NAME", "mysql_username"),
("MYSQL_PASSWORD", "mysql_password"),
("MYSQL_ENDPOINT", "mysql_endpoint")
]
for name, key in envs:
component.add_env_variable(
V1EnvVar(
name=name,
value_from=k8s_client.V1EnvVarSource(secret_key_ref=k8s_client.V1SecretKeySelector(
name="pipeline-secrets",
key=key
)
)
)
)
return component
关于python - 在 Kubeflow 管道中共享 secret ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66423449/
我正在尝试在我的 minikube 上启动并运行 keycloak。 我正在安装keycloak helm upgrade -i -f kubernetes/keycloak/values.yaml
我将我的数据库密码存储到AWS密钥管理器的Secret Value字段中。如果我使用以下代码,如何检索密码值?。在密钥管理器中定义的密钥:密钥在密钥管理器中定义的值:DBPwd。当我写入日志文件时,上
I am storing my database password into the Secret value field in the aws secret manager. How do I
我正在尝试在 AWS CDK 上组合一个相对简单的堆栈,其中涉及来自 aws-ecs-patterns 的 ApplicationLoadBalancedFargateService。 我的问题涉及
今天我在悠闲地阅读时偶然发现了 Recommendation for Pair-Wise Key Establishment Schemes Using Discrete Logarithm Cryp
不是一个真正的编程问题,但很想知道 Kubernetes 或 Minikube 如何管理 secret 并在多个节点/pod 上使用它? 假设我创建了一个 secret 来使用 kubectl 提取图
我需要从 AWS dynamoDB 和第三方 https 服务中获取元素并将这些结果合并到 AWS appSyn 中并将结果作为 graphQL 响应发回 我正在使用的第三方服务需要客户端证书。我没有
我收到一个错误: gpg: no default secret key: No secret key gpg: [stdin]: clearsign failed: No secret key GPG
我正在尝试为 kubernetes 集群设置私有(private) docker 镜像注册表。我正在关注 link $ cat ~/.docker/config.json | base64 ew
当我开发一个API服务器时,我需要给API服务器一些账户信息,这些信息不应该给任何人看。K8s对这种情况推荐secret,所以我用了。 但我想知道这个 secret 是否真的是 secret 。 se
在大多数有关在 Kubernetes 中使用 secret 的示例中,您都可以找到类似的示例: apiVersion: v1 kind: Secret metadata: name: mysecr
我正在与 terraform 合作,在 azure 中启动不同的资源。其中一些资源包含敏感数据,我希望将其安全地存储在 aws Secret Manager 中。这在 Terraform 中是可行的过
我有带有有效 key 的 Azure 应用程序注册。 我正在尝试使用 v1.0 获取 token ,如下所示(clientId 是上述应用程序注册的 ID) $body = @{ grant_
本文讨论如何安装 secret 卷。 https://learn.microsoft.com/en-us/azure/container-instances/container-instances-v
我正在使用 kubernetes 将 Rails 应用程序部署到谷歌容器引擎。 遵循 kubernetes secret 文档:http://kubernetes.io/v1.1/docs/user-
我正在与 terraform 合作,在 azure 中启动不同的资源。其中一些资源包含敏感数据,我希望将其安全地存储在 aws Secret Manager 中。这在 Terraform 中是可行的过
我有带有有效 key 的 Azure 应用程序注册。 我正在尝试使用 v1.0 获取 token ,如下所示(clientId 是上述应用程序注册的 ID) $body = @{ grant_
本文讨论如何安装 secret 卷。 https://learn.microsoft.com/en-us/azure/container-instances/container-instances-v
我有一个 python 脚本,它在 AWS 中创建一些访问 key 并将它们存储在 secret 管理器中。 但是,当我存储 key 时,我收到一条错误消息: The secret value can
我在 Secrets Manager 控制台上创建了一个 key 。然后我尝试使用 Go 代码 quickstart guide喜欢 ctx := context.Background() clien
我是一名优秀的程序员,十分优秀!