我已经在Google Cloud Platform上托管的Kubernetes集群上托管了Jenkins。我正在尝试通过Jenkins运行python脚本。该脚本需要读取MySQL上的一些值。 MySQL实例正在其中一个实例上单独运行。我一直在将Kubernetes连接到MySQL实例时遇到问题。我收到以下错误:
sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on '35.199.154.36' (timed out)
根据文档,我尝试通过专用IP地址进行连接。 生成了一个具有MySQL用户名和密码的机密,并以以下格式包含了主机IP地址,并以this document作为参考:
apiVersion: v1
kind: Secret
metadata:
name: db-credentials
type: Opaque
data:
hostname:<MySQL external ip address>
kubectl create secret generic literal-token --from-literal user=<username> --from-literal password=<password>
这是我要在Jenkins Pod模板中插入的Pod的原始yaml文件。
任何有关如何克服此SQL连接问题的帮助将不胜感激。
答案 0 :(得分:0)
您无法在Pod模板字段中创建机密。您需要先创建机密,然后再运行作业并将其从pod模板中挂载,或者仅根据环境的安全级别将pod模板中的用户/密码作为环境变量引用