kubernetes - Kubernetes 作业无法识别环境
问题描述
我正在使用以下工作模板:
apiVersion: batch/v1
kind: Job
metadata:
name: rotatedevcreds2
spec:
template:
metadata:
name: rotatedevcreds2
spec:
containers:
- name: shell
image: akanksha/dsserver:v7
env:
- name: DEMO
value: "Hello from the environment"
- name: personal_AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: rotatecreds-env
key: personal_aws_secret_access_key
- name: personal_AWS_SECRET_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: rotatecreds-env
key: personal_aws_secret_access_key_id
- name: personal_GIT_TOKEN
valueFrom:
secretKeyRef:
name: rotatecreds-env
key: personal_git_token
command:
- "bin/bash"
- "-c"
- "whoami; pwd; /root/rotateCreds.sh"
restartPolicy: Never
imagePullSecrets:
- name: regcred
shell 脚本运行一些 ansible 任务,结果如下:
TASK [Get the existing access keys for the functional backup ID] ***************
fatal: [localhost]: FAILED! => {"changed": false, "cmd": "aws iam list-access-keys --user-name ''", "failed_when_result": true, "msg": "[Errno 2] No such file or directory", "rc": 2}
但是,如果我使用以下相同的 iamge 旋转 pod
apiVersion: batch/v1
kind: Job
metadata:
name: rotatedevcreds3
spec:
template:
metadata:
name: rotatedevcreds3
spec:
containers:
- name: shell
image: akanksha/dsserver:v7
env:
- name: DEMO
value: "Hello from the environment"
- name: personal_AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: rotatecreds-env
key: personal_aws_secret_access_key
- name: personal_AWS_SECRET_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: rotatecreds-env
key: personal_aws_secret_access_key_id
- name: personal_GIT_TOKEN
valueFrom:
secretKeyRef:
name: rotatecreds-env
key: personal_git_token
command:
- "bin/bash"
- "-c"
- "whoami; pwd; /root/rotateCreds.sh"
restartPolicy: Never
imagePullSecrets:
- name: regcred
这会创建一个 POD,我可以登录到该 pod 并运行/root/rotateCreds.sh
在运行作业时,它似乎无法识别 aws cli。我试过调试whoami
,分别pwd
等于root
和/
,这很好。任何指针缺少什么?我是新来的工作。
为了在作业模板中进一步调试,我添加了10000
几秒钟的睡眠,以便我可以登录到容器并查看发生了什么。我注意到登录后我也可以手动运行脚本。aws
命令被正确识别。
解决方案
很可能您PATH
的设置不正确,快速解决方法是/usr/local/bin/aws
在/root/rotateCreds.sh
脚本中定义 aws-cli 的绝对路径
推荐阅读
- angular - 如何通过单击角度获取行数据表
- xamarin.forms - 无法从视图中检索自定义控件值
- python - 查找元素文本列表的最有效方法 Selenium Python
- sql - 从 SQL Server 中的行连接
- javascript - 在 javascript 中通过 django 模板检索 json 数据时出错,在参数列表后给出 Uncaught SyntaxError: missing )
- sql - 在 Impala 表中重采样...按时间段分组
- arrays - 对数组中的每个对象执行多个函数并将结果重定向到文件
- java - 如何将一个数组输入与另一个相关联?
- r - 通过 plotly 下拉菜单切换显示的轨迹
- ansible - Ansible如何在剧本中获得等效的嵌套for循环