内容简介:Heketi是一个GlusterFs管理软件,可以管理glusterFS集群的卷创建、删除等操作。1.GlusterFS集群的各peer必须要有未安装文件系统的磁盘设备(磁盘设备未进行格式化)2.GlusterFS集群各peer的端口号不能太少,不然当peer上的brick将端口号用完后,会造成无法创建卷
Heketi是一个GlusterFs管理软件,可以管理glusterFS集群的卷创建、删除等操作。
Heketi管理GlusterFS集群需要注意:
1.GlusterFS集群的各peer必须要有未安装文件系统的磁盘设备(磁盘设备未进行格式化)
2.GlusterFS集群各peer的端口号不能太少,不然当peer上的brick将端口号用完后,会造成无法创建卷
3.GlusterFS的各peer不能组成集群,Heketi可以自创建集群组合。
Heketi安装步骤:
1.使用rpm包安装:
rpm -ivh heketi-7.0.0-1.el7.x86_64.rpm
2.配置文件:
配置文件位置:
/etc/heketi/heketi.json
配置文件示例:
{
#默认端口8080
"port": "8088",
#不需要密码
"use_auth": false,
#glusterfs集群配置信息
"glusterfs": {
"executor": "ssh",
"sshexec": {
"keyfile": "/etc/heketi/heketi_key",
"user": "root"
},
"db": "/heketidb/heketi.db",
"loglevel" : "debug"
}
}
3.检查是否正常运行,执行如下命令:
curl http://localhost:8088/hello
返回值正常:
Hello from Heketi
Heketi和GlusterFS各节点配置信赖关系
注意:就是配置Heketi免密登录GlusterFS集群各节点,当Heketi配置文件的<“glusterfs”>键如此写时,可以使用如下方式进行配置免密登录
"glusterfs": {
"executor": "ssh",
"sshexec": {
"keyfile": "/etc/heketi/heketi_key",
"user": "root"
},
"db": "/heketidb/heketi.db",
"loglevel" : "debug"
}
1.创建目录/etc/heketi(也可以不创建,任意目录都行)
mkdir /etc/heketi
2.生成heketi秘钥对
ssh-keygen -f /etc/heketi/heketi_key -t rsa -N ''
3.将生成秘钥的公钥导入到GlsuterFS集群的各peer的</root/.ssh/authorized_keys>文件中
通过heketi-client 向Heketi导入GlusterFS集群信息
安装heketi-client:
1.使用rpm安装
rpm -ivh /export/servers/heketi-client-7.0.0-1.el7.x86_64.rpm
2.配置配置文件:/etc/heketi/topology.json(文件需要提前创建)
{
"clusters": [
{
"nodes": [
{
"node": {
"hostnames": {
"manage": [
"1.1.1.6"
],
"storage": [
"1.1.1.6"
]
},
"zone": 1
},
"devices": [
"/dev/sdb"
]
},
{
"node": {
"hostnames": {
"manage": [
"1.1.1.7"
],
"storage": [
"1.1.1.7"
]
},
"zone": 1
},
"devices": [
"/dev/sdb"
]
},
{
"node": {
"hostnames": {
"manage": [
"1.1.1.8"
],
"storage": [
"1.1.1.8"
]
},
#配置机柜感知
"zone": 1
},
"devices": [
"/dev/sdb"
]
}
]
}
]
}
3.向heketi发送GlusterFS集群信息
heketi-cli --server http://localhost:8088 topology load --json=/etc/heketi/topology.json
如何给集群扩容?
- 重新配置/etc/heketi/topology.json文件信息后,导入到heketi中就可以扩容。
- 也可以通过<heketi-cli –server http://localhost:8088 node> add命令为集群扩容
使用Heketi管理GlusterFS集群
1.新建heketidbstorage数据库(heketi用于记录GLusterFS集群磁盘空间信息等资源使用情况的数据库)
heketi-cli --server http://localhost:8088 setup-openshift-heketi-storage
2.查看GlusterFS集群的信息
#集群列表 heketi-cli --server http://localhost:8088 cluster list #集群详细信息 heketi-cli --server http://localhost:8088 cluster info <cluster ID> #节点信息 heketi-cli --server http://localhost:8088 node info <node ID> #卷信息 heketi-cli --server http://localhost:8088 volume list
3.其他常用命令
#heketi支持如下命令 heketi-cli --server http://localhost:8088 -h blockvolume Heketi Volume Management cluster Heketi cluster management db Heketi Database Management device Heketi device management help Help about any command loglevel Heketi Log Level node Heketi Node Management setup-openshift-heketi-storage Setup OpenShift/Kubernetes persistent storage for Heketi topology Heketi Topology Management volume Heketi Volume Management #集群相关命令 heketi-cli --server http://localhost:8088 cluster -h create Create a cluster delete Delete the cluster info Retrieves information about cluster list Lists the clusters managed by Heketi setflags Set flags on a cluster #节点相关命令 heketi-cli --server http://localhost:8088 node -h add Add new node to be managed by Heketi delete Deletes a node from Heketi management disable Disallow usage of a node by placing it offline enable Allows node to go online info Retrieves information about the node list List all nodes in cluster remove Removes a node and all its associated devices from Heketi rmtags Removes tags from a node settags Sets tags on a node #卷相关命令 heketi-cli --server http://localhost:8088 volume -h clone Creates a clone create Create a GlusterFS volume delete Deletes the volume expand Expand a volume info Retrieves information about the volume list Lists the volumes managed by Heketi 其他的命令可以通过<-h>查看详细使用方式
实际部署中遇到的问题
1.heketi-client导入GlusterFS集群配置信息时遇到的问题
正常时的输出日志:
#heketi-cli topology load --json=topology-sample.json
Creating cluster ... ID: 5b930ef6081fd22e895c25a3dfb0c516
Allowing file volumes on cluster.
Allowing block volumes on cluster.
Creating node 10.30.1.15 ... ID: b120572be40db6c1d979c3903876430b
Adding device /dev/sdb ... OK
Creating node 10.30.1.16 ... ID: 7ce13ffc5eabe64a3791e93233fd3c1a
Adding device /dev/sdb ... OK
Creating node 10.30.1.17 ... ID: f9abdc2e5d4cfa17c035a97f984a1a3b
Adding device /dev/sdb ... OK
当磁盘文件系统已经存在时的错误日志
[root@10-211-105-109 heketi]# heketi-cli --server http://localhost:8088 topology load --json=/etc/heketi/topology.json Creating node 10.211.105.200 ... ID: 6c0476a0b495bc67c2e6b181ca2f0813 Adding device /dev/sda5 ... Unable to add device: Can't open /dev/sda5 exclusively. Mounted filesystem?
当节点是已经位于其他集群中时的报错
[root@10-211-105-109 heketi]# heketi-cli --server http://localhost:8088 topology load --json=/etc/heketi/topology.json Creating node 10.211.106.9 ... Unable to create node: peer probe: failed: 10.211.106.9 is either already part of another cluster or having volumes configured
2.当使用heketi创建卷时,创建失败后会怎样
heketi记录的节点空间会减少,并且无法释放。也看不到卷信息。最终的结果是节点空间显示使用了很多,但是看不到任何的使用情况。这会不会是一个BUG?
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- ES 集群管理工具 cerebro
- Spring Boot集群管理工具KafkaAdminClient
- repmgr 5.1 发布,PostgreSQL 集群复制管理与故障转移工具
- repmgr 4.4 发布,PostgreSQL 集群复制管理与故障转移工具
- repmgr 4.4发布,PostgreSQL 集群复制管理与故障转移工具
- 版本管理工具及 Ruby 工具链环境
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
ODPS权威指南
李妹芳 / 人民邮电出版社 / 2014-12 / 69元
ODPS(Open Data Processing Service)是阿里巴巴自主研发的海量数据处理和分析的服务平台,主要应用于数据分析、海量数据统计、数据挖掘、机器学习和商业智能等领域。目前,ODPS不仅在阿里内部得到广泛应用,享有很好的口碑,正逐步走向第三方开放市场。 本书是学习和掌握ODPS的权威指南,作者来自阿里ODPS团队。全书共13章,主要内容包括:ODPS入门、整体架构、数据通......一起来看看 《ODPS权威指南》 这本书的介绍吧!