[英]Running mysql commands with Kubectl
我在我的 Kubernetes 集群上部署了mariadb-gallera ,一旦部署了 pod 并且它启动并运行,我想进入 pod 并以 root 身份登录到 mysql,然后创建一个数据库,如果它不存在在那里。
我试图这样做,但失败并出现错误:
name: "Run command on every Pod labelled app=glaera"
command: >
kubectl exec -i "{{ item }}" --namespace backend -- mysql -u'root' -p'YWRtaW4xMjM=' -- 'CREATE DATABASE IF NOT EXISTS aves';
with_items: "{{ pod_names }}"
请帮我解决。
错误:
failed: [localhost] (item=galera-mariadb-galera-0) => {"ansible_loop_var": "item", "changed": true, "cmd": ["kubectl", "exec", "-i", "galera-mariadb-galera-0", "--namespace", "backend", "--", "mysql", "-uroot", "-pYWRtaW4xMjM=", "--", "CREATE DATABASE IF NOT EXISTS aves;"], "delta": "0:00:00.190892", "end": "2021-02-02 11:57:37.806727", "item": "galera-mariadb-galera-0", "msg": "non-zero return code", "rc": 1, "start": "2021-02-02 11:57:37.615835", "stderr": "ERROR 1049 (42000): Unknown database 'CREATE DATABASE IF NOT EXISTS aves;'\ncommand terminated with exit code 1", "stderr_lines": ["ERROR 1049 (42000): Unknown database 'CREATE DATABASE IF NOT EXISTS aves;'", "command terminated with exit code 1"], "stdout": "", "stdout_lines": []}
您的命令中有错字-
- name: "Run command on every Pod labelled app=glaera"
command: >
kubectl exec -i "{{ item }}" --namespace backend -- mysql -u'root' -p'YWRtaW4xMjM=' -e 'CREATE DATABASE IF NOT EXISTS aves';
with_items: "{{ pod_names }}"
请注意,在'CREATE
之前应该有-e
。
另外,请使用k8s_exec
模块而不是command
模块。
例如,
- community.kubernetes.k8s_exec:
pod: mysql-deployment-5b68bb45bc-n98lp
namespace: default
command: mysql --defaults-file=client.conf -h 127.0.0.1 studentdb -e 'CREATE DATABASE IF NOT EXISTS aves'
您的命令中有错字-
- name: "Run command on every Pod labelled app=glaera"
command: >
kubectl exec -i "{{ item }}" --namespace backend -- mysql -u'root' -p'YWRtaW4xMjM=' -e 'CREATE DATABASE IF NOT EXISTS aves';
with_items: "{{ pod_names }}"
请注意,在'CREATE
之前应该有-e
。
另外,请使用k8s_exec
模块而不是command
模块。
例如,
- community.kubernetes.k8s_exec:
pod: mysql-deployment-5b68bb45bc-n98lp
namespace: default
command: mysql --defaults-file=client.conf -h 127.0.0.1 -e 'CREATE DATABASE IF NOT EXISTS aves'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.