基于Ceph分布式存储的Harbor部署方案(2)

电脑杂谈  发布时间:2019-05-28 17:31:17  来源:网络整理

#添加Ceph源:

$ sudo vim /etc/tc/yum.repos.d/c.d/.d/ceph.repo

[Ceph-noarch]

name=Ceph noarch packages

baseurl=rl=http://download.ceph.com/rpm-jewel/el7/noarch

ena

enabled=1

gpgcheck=1

type=rpm-md

wget https://nodejs.org/download/release/v0.10.0/node-v0.10.0-linux-arm-pi.tar.gz。https://www.vandyke.com/download/securecrt/download.html。https://y.qq.com/download/download.html。

pri

priority=1

#安装ceph-deploy

$ sudo yum update && sudo yum install ceph-deploy

4.3 安装NTP和OpenSSH

鉴于win10系统在发布后出现较多由于驱动和系统不兼容导致的故障及蓝屏问题,建议用户在官方下载最新支持win10系统的驱动进行安装,如果还是出现这样的情况,那么很有可能近期你的电脑不适合使用win10系统,建议滚回win8.1系统,win10回退到win8系统的方法。它是根据tcp/ip参考模型的第三,第四和第五层交换机检测到每个服务接点的状态,如果某个服务节点出现异常,或者出现故障,keepalived将检测到,并将出现故障的服务节点从集群中剔除,而在故障节点恢复后,keepalived又可以自动将此服务节点重新加入服务器集群中,这些工作全部自动完成,不需要人工干涉,需要人工完成的只是修复出现故障的服务节点。fid=1055524_241651903)解压到psp的记忆棒的根目录(包括psp和files2个文件夹)然后执行install loader,按r或l键来 安装,然后按○启动现在你已经加载成gen系统了该操作不会完全刷写系统,重启后还原到官方,如果不是死机的话,建议不要关机了7.接下来设置下免引导方式就可以免umd盘来玩iso了,游戏放在根目录的iso文件夹里,游戏不要用中文名,使用方法和500m33一样开发作者:davee、magixien特别感谢:dark_alex。

#yum安装ntp

sudo yum install ntp ntpdate ntp-doc

#校对系统时钟

ntpdate 0.cn.pool.ntp.org

后续操作,ceph-deploy节点需要使用ssh方式登录各个节点完成ceph安装配置工作,所以要确保各个节点上有可用的SSH服务。

# yum 安装 openssh

sandstone分布式存储_分布式存储架构_分布式存储测试方案

$ sudo yum install openssh-server

# 查看ssh版本

$ ssh -V

OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 2017

4.4 创建Ceph用户

ceph-deploy工具必须以普通用户登录Ceph节点,且此用户拥有无密码使用sudo的权限,因为它需要在安装软件及配置文件的过程中,不必输入密码。官方建议所有Ceph节点上给ceph-deploy创建一个特定的用户,为了方便起见,小编使用cephd这个账户作为特定的用户,而且每个节点上(admin-node、node0、node1)上都需要创建该账户,并且拥有sudo权限。

# 在Ceph集群各节点进行如下操作

# 创建ceph特定用户

$ sudo useradd -d /home/cephd -m cephd

$ sudo passwd cephd

# 添加sudo 权限

echo "options asus_nb_wmi wapf=4"| sudo tee /etc/modprobe.d/asus_nb_wmi.conf。echo "deb deb/" | sudo tee -a /etc/apt/sources.list。letuknowit@ubuntu:~$ sudo passwd -l root passwd: password expiryinformation changed. letuknowit@ubuntu:~$ sudo grep ‘root’/etc/shadow。

$ sudo chmod 0440 /etc/sudoers.d/cephd

// 通过ssh登录各节点测试是否免密码登录成功。使用密钥对进行 ssh 会话 2017-03-31rich 目标:免密码登录 价值:...。3.完成了密钥的生成和分发之后就可以进行无密码的ssh登陆了,当然在密钥的生成和分发过程中,有很多可控的参数。

# ceph-deploy(admin-node)上执行

# 生成ssh密钥

$ ssh-keygen

# 将公钥复制到node0节点

$ ssh-copy-id cephd@node0

# 将公钥复制到node1节点

$ ssh-copy-id cephd@node1

复制完毕,测试一下在ceph-deploy管理节点免密码登录各个节点

$ ssh node0

Last login: Fri Dec 8 15:50:08 2018 from admin

$ ssh node1

Last login: Fri Dec 8 15:49:27 2018 from admin

测试没问题,接下来,修改ceph-deploy管理节点上的~/.ssh/config文件,这样无需每次执行ceph-deploy都要指定-usename cephd.这样做同时也简化了ssh和scp的用法。

$ vim ~/.ssh/config

Host node0

Hostname node0

User cephd

Host node1

Hostname node1

User cephd

注意为了方便安装,建议将SELinux设置为Permissive或者disabled。

# 永久生效配置

分布式存储测试方案_sandstone分布式存储_分布式存储架构

$ sudo vim /etc/selinux/config

SELINUX=disabled #这里设置为disabled

SELINUXTYPE=targeted

5、Ceph存储集群搭建

