为什么我不能创建该gluster卷?


9

我正在设置我的第一个Gluster 3.4安装程序,直到我要创建分布式复制卷为止,一切都准备就绪。

我有4个服务器192.168.0.11、192.168.0.12、192.168.0.13和192.168.0.14。

从192.168.0.11我运行了:

gluster peer probe 192.168.0.12
gluster peer probe 192.168.0.13
gluster peer probe 192.168.0.14

在每台服务器上,我在/ export / brick1处都有一个已装入的存储卷

然后我在192.168.0.11上运行

gluster卷创建gv0副本2 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1

但是我得到了错误:

volume create: gv0: failed: Host 192.168.0.11 is not in 'Peer in Cluster' state

当然,如果您运行gluster对等状态,它会显示与其他已连接主机的3个对等。即对等体数:3

主机名:192.168.0.12端口:24007 Uuid:bcea6044-f841-4465-88e4-f76a0c8d5198状态:集群中的对等体(已连接)

主机名:192.168.0.13端口:24007 Uuid:3b5c188e-9be8-4d0f-a7bd-b738a88f2199状态:集群中的对等体(已连接)

主机名:192.168.0.14端口:24007 Uuid:f6f326eb-0181-4f99-8072-f27652dab064状态:集群中的对等体(已连接)

但是,从192.168.0.12开始,同一命令还显示3个主机,而192.168.0.11是其中的一部分。即

Number of Peers: 3

Hostname: 192.168.0.11
Port: 24007
Uuid: 09a3bacb-558d-4257-8a85-ca8b56e219f2
State: Peer in Cluster (Connected)

Hostname: 192.168.0.13
Uuid: 3b5c188e-9be8-4d0f-a7bd-b738a88f2199
State: Peer in Cluster (Connected)

Hostname: 192.168.0.14
Uuid: f6f326eb-0181-4f99-8072-f27652dab064
State: Peer in Cluster (Connected)

因此,192.168.0.11绝对是群集的一部分。

问题是,为什么在运行gluster命令时无法在第一台gluster服务器上创建卷。这是正常现象还是某种错误?

Answers:


15

我看到有关对等端127.0.0.1的未连接套接字的模糊错误消息。

[2013-08-16 00:36:56.765755] W [socket.c:1494:__ socket_proto_state_machine] 0-socket.management:从套接字读取失败。错误(未连接传输端点),对等(127.0.0.1:1022)

原来我遇到的问题是由于NAT而引起的。我试图创建位于NAT设备后面的gluster服务器,并使用公共IP来解析名称。这只是无法在本地计算机上正常工作。

我在每个节点上都拥有以下内容。

包含以下内容的主机文件

192.168.0.11  gluster1
192.168.0.12  gluster2
192.168.0.13  gluster3
192.168.0.14  gluster4

解决方法是先删除受信任的对等方

sudo gluster peer detach gluster2
sudo gluster peer detach gluster3
sudo gluster peer detach gluster4

然后将每台机器上的主机文件更改为

# Gluster1
127.0.0.1     gluster1
192.168.0.12  gluster2
192.168.0.13  gluster3
192.168.0.14  gluster4


# Gluster2
192.168.0.11  gluster1
127.0.0.1     gluster2
192.168.0.13  gluster3
192.168.0.14  gluster4

等等

然后进行对等探测,最后创建成功的卷。

我怀疑在这种情况下使用IP地址(公共地址)是否可行。如果您使用NAT后面的专用地址,它应该可以工作。就我而言,每个服务器都位于AWS云中的NAT之后。


1
就我而言,我不必接触127.0.0.1,使用内部IP地址就足够了
导致了

1

尝试使用以下格式将副本数明确定义为四个节点:-

gluster volume create NEW-VOLNAME [stripe COUNT] [replica COUNT] [transport <tcp | rdma>] NEW-BRICK ...

我认为这个纯副本没有条纹吗?

尝试从192.168.0.11开始:-

首先分离所有内容:

sudo gluster peer detach 192.168.0.12
sudo gluster peer detach 192.168.0.13
sudo gluster peer detach 192.168.0.14

下次以这种格式重新添加

gluster volume create gv0 replica 4 transport tcp 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1

注意我已经明确定义了这个四节点副本集。我也明确定义了通过tcp的传输。

如果您希望在副本集中的两个设备之间进行条带化,则应使用以下内容:-

gluster volume create gv0 stripe 2 replica 2 transport tcp 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1

坚持下去,我最近发现了gluster,我爱上了分布式文件系统的这种意识形态。

我使用gluster为KVM虚拟数据存储提供HA冗余。魔术的东西


不幸的是,我得到完全相同的错误。另外,当未指定副本数并且当前所有卷都已分离时,我将收到相同的错误。然后删除192.168.0.11砖,然后声称192.168.0.12主机不在群集状态的对等中,因此您需要首先对其进行探测。至少在3.4版中就是这种情况
Matt

您可能会建议它只是最新版本中的一个怪癖。您正在设置集合中的所有三个对等点的事实表明,无论192.168.0.11上是否设置了错误,边缘都将正常工作。当您从第五个测试节点挂载共享并写入glusterFS时,会发生什么情况。写出现在所有砖块上吗?
AngryWombat

实际上,我什至无法在单个积木上创建正态分布的卷。我只是收到一条错误消息,指出无法创建。日志中没有任何信息。这让我感觉就像完全将其丢弃。
马特(Matt)2013年

5周前,我遇到了类似的问题,改用v3.3解决了我的问题。在此阶段,唯一的其他建议是考虑重新回到3.3的角色。
AngryWombat

也可能只是从两个节点开始并从那里开始工作...您正在使用什么发行版?我用这个仓库在本图12.04上运行了我的软件:-sudo add-apt-repository ppa:semiosis / ubuntu-glusterfs-3.3
AngryWombat 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.