0x00 背景
splunk 集群索引服务器容量满了以后,为了防止数据丢失,需要对旧数据进行归档保存。
0x01 原理
指定一台大容量服务器,创建共享文件夹,并将集群里的所有indexer指向这个归档共享目录。
0x02 实施
集群的每个indexer都有一个用户用于启动splunk服务,一般命名为splunk,uid一般是固定的,例如1000。需要在归档服务器新建一个用户:
groupadd splunkArchived -g 1000
useradd splunkArchived -u 1000 -g 1000 -s /sbin/nologin -d /dev/null
smbpasswd -a splunkArchived
passXXX
1.方法一:创建smb共享 (失败)
CentOS 7 无网络安装samba_centos samba离线安装_我不是阿鬼的博客-CSDN博客
yum install yum-utils -y 安装 yumdownloader
rpm --import /etc/pki/rpm-gpg/RPM*
rpm -ivh ./* --force --nodeps
还需要再装一个gnutls包; yum install gnutls
use the command pdbedit -L to view a list of all the SAMBA users.
setfacl -m u:splunk:rwx /opt/frozenarchive/
pdbedit -x user 删除smb用户;
给用户添加写权限,或者用ACL单独给刚刚创建的splunkArchived用户添加权限
setfacl -m u:splunkArchived:rwx /opt/frozenarchive/
mount /t 临时挂载
mount -t cifs //10.10.X.X/share -o username=root,password=123,vers=1.0,iocharset=utf8,x-systemd.automount /frozen
systemctl daemon-reload 使修改的配置生效
在测试环境试验成功,但在linux集群里没有写的权限,最后无奈放弃。
2.方法二:创建nfs共享
yum install nfs-utils rpcbind
vim /etc/exports (限制只有白名单ip才可以访问共享)
/opt/frozenarchive 10.10.17.0/24(rw,async,no_root_squash,no_subtree_check)
systemctl start nfs-utils systemctl start rpcbind systemctl restart nfs
systemctl enable nfs 开机自启动
挂载客户端需要安装 nfs:yum install nfs-utils
客户端临时挂载:
mount 10.10.X.X:/opt/frozenarchive /frozenarchive
永久挂载:
vim /etc/fstab
10.10.17.107:/opt/frozenarchive /frozenarchive nfs defaults,_netdev 0 0
(_netdev 表示挂载设备需要网络)
showmount -e //显示已挂载设备
umount /frozenarchive //卸载目录
chown splunk:splunk /frozenarchive // 给目录分配用户和组的权限
0x03 后记
1.如果发现 ls /挂载目录 卡死,可能是有之前挂载的服务器不能访问造成服务器不断连接尝试导致目录卡死。
这时候需要强制umount(umount -l)操作。
例如在定时任务里有旧的无法访问主服务器的定时挂载导致卡死。(eg: #@reboot mount -t
如果定时任务没有发现挂载点,排查是不是还有其他的无法访问归档盘的挂载目录导致的卡死。mount -l 排查所有挂载点
发现还有一个挂载点: 10.X.X.X:/splunkBak on /splunkBak type nfs4
umount /splunkBak -l (卸载前检查占用该挂载文件的程序并迅速kill掉,以达到快速卸载的目的)
否则执行命令会报错:
[root@lee frozenarchive]# umount /frozenarchive/
umount.nfs4: /frozenarchive: device is busy
- dell uid 1000 占用了 splunk 的 uid 1000
修改用户id
usermod -u 1005 dell
修改用户组id
groupmod -g 1005 dell
给目录及子目录分配权限
chown -R splunk:splunk /opt
0x04 reference
配置smb共享
https://blog.csdn.net/weixin_53946852/article/details/125851113
版权归原作者 leeezp 所有, 如有侵权,请联系我们删除。