四 skylable集群管理


上一篇介绍了集群的部署,接下来讲一讲集群的管理。


集群管理包括:

一、用户管理

二、卷管理

三、节点管理

四、区域配置

五、集群备份和还原

六、集群自愈


一、用户管理


要想显示某个node的状态信息可以运行sxserver status命令,要想展示某个node的配置信息可以运行sxsetup --info


集群里任意一个node都可以通过sxinit命令成为管理员,一旦成为管理员,其他node都为非管理员,即正常node。


1.指定某个node为管理员

具体命令:sxinit --key -l 192.168.1.111 -A @cluster sx://admin@mycluster

解释如下:提供node的key和IP,并为集群起个别名@cluster。


2.用户创建

拥有管理员权限的node可以创建其他node为他的user,使用sxacl useradd jeff @cluster命令来添加jeff用户。创建的用户拥有一个由密码产生的key,用户jeff可以与admin或者其他用户进行验证性的通信。


3.列出用户

只有管理员可以运行sxacl userlist @cluster命令查看所有用户。

4.获得用户的key

sxacl usergetkey jeff @cluster


5.任何时候你都可以为用户重新设置key值,只要用户隶属于集群就可以修改自己的key,admin还可以强制改变所属用户的key。

sxacl usernewkey jeff @cluster


6.移除用户(随着用户被移除用户所属的卷会被管理员分配给其他用户存储)

sxacl userdel jeff @cluster


二、卷管理


卷是Sx存储的逻辑划分,类似于C、D盘盘符,可以指定卷的大小和访问者,卷管理的文件还可以被压缩和加密,只有admin才可以创建和移除卷。


1.创建一个空白volume

sxvol create -o jeff -r 2 -s 100G @cluster/vol-jeff

-o指定了拥有者jeff,-r表示所属文件被复制2份,-s指定卷的大小,@cluster/vol-jeff指定了卷的名称。


2.创建一个过滤的卷

主要是在客户端与集群进行交互的时候需要的保护措施,可以在任意一个node中通过sxvol filter --list查看可以获得filter列表。如图:


可以看出有四个可用的filter,下面介绍一个加密功能的卷:

sxvol create -o jeff -r 2 -s 100G -f aes256 @cluster/vol-jeff-aes

第一次访问加密卷的时候会让你创建一个密码。


3.列出所有的volumes

admin列出的volume会列出集群里所有的volume;普通用户列出的volume只是用户能访问的所有volume。

sxls -lH @cluster   -l表示会显示更多的信息-H表示显示为方便阅读的信息



4.管理volume权限

volume的权限有四种,

一:None 二、READ 三、WRITE 四、READ AND WRITE

admin和volume拥有者拥有授权和撤销给其他用户的权利,volume的拥有者还可以授权给其他用户的管理卷的权利。显示某卷的权限:

sxacl volshow  @cluster/vol-jeff

完全授权给用户bob可用如下命令:

sxacl volperm --grant=read,write bob @cluster/vol-jeff

这样用户bob就可以对卷vol-jeff进行上传和下载操作了。想撤销bob的写权限可以这样:

sxacl volperm --revoke=write bob @cluster/vol-jeff

这样用户bob就只可以对卷vol-jeff进行只读操作了。


5.改变volume的大小

注意改变的大小不能超过node的size。

sxvol modify --size 60G @cluster/vol-jeff


三、节点管理

1.远程集群状态

admin要想获得集群的信息:

sxadm cluster --info @cluster



还可以以另一种方式展示每个node信息:

sxadm cluster --list-nodes -H @cluster



2.rebanalance mode

在对集群进行更改后,会自动进入rebalance mode,这个模式会让数据传输到新的集群架构中。在此期间,所有的基于卷的数据操作都可以正常执行,只是集群自身的改变将不被接受。最重要的一点,在进行这个模式时要保证所有的node都是online状态,rebalance mode不可取消也不可以对集群做任何变化。


3.集群的整体设置大小

比如想给有2个node的集群总体增加200G空间,可使用命令:

sxadm cluster --resize +200G @cluster

集群会自动平均分配100G到每个node。


4.node设置大小

在给单独node设置大小之前得先获得一些信息:

sxadm cluster --info @cluster


注意到Current configuration里列出了两个node的大小(用字节表示),要想改变某个node的大小需要使用:

sxadm cluster --modify 21471836480/192.168.13.28/767dca5e-0b41-45e0-8a47-0035d541a0460737418240/192.168.13.117/f1899af1-9bde-4d75-b29b-e5b5a507f72f  @cluster

之后会进入rebanalance mode。


5.node移除

加入现在想移除192.168.13.28节点,有2种方式:

方式一:sxsetup --deactivate

方式二:sxadm cluster --modify 10737418240/192.168.13.117/f1899af1-9bde-4d75-b29b-e5b5a507f72f  @cluster


6.创建一个bare node

bare node是一个即将加入集群的node,创建时需要加入参数--bare,注意bare node创建时没有唯一标识UUID,它只会在加入集群后才会被分配。


7.批量操作node

例如想在有2个node的集群再添加2个node,首先创建2个bare node,容量分别为1T,IP分别为192.168.13.127,192.168.13.456,命令如下:

sxadm cluster --modify 21471836480/192.168.13.28/767dca5e-0b41-45e0-8a47-0035d541a04610737418240/192.168.13.117/f1899af1-9bde-4d75-b29b-e5b5a507f72f  1T/192.168.13.127 1T/192.168.13.456 @cluster

四、区域配置

skylable Sx提供了机架感知能力,所以可以给node分区域管理。通过sxadm clister --modify命令:

sxadm cluster --modify 21471836480/192.168.13.28/767dca5e-0b41-45e0-8a47-0035d541a04610737418240/192.168.13.117/f1899af1-9bde-4d75-b29b-e5b5a507f72f  

 “Rack1:767dca5e-0b41-45e0-8a47-0035d541a046;Rack2:f1899af1-9bde-4d75-b29b-e5b5a507f72f  ” @cluster

这样可以把192.168.13.28分配到rack1,把192.168.13.117分配给rack2。


五、集群备份和还原

1.备份:

sxdump --backup-dir /var/backup/sx sx://admin@annoroad

过程中会产生2个脚本sx-backup.sh和sx-restore.sh,加密卷里的数据不会备份到/var/backup/sx,你必须手动转移。


2.还原

运行sx-restore.sh和进行一些必须的配置。


六、集群自愈

1.自动检测

集群在运行过程中可能会出现某些node失效的情况,skylable Sx可以通过心跳机制感知,Raft算法自动使他们失效。这些功能只能在有3个node以上的集群中生效。


2.只读模式设置

sxadm cluster --set-mode=ro @cluster

恢复:

sxadm cluster --set-mode=rw @cluster


3.check storage integrity

前提得是只读模式

sxadm node --check 'storage path'


4.压缩数据

sxsetup --compact

必要时使用

sxadm cluster --force-gc @cluster


5.数据恢复

在某个node可能失效的情况下,你可以尝试数据恢复:

sxadm node --extract=/tmp/RECOVERED 'storage path'






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值