我已经在我的 Kubernetes 集群中部署了 MySQL。它工作正常。但我不知道如何访问或连接 MySQL 服务到其他应用程序。我发现 MySQL 部署不受浏览器支持。 当我在浏览器上使用
IP:nodeport
调用MySQL服务器时,发现如下错误:
J���
5.7.37����!bo.;�ÿÿ�ÿÁ����������rBPvNbCJ�mysql_native_password�!��ÿ„#08S01Got packets out of order
我可以使用 MySQL 用户和密码通过 Kubernetes 仪表板的 pod shell 访问 MySQL 服务器。
您可以尝试在 Kubernetes 上部署 MySQL 客户端并使用它进行连接。
MySQL 客户端,例如:Adminer、phpMyadmin 等
管理员示例:
apiVersion: apps/v1
kind: Deployment
metadata:
name: adminer
labels:
app: adminer
spec:
selector:
matchLabels:
app: adminer
template:
metadata:
labels:
app: adminer
spec:
containers:
- name: adminer
image: adminer:4.6.3
ports:
- containerPort: 8080
env:
- name: ADMINER_DESIGN
value: "pappu687"
---
apiVersion: v1
kind: Service
metadata:
name: adminer-svc
spec:
selector:
app: adminer
ports:
- protocol: TCP
port: 8080
targetPort: 8080
您可以使用服务类型 Nodeport 或 Port forwarding 公开此部署。
kubectl port-forward svc/adminer-svc 8080:8080
打开
localhost:8080
服务公开后,您可以在浏览器中访问 UI,然后您可以从那里通过 服务名称访问 MySQL 数据库。
阅读更多关于管理员的信息:https://www.adminer.org/