gpt4 book ai didi

docker - Mysql 通过 ssh 远程连接到 kubernetes pod

转载 作者:行者123 更新时间:2023-12-02 11:52:19 26 4
gpt4 key购买 nike

许多 devops 出于各种原因和查询使用 mysql connect over ssh 来访问生产数据库

成功将mysql容器部署到 digital ocean kubernetes集群后
我可以通过 ssh 进入 pod:

kubectl --kubeconfig="kubeconfig.yaml" exec -it vega-mysql-5df9b745f9-c6859 -c vega-mysql -- /bin/bash

我的问题是如何将应用程序(例如:navicat-sequel pro 或 mysql workbench)远程连接到此 pod?

最佳答案

Nitpick:即使您可以使用它来启动交互式 shell,kubectl exec与 SSH 不同。因此,支持 SSH 隧道连接的常规 MySQL 客户端不(并且可能永远不会)支持连接到通过 kubectl exec 隧道连接的 MySQL 服务器。 .

替代解决方案:使用 kubectl port-forward 将 Pod 的 MySQL 服务器端口 3306 转发到您的本地机器:

kubectl port-forward vega-mysql-5df9b745f9-c6859 3306:3306

这将指示 kubectl 作为 TCP 代理从您机器上的本地端口进入 Pod。然后,连接到 127.0.0.1:3306使用您选择的任何 MySQL 客户端:
mysql -u youruser -p -h 127.0.0.1 

关于docker - Mysql 通过 ssh 远程连接到 kubernetes pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53898627/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com