存储集群—网络链路多网卡负载均衡方案、san 存储, iscsi 存储、搭建 iscsi 存储、multipathd 多链路冗余存储方案、了解 eyeos 云存储、mfs 云存储方案、gfs2 集群存储。典型的逻辑集群部署方式为一主多备,如上图所示,主集群同时提供读写服务,备集群只提供读服务,主集群上存储的所有文件都会由对应的dataserver记录同步日志,日志包含文件的block id和fileid以及文件操作类型(写、删除等),并由dataserver的后台线程重放日志,将日志里的文件操作应用到备集群上,保证主备集群上存储的文件数据保持一致的状态。在快照操作完成后,可以发出另一个命令,这个命令将redo日志处理提交给下面的虚拟硬盘文件。

# ceph-deploy(admin-node)上执行

# 清理配置

ceph-deploy purgedata admin node0 node1

ceph-deploy forgetkeys

# 清理Ceph安装包

ceph-deploy purge admin node0 node1

好了,现在开始搭建。首先Cephd用户创建一个目录ceph-cluster并进入到该目录执行如下操作。

#创建执行目录

mkdir ~/steamcmd && cd ~/steamcmd。cd /mkdir servercd /servermkdir appsmkdir srcmkdir libs。% mkdir ~/desktop/objcio-command-line % cd 。

#创建集群

$ ceph-deploy new admin

此时,我们会发现ceph-deploy会在ceph-cluster目录下生成几个文件,ceph.conf为ceph配置文件,ceph-deploy-ceph.log为ceph-deploy日志文件,ceph.mon.keyring为ceph monitor的密钥环。

接下来,我们需要修改ceph.conf配置文件,增加副本数为2,因为我们有两个OSD节点。

然后,我们需要通过ceph-deploy在各个节点安装ceph

$ ceph-deploy install admin node0 node1

此过程需要等待一段时间,因为ceph-deploy会SSH登录到各node上去,依次执行安装ceph依赖的组件包。

在等待安装完毕之后,接下来需要初始化monitor节点并手机所有密钥。

$ ceph-deploy mon create-initial

执行完毕后,会在当前目录下生成一系列的密钥环,应该是各组件之间访问所需要的认证信息。

创建一个给定的目录节点 path, 并给它设置数据,createmode标 识有四种形式的目录节点,分别是 persistent:持久化目录节点,这个目录节点存储的数据不会丢失。前 面说了 zookeeper 主要是用来维护和监控一个目录节点树中存储的数据的状态,所有我们能够操作 zookeeper 的也和操作目录节点树大体一样,如创建一个目录节点,给某个目录节点设置数据,获取某个目录节点的所有子目录节点,给某个目录节点设置权限和监控这个目录 节点的状态变化。前面说了 zookeeper 主要是用来维护和监控一个目录节点树中存储的数据的状态,所有我们能够操作 zookeeper 的也和操作目录节点树大体一样,如创建一个目录节点,给某个目录节点设置数据,获取某个目录节点的所有子目录节点,给某个目录节点设置权限和监控这个目录节点的状态变化。

# ceph-deploy(admin-node)上执行

$ ssh node0

$ sudo mkdir /var/local/osd0

$ sudo chown -R ceph:ceph /var/local/osd0

$ exit

$ ssh node1

分布式存储测试方案_分布式存储架构_sandstone分布式存储

$ sudo mkdir /var/local/osd1

$ sudo chown -R ceph:ceph /var/local/osd1

$ exit

一般防止方法:设置目录权限,通过去掉web目录iusr用户的执行权限来防止使用webshell来运行exp程序。对目录没有写权限 不能新建文件或目录 没有执行权限 不能进入该目录。出于执行权限原因,ko文件可以放到vendor的/system/lib/modules下(不能放到vendor对应的/data目录,release版本/data无权限insmod),可执行文件包括shell则放到vendor的/system/bin下,这样确保任何时候都可以执行。

接下来,需要ceph-deploy节点执行prepare OSD操作,目的时分别在各个OSD节点上创建一些后边激活OSD需要的信息。

$ ceph-deploy osd prepare node0:/var/local/osd0 node1:/var/local/osd1

接下来需要激活 activate OSD.

$ ceph-deploy osd activate node0:/var/local/osd0 node1:/var/local/osd1

最后一步,通过ceph-deploy admin将配置文件和admin密钥同步到各个节点,以便在各个node上使用ceph命令时,无需指定monitor地址和ceph.client.admin.keyring密钥。

$ ceph-deploy admin admin node0 node1

至此,Ceph存储集群已经搭建完毕了。可以查看以下集群是否启动成功。

# 查看集群状态

$ ceph -s

# 查看集群健康状况

$ ceph health

# 查看集群OSD信息

$ ceph osd tree

通过上述的检查,目前ceph集群已经安装部署完成,并且能够正常运行。

6、CephFS文件系统创建

在部署完成ceph集群以后,需要创建CephFS文件系统。具体执行如下:

# 在admin-node(ceph-deploy) 节点操作

# 创建MDS元数据服务器

$ ceph-deploy mds create admin node0 node1

# 查看MDS状态

$ ceph mds stat

# 创建cephFS

$ ceph osd pool create cephfs_data 128

# 挂载cephFS

$ sudo mount -t ceph 10.10.13.21:6789:/ /mnt/cephfs -o name=admin,secretfile=/etc/ceph/admin.secret

$ df -h


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-101996-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...