基于docker部署glusterfs集群

基于docker部署glusterfs集群

参考:https://github.com/gluster/gluster-containers

准备3个节点,每个节点执行以下命令运行glusterfs容器:

docker run -d --name gluster \
  -v /etc/glusterfs:/etc/glusterfs:z \
  -v /var/lib/glusterd:/var/lib/glusterd:z \
  -v /var/log/glusterfs:/var/log/glusterfs:z \
  -v /sys/fs/cgroup:/sys/fs/cgroup:ro \
  -v /dev/:/dev --restart=always \
  -v /glusterfs/:/glusterfs \
  --privileged=true --net=host \
  gluster/gluster-centos

挂载目录说明:

  • /etc/glusterfs:持久化gluster configuration
  • /var/lib/glusterd:持久化gluster metadata
  • /var/log/glusterfs:持久化gluster logs
  • /glusterfs: 创建volume

查看容器运行状态

[root@gluster1 ~]# docker ps -a
CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS               NAMES
988c802d8e58        gluster/gluster-centos   "/usr/local/bin/upda…"   3 minutes ago       Up 3 minutes                            gluster

查看glusterd进程运行状态

[root@localhost ~]# docker exec -it gluster bash

[root@localhost /]# systemctl status glusterd
● glusterd.service - GlusterFS, a clustered file-system server
   Loaded: loaded (/usr/lib/systemd/system/glusterd.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-05-29 18:00:48 UTC; 5min ago
     Docs: man:glusterd(8)
  Process: 78 ExecStart=/usr/sbin/glusterd -p /var/run/glusterd.pid --log-level $LOG_LEVEL $GLUSTERD_OPTIONS (code=exited, status=0/SUCCESS)
 Main PID: 79 (glusterd)
   CGroup: /system.slice/docker-8cd538665c8c4c0293b9299d1baa37ce99b59df6d08e18568cb72b4556cc49d3.scope/system.slice/glusterd.service
           └─79 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO

May 29 18:00:47 localhost.localdomain systemd[1]: Starting GlusterFS, a clustered file-system server...
May 29 18:00:48 localhost.localdomain systemd[1]: Started GlusterFS, a clustered file-system server.

查看系统版本和glusterfs版本

[root@localhost /]# cat /etc/redhat-release 
CentOS Linux release 7.7.1908 (Core)

[root@localhost /]# gluster --version
glusterfs 7.1

进入任一容器执行添加集群操作,ip地址为节点IP:

[root@localhost /]# gluster peer probe 192.168.93.61
peer probe: success. 
[root@localhost /]# gluster peer probe 192.168.93.62
peer probe: success.

创建volume

gluster volume create vol_distributed transport tcp \
  192.168.93.60:/glusterfs/vol1 \
  192.168.93.61:/glusterfs/vol1 \
  192.168.93.62:/glusterfs/vol1 force

启动volume

[root@localhost /]#  gluster volume start vol_distributed 
volume start: vol_distributed: success

查看voluem信息

[root@localhost /]# gluster volume info 
 
Volume Name: vol_distributed
Type: Distribute
Volume ID: 79dd669f-4600-49ff-8dba-6374646dce2b
Status: Started
Snapshot Count: 0
Number of Bricks: 3
Transport-type: tcp
Bricks:
Brick1: 192.168.93.60:/glusterfs/vol1
Brick2: 192.168.93.61:/glusterfs/vol1
Brick3: 192.168.93.62:/glusterfs/vol1
Options Reconfigured:
transport.address-family: inet
storage.fips-mode-rchecksum: on
nfs.disable: on

客户端节点:

yum install -y centos-release-gluster
yum install -y glusterfs glusterfs-fuse

挂载卷到本地

mount -t glusterfs 10.130.70.12:/vol_distributed /mnt

写入数据验证

touch /mnt/file{1..9}.txt

[root@localhost ~]# ls /glusterfs/vol1/
789  file1.txt  file2.txt  file3.txt  file5.txt  file7.txt  file9.txt

参考:https://blog.csdn.net/wylfengyujiancheng/article/details/90576192

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!要基于Docker部署Ceph集群,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装了DockerDocker Compose。您可以从官方网站上下载并安装最新版本的Docker。 2. 创建一个用于存储Ceph配置文件和数据的目录。例如,您可以在主机上创建一个名为"/data/ceph"的目录。 3. 创建一个用于存储Ceph监视器数据的目录。例如,您可以在主机上创建一个名为"/data/ceph/mon"的目录。 4. 创建一个Docker Compose文件,用于定义Ceph集群的各个组件。以下是一个简单的示例: ``` version: '3' services: mon: image: ceph/daemon:latest-luminous volumes: - /data/ceph/mon:/var/lib/ceph/mon entrypoint: ceph-mon --foreground --cluster ceph -i ${HOSTNAME} --public-addr ${HOSTNAME} osd: image: ceph/daemon:latest-luminous privileged: true volumes: - /data/ceph:/var/lib/ceph - /dev:/dev entrypoint: ceph-osd --foreground --cluster ceph mgr: image: ceph/daemon:latest-luminous volumes: - /data/ceph:/var/lib/ceph entrypoint: ceph-mgr --foreground --cluster ceph mds: image: ceph/daemon:latest-luminous volumes: - /data/ceph:/var/lib/ceph entrypoint: ceph-mds --foreground --cluster ceph ``` 在上述示例中,我们使用了Ceph的官方Docker镜像,并创建了mon、osd、mgr和mds服务。 5. 在命令行中,导航到包含Docker Compose文件的目录,并执行以下命令来启动Ceph集群: ``` docker-compose up -d ``` 此命令将启动Ceph集群的各个组件,并将它们放在后台运行。 6. 等待一段时间,直到所有的服务都启动并运行。您可以使用以下命令来检查Ceph集群的状态: ``` docker exec -it <mon_container_id> ceph -s ``` 在上述命令中,将"mon_container_id"替换为您mon服务的容器ID。 7. 您现在已经成功地使用Docker部署了Ceph集群!您可以使用Ceph客户端工具(如rados、ceph、rbd等)来管理和操作集群。 请注意,这只是一个简单的示例,您可能需要根据您的实际需求对Docker Compose文件进行调整。此外,还需要考虑网络配置、安全性等因素来确保Ceph集群的稳定和安全运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值