问题标签 [kubernetes-secrets]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - kubernetes 秘密项目未作为文件路径挂载
我有以下yaml:
我希望秘密已经安装,/app/appsettings.secret.json
但事实并非如此。我不知道它安装在哪里,容器崩溃了,我也没有机会kubectl exec
进入容器检查秘密的安装位置。我的猜测是它会清除/app
. 任何建议和见解都值得赞赏。
kubernetes - 如何处理 ConfigMaps 中的秘密?
我想使用 a Secret
inside a ConfigMap
。这可能吗?
例子:
如果您想从Fluentd 写入 S3 ,则可能需要这样做的一个示例。在配置中,您必须添加您的 AWS 凭证。
备择方案:
在集群本身上使用环境变量。我不喜欢这个想法,因为该变量仍将包含纯文本形式的秘密。
在设置过程中传递密码。如果您使用部署工具,则可能会在应用程序部署期间传递秘密。这也不是一个好的解决方案,因为您仍然将秘密作为纯文本传递给部署工具。这种方法的一个优点是您不会意外地将您的秘密签入 git。
kubernetes - Prometheus:监控外部 K8s 集群的更好选择
我有两个不以任何方式相互通信的 Kubernetes 集群。这个想法是维护一个 prometheus 实例(在另一个第三个集群中),它可以从两个集群中抓取端点。
我在每个集群中创建了一个服务帐户,赋予它集群角色和集群角色绑定,并获取了一个秘密的 yaml 文件。然后,我在运行 prometheus 的第三个集群中导入了相同的秘密。使用这些挂载的秘密,我能够从集群 1 和 2 中的所有 pod 中提取数据。
有没有更好的选择来实现这个用例?我在某种程度上将秘密从一个集群转移到另一个集群以获得相同的 ca.crt 和令牌。
azure-aks - 无法提取图像 - 未经授权:需要身份验证 (ImagePullBackOff )
我的发布管道成功运行并在 Azure Kubernetes 中创建了一个容器,但是当我在 azure Portal>Kubernetes service> Insights 屏幕中查看时,它显示失败。
它无法从我的私有容器存储库中提取图像,并显示错误消息“ImagePullBackOff”
我在 pod 上做了 kubectl describe 并收到以下错误消息:
无法提取图像“myexampleacr.azurecr.io/myacr:13”:[rpc 错误:代码 = 未知 desc = 来自守护进程的错误响应:获取https://myexampleacr.azurecr.io/v2/myacr/manifests/53:未授权: 需要认证。
下面是我的设置的简要背景:我正在使用 Kubernetes 机密来访问私有容器注册表中的容器。
我使用我的 DevOps 团队创建的服务原则中的 clientId 和密码(秘密)生成了 Kubernetes 秘密。. 用于生成 kubernetes secret 的命令:
kubectl 创建秘密 docker-registry acr-auth --docker-server --docker-username --docker-password --docker-email
然后我用 imagePullSecrets: name:acr-auth 更新了我的 deployment.yaml
在此之后,我运行我的部署和发布管道都成功运行,但它们在 kubernetes 服务中显示失败,并显示错误消息“ImagePullBackOff”错误。
任何帮助都感激不尽。
kubernetes - 如何从一个集群中获取 Kubernetes 机密以应用于另一个集群?
对于我的 e2e 测试,我正在启动一个单独的集群,我想将我的生产 TLS 证书导入其中。我无法在两个集群之间切换上下文(从一个导出/获取以及导入/应用(输入)到另一个),因为集群似乎不可见。
我使用 GitLab CI 提取了一个 MVCE,并在.gitlab-ci.yml
其中创建了一个秘密用于演示目的:
我添加了secret-transfer-[1/2]-$CI_COMMIT_SHORT_SHA-$CI_PIPELINE_IID
beforekubectl
语句以避免error: no server found for cluster "secret-transfer-1-...-..."
,但它不会改变结果。
我创建了一个项目secret-transfer
,激活了 Kubernetes API 并获得了我在环境变量中提供的 Compute Engine 服务帐户的 JSON 密钥GOOGLE_KEY
。结帐后的输出是
我期待kubectl get secret
工作,因为两个集群都存在并且--cluster
参数指向正确的集群。
kubernetes - kubernetes:从 pod 中读取 pod 的秘密
有没有办法从吊舱内读取吊舱的秘密?
该 pod 是使用default
服务帐户创建的,因此即使我安装了kubectl
我也无法执行get secrets
,除非我弄乱了默认 SA(我想避免这种情况)。
我知道这些秘密可以通过env
命令以纯文本形式获得,但其他一些环境变量也是如此。
我怎么能具体告诉哪些是来自secrets
?
(我没有使用卷来安装机密,不幸的是,由于超出了这个问题的范围,这不能改变)
python - How to refer Environment variables mentioned in openshift deployment, inside python code running in the pod of same deployment
I am new to Openshift container platform. I am trying to deploy my ML model written in python, which serves the Json request based on authentication of name/password already mentioned in the py code.
Now what I am doing is, I am creating a secrert dm
in Openshift name-space and adding it in the deployment as below
How can I use the username and password mentioned in this secret in my python code, I have tried with the openshift docbut it doesnt complete my requirement of using the value in the code.
kubernetes - Helm Secrets 无法识别数据
我正在尝试在一个简单的应用程序上实现 Helm Secrets。我想使用 Helm Secrets 插件安装应用程序。这是我的加密模板/secrets.yaml 文件:
未加密的文件如下所示:
如果我helm secrets install --name=webtest . -f templates/secrets.yaml
使用未加密的秘密文件运行,它可以正常工作,但是当我尝试使用加密的文件运行它时,它会给我这个错误:
有什么解决办法吗?提前致谢
kubernetes - 在 pod 运行时挂载 Kubernetes secret
我在我的 StatefulSet 中定义了一个可选的秘密卷,例如
此外,我将它安装在我的容器中。当我配置 pod 时,秘密还不存在。
稍后,在集群上安装了另一个服务,它会创建my-secret
. 有什么方法可以将该秘密安装在我最初标记为可选的 pod 中,而无需重新启动 pod?
docker - 来自服务器的错误(BadRequest):pod“espace-client-client”中的容器“espace-client-client”正在等待启动:尝试提取图像但失败
一个月前,我在 Kubernetes prod 集群上部署了我的第一个应用程序。
我可以从 gitlab 注册表部署我的 2 个服务(前/后)。
现在,我将一个新的 docker 镜像推送到 gitlab 注册表,并希望在 prod 中重新部署它:
这是我的部署文件:
我不知道里面是什么gitlab-registry
。我自己没有做,做的人离开了工作人员:(不过,我拥有所有的权限,所以,我只需要知道要放入什么秘密,也许可以删除它并重新创建它。
似乎秘密是基于我的 .docker/config.json
我试图删除现有的秘密,注销
然后再次登录:
并使用以下方法提取图像:
这有效。
文件:~/.docker/config.json
看起来很奇怪:
它似乎没有包含任何凭据...
然后我重新创建我的秘密
我也尝试过:
并再次部署:
但我仍然有同样的错误: