
derekyle/mariadb-galera本镜像为适用于MariaDB Galera集群的专用镜像,支持在Kubernetes/OpenShift环境中部署,提供自动节点发现、集群配置及数据库初始化功能,简化Galera集群的部署与管理流程。
POD_NAMESPACE环境变量自动检测集群环境peer-finder工具,自动发现集群中的其他节点/etc/my.cnf.d/galera.cnf构建镜像时,会调用脚本/usr/libexec/container-setup.sh,该脚本执行以下操作:
容器运行时,入口脚本为/usr/bin/container-entrypoint.sh,执行流程如下:
集群环境检测:
POD_NAMESPACE环境变量是否存在(标识Kubernetes/OpenShift环境)/usr/bin/peer-finder工具查找集群中的其他节点peer-finder调用/usr/share/container-scripts/mysql/configure-galera.sh生成Galera配置文件/etc/my.cnf.d/galera.cnf数据库初始化检测:
/var/lib/mysql/mysql目录是否存在/usr/share/container-scripts/mysql/configure-mysql.sh进行首次配置启动数据库:
mysqld并传入正确参数启动MariaDB服务就绪探针脚本位于/usr/share/container-scripts/mysql/readiness-probe.sh,功能如下:
peer-finder是用于查找服务所有Pod的Go二进制工具,源码地址:[***]
bash$ go get -v $ CGO_ENABLED=0 go build -a -installsuffix cgo --ldflags '-w' ./peer-finder.go
bashdocker run -d \ -e POD_NAMESPACE=my-galera-namespace \ -v /path/to/mysql/data:/var/lib/mysql \ --name galera-node-1 \ mariadb-galera-image
| 环境变量 | 描述 | 示例值 |
|---|---|---|
| POD_NAMESPACE | Kubernetes/OpenShift命名空间,用于集群节点发现 | my-galera-namespace |

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务