【问题标题】:Galera Cluster Rancher Node Scaling IssueGalera Cluster Rancher 节点扩展问题
【发布时间】:2017-05-15 21:22:21
【问题描述】:

我有一个非常具体的问题。我正在使用 Rancher 来管理我的 docker 容器,并且正在使用 Galera 集群社区模板。我在我的设置中添加了第二台主机,如果我现在正在扩展集群 - 它一直在说

level=fatal msg="无效字符 '

我无法真正追踪错误,也不知道在哪里查看。

到目前为止我的研究 - 它可能连接到主机通信协议(http vs https),因为其他人有这个错误。

我的问题 - 如何跟踪/调试和修复此错误?

Additional information:
Docker Version on both hosts: 1.12.5
Rancher Version: v1.1.4

如果您需要其他任何信息 - 我很乐意提供更多信息。

【问题讨论】:

  • 如果您将所有 Galera 节点放在同一台服务器上,请说明您希望获得什么。
  • 您好瑞克,感谢您的关注。我想在两台主机上扩展集群的节点。我希望提高速度(减少主系统的工作量)。扩展到两台主机应该很容易 - 但我不知道哪里有错误。
  • 同一物理服务器上的两个 Galera 节点:您在 I/O 中没有任何收获,可能会因为缓存较小和冗余 I/O 而丢失一些东西。此外,现在每次写入都必须在同一物理服务器上写入两次,从而增加了 I/O 负载。
  • 你好 Rick,我想你误会了 - 我有 两台 物理服务器并且想将节点分发给它们。

标签: docker mariadb galera rancher


【解决方案1】:

我花了一段时间才弄清楚这一点。这实际上不是模板或 Galera Cluster 本身的问题。 问题在于牧场主/码头工人在环境中获取IP的方式。原因是 ubuntu 默认使用 dns 服务器作为本地地址 127.0.0.1 并且是设计使然。问题是 docker 容器无法在 127.0.0.1 中查找。

查看您的 /etc/resolv.conf 文件

进行测试:

docker run -it ubuntu bash
apt update
apt install dnsutils
# This will not respond
dig @127.0.0.1 your.hostname.com

注意:ping 可以正常工作,并且可能会欺骗您认为名称解析正在工作。挖掘是这样做的正确方法。

您也可以使用 rancher cli 来获得问题的提示:

mkdir -p support
rancher hosts -a > support/hosts
rancher logs --tail=-1 ipsec/ipsec > support/ipsec 2>&1
rancher logs --tail=-1 network-services/metadata > support/metadata 2>&1
rancher logs --tail=-1 network-services/network-manager > support/network-manager 2>&1

解决方案:

有两种解决方案:

1 - 将 ubuntu 配置为使用其他名称服务器,例如 google public dns (8.8.8.8, 8.8.4.4)。我尝试了这个,但是对于一个简单的更改来说太复杂了,正如所说的,ubuntu 是通过设计使用它的。

2 - 更改 docker dns 服务器。这对我来说很好。您将编辑或创建文件 /etc/docker/daemon.json 并放入以下行:

{
  "dns": ["8.8.8.8", "8.8.4.4"]
}

停止容器并重新启动守护进程:

docker stop $(docker ps -q)
docker stop $(docker ps -q) # yes twice :-) rancher will try do restart your dying containers
systemctl restart docker

非常感谢Giovanni

【讨论】:

    猜你喜欢
    • 2018-05-27
    • 2012-04-20
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多