# Wordpress pod cannot access mysql pod on different nodes

**URL:** <https://discuss.kubernetes.io/t/wordpress-pod-cannot-access-mysql-pod-on-different-nodes/31912>\
**Category:** General Discussions\
**Tags:** development, network\
**Created:** [March 20, 2025, 12:54am UTC](https://discuss.kubernetes.io/t/wordpress-pod-cannot-access-mysql-pod-on-different-nodes/31912 "2025-03-20T00:54:58Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Bernard\_Bereness](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.kubernetes.io/bernard_bereness/32/17067_2.png) [@Bernard\_Bereness](https://discuss.kubernetes.io/u/Bernard_Bereness)\
**Post date:** [March 20, 2025, 12:54am UTC](https://discuss.kubernetes.io/t/wordpress-pod-cannot-access-mysql-pod-on-different-nodes/31912/1 "2025-03-20T00:54:58Z")

</div>

**I want to ask why my WordPress pod cannot access the MySQL pod on a different node. For example, MySQL is on worker1, and the WordPress pod on worker2 cannot access the database, while the WordPress pod on the same node as MySQL can access the database.**

### Cluster information:

Kubernetes version: v1.30.10  
Cloud being used: Cloud, but using metallb  
Installation method: Manual  
Host OS: Linux Ubuntu 22.04.05  
CNI and version: Calico, v3.28.1  
CRI and version: Containerd, 1.7.25 (master), 1.7.24 (worker)

**wordpress-deployment.yaml**  
apiVersion: v1  
kind: Service  
metadata:  
name: wordpress  
labels:  
app: wordpress  
spec:  
ports:  
- port: 80  
targetPort: 80  
nodePort: xxxxx  
selector:  
app: wordpress  
tier: frontend  
type: NodePort

apiVersion: v1  
kind: Service  
metadata:  
name: wordpress-load  
labels:  
app: wordpress  
spec:  
ports:  
- port: 80  
targetPort: 80  
selector:  
app: wordpress  
tier: frontend  
type: LoadBalancer

apiVersion: v1  
kind: PersistentVolume  
metadata:  
name: wp-pv  
labels:  
app: wordpress  
spec:  
capacity:  
storage: 5Gi  
accessModes:  
- ReadWriteOnce  
persistentVolumeReclaimPolicy: Retain  
hostPath:  
path: “/mnt/data/wp-storage”

apiVersion: v1  
kind: PersistentVolumeClaim  
metadata:  
name: wp-pv-claim  
labels:  
app: wordpress  
spec:  
accessModes:  
- ReadWriteOnce  
resources:  
requests:  
storage: 5Gi

apiVersion: apps/v1  
kind: Deployment  
metadata:  
name: wordpress  
labels:  
app: wordpress  
spec:  
replicas: 4  
selector:  
matchLabels:  
app: wordpress  
tier: frontend  
strategy:  
type: Recreate  
template:  
metadata:  
labels:  
app: wordpress  
tier: frontend  
spec:  
containers:  
- image: wordpress:6.2.1-apache  
name: wordpress  
env:  
- name: WORDPRESS\_DB\_HOST  
value: 10.103.138.111 // mysql cluster ip  
- name: WORDPRESS\_DB\_PASSWORD  
valueFrom:  
secretKeyRef:  
name: mysql-pass  
key: password  
- name: WORDPRESS\_DB\_USER  
value: bernard  
- name: WORDPRESS\_DB\_NAME  
value: wordpress\_database  
ports:  
- containerPort: 80  
name: wordpress  
volumeMounts:  
- name: wordpress-persistent-storage  
mountPath: /var/www/html  
volumes:  
- name: wordpress-persistent-storage  
persistentVolumeClaim:  
claimName: wp-pv-claim

**mysql-deployment**  
apiVersion: v1  
kind: Service  
metadata:  
name: wordpress-mysql  
labels:  
app: wordpress  
spec:  
type: NodePort  
ports:  
- port: 3306  
targetPort: 3306  
nodePort: xxxxx  
selector:  
app: wordpress  
tier: mysql

apiVersion: v1  
kind: PersistentVolume  
metadata:  
name: mysql-pv  
labels:  
app: wordpress  
spec:  
capacity:  
storage: 5Gi  
accessModes:  
- ReadWriteOnce  
persistentVolumeReclaimPolicy: Retain  
hostPath:  
path: “/mnt/data/mysql”

apiVersion: v1  
kind: PersistentVolumeClaim  
metadata:  
name: mysql-pv-claim  
labels:  
app: wordpress  
spec:  
accessModes:  
- ReadWriteOnce  
resources:  
requests:  
storage: 5Gi

apiVersion: apps/v1  
kind: Deployment  
metadata:  
name: wordpress-mysql  
labels:  
app: wordpress  
spec:  
selector:  
matchLabels:  
app: wordpress  
tier: mysql  
strategy:  
type: Recreate  
template:  
metadata:  
labels:  
app: wordpress  
tier: mysql  
spec:  
containers:  
- image: mysql:5.7  
name: mysql  
env:  
- name: MYSQL\_ROOT\_PASSWORD  
valueFrom:  
secretKeyRef:  
name: mysql-pass  
key: password  
- name: MYSQL\_DATABASE  
value: wordpress\_database  
- name: MYSQL\_USER  
value: bernard  
- name: MYSQL\_PASSWORD  
valueFrom:  
secretKeyRef:  
name: mysql-pass  
key: password  
ports:  
- containerPort: 3306  
name: mysql  
volumeMounts:  
- name: mysql-persistent-storage  
mountPath: /var/lib/mysql  
volumes:  
- name: mysql-persistent-storage  
persistentVolumeClaim:  
claimName: mysql-pv-claim
