【发布时间】:2019-07-08 08:25:39
【问题描述】:
好的,所以我正在使用这个 repo 的修改版本:https://github.com/CaptTofu/mysql_replication_kubernetes/tree/master/galera_sync_replication
修改后的文件有:
服务:
apiVersion: v1
kind: Service
metadata:
name: ro-db
labels:
unit: pxc-cluster
spec:
ports:
- port: 3306
name: mysql
selector:
unit: pxc-cluster
pxc1,它是相同的复制控制器,用于发现的服务以及 2 和 3 的持久卷声明,只是更改了数字
apiVersion: v1
kind: Service
metadata:
name: pxc-node1
labels:
node: pxc-node1
spec:
ports:
- port: 3306
name: mysql
- port: 4444
name: state-snapshot-transfer
- port: 4567
name: replication-traffic
- port: 4568
name: incremental-state-transfer
selector:
node: pxc-node1
---
apiVersion: v1
kind: ReplicationController
metadata:
name: pxc-node1
spec:
replicas: 1
template:
metadata:
labels:
node: pxc-node1
unit: pxc-cluster
spec:
nodeSelector:
number: '1'
containers:
- image: capttofu/percona_xtradb_cluster_5_6:beta
name: pxc-node1
ports:
- containerPort: 3306
- containerPort: 4444
- containerPort: 4567
- containerPort: 4568
env:
- name: GALERA_CLUSTER
value: "true"
- name: WRSEP_ON
value: "true"
- name: WSREP_CLUSTER_ADDRESS
value: gcomm://
- name: WSREP_SST_USER
value: sst
- name: WSREP_SST_PASSWORD
value: sst
- name: MYSQL_USER
value: mysql
- name: MYSQL_PASSWORD
value: mysql
- name: MYSQL_ROOT_PASSWORD
value: c-krit
volumeMounts:
- name: mysql-persistent-storage-1
mountPath: /var/lib
securityContext:
capabilities: {}
privileged: true #privileged required for mount
volumes:
- name: mysql-persistent-storage-1
persistentVolumeClaim:
claimName: claim-galera-1
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: claim-galera-1
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 4Gi
selector:
matchLabels:
name: pxc1
问题是它几天前还在工作,并进行了大量测试以关闭 pod、节点并查看复制投票和一切工作情况,现在当我集成到应用程序时,它只是无法启动,我不明白为什么如果它的配置相同,我在互联网、SO、GitHub 上看了很多,并尝试了建议的修复但不起作用。
2018-10-23 20:36:46 1 [Note] WSREP: (4be59ce1, 'tcp://0.0.0.0:4567') turning message relay requesting on, nonlive peers: tcp://10.244.2.61:4567
2018-10-23 20:36:47 1 [Note] WSREP: forgetting 49c4d2cf (tcp://10.244.2.61:4567)
2018-10-23 20:36:47 1 [Note] WSREP: (4be59ce1, 'tcp://0.0.0.0:4567') turning message relay requesting off
2018-10-23 20:36:47 1 [Warning] WSREP: no nodes coming from prim view, prim not possible
2018-10-23 20:36:47 1 [Note] WSREP: view(view_id(NON_PRIM,4be59ce1,5) memb {
4be59ce1,0
} joined {
} left {
} partitioned {
47f2860c,0
49c4d2cf,0
})
2018-10-23 20:36:50 1 [Note] WSREP: view((empty))
2018-10-23 20:36:50 1 [ERROR] WSREP: failed to open gcomm backend connection: 110: failed to reach primary view: 110 (Connection timed out)
at gcomm/src/pc.cpp:connect():162
2018-10-23 20:36:50 1 [ERROR] WSREP: gcs/src/gcs_core.cpp:long int gcs_core_open(gcs_core_t*, const char*, const char*, bool)():206: Failed to open backend connection: -110 (Connection timed out)
2018-10-23 20:36:50 1 [ERROR] WSREP: gcs/src/gcs.cpp:long int gcs_open(gcs_conn_t*, const char*, const char*, bool)():1379: Failed to open channel 'galera_kubernetes' at 'gcomm://pxc-node2,pxc-node3': -110 (Connection timed out)
2018-10-23 20:36:50 1 [ERROR] WSREP: gcs connect failed: Connection timed out
2018-10-23 20:36:50 1 [ERROR] WSREP: wsrep::connect(gcomm://pxc-node2,pxc-node3) failed: 7
2018-10-23 20:36:50 1 [ERROR] Aborting
2018-10-23 20:36:50 1 [Note] WSREP: Service disconnected.
2018-10-23 20:36:51 1 [Note] WSREP: Some threads may fail to exit.
2018-10-23 20:36:51 1 [Note] Binlog end
2018-10-23 20:36:51 1 [Note] mysqld: Shutdown complete
有什么建议吗?现在已经有几个小时了,就是不能让它工作
【问题讨论】:
-
你的服务中的目标端口在哪里,也许最好明确地做到这一点
-
我过去也遇到过同样的错误,问题是我必须使用
--wsrep-new-cluster选项启动第一个galera 节点。在此处查看我对类似问题的回答:stackoverflow.com/questions/33277865/… 这可能就是您要查找的内容。 -
@CiprianStoica 我现在正在尝试使用图像:最新而不是 beta,我也已经尝试过你的解决方案,但对我没有用,无论如何它变得更好至少服务器正在启动!非常感谢
-
@paltaa Percona 将很快发布官方 K8s 支持。请继续关注我们的博客以获取公告。
标签: mysql docker kubernetes percona-xtradb-cluster