三台机器
准备工作
安装依赖
sudo apt-get install openssh-server
sudo apt install vim
apt install net-tools
设置root密码
## 设置root密码 所有操作在root下进行
sudo passwd root
su
passwd root
vim /etc/ssh/sshd_config PermitRootLogin yes 设置为yes
sudo systemctl restart sshd
修改静态IP
假如会自动缩进
在/etc/vim中,修改vimrc,添加 set pastetoggle=<F9> 在黏贴代码之前,进入insert模式,按F9,就可以关闭自动缩进。
cd /etc/netplan/
vim 01-network-manager-all.yaml
# 设置内容
network:
ethernets:
ens33:
dhcp4: no
addresses: [192.168.1.115/24]
optional: true
gateway4: 192.168.1.1
nameservers:
addresses: [223.5.5.5,223.6.6.6]
version: 2
sudo netplan apply
重启生效 否则IP会一直跳 可在修改完host再重启
修改主机名
分别去不同的机器设置
机器一
sudo hostnamectl set-hostname ceph_node1
机器二
sudo hostnamectl set-hostname ceph_node2
机器三
sudo hostnamectl set-hostname ceph_node3
需要重启 可以修改完host再重启
修改host
所有机器都要操作
vim /etc/hosts
192.168.1.11 ceph_node1
192.168.1.12 ceph_node2
192.168.1.13 ceph_node3
需要重启
关闭防火墙 SELinux [ubuntu貌似默认关闭 可不管]
更新源 【貌似没更新也完成了 三台机器要保持源一致】
备份源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo vim /etc/apt/sources.list
# 阿里源【但是貌似安装ceph失败】
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
###########################ceph 官方源 貌似只写下面的即可【不同版本源不同】
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
更新完源 更新软件列表
sudo apt update
其他版本源查询
https://mirrors.ustc.edu.cn/repogen/
同步时间【暂时没是时间服务器】
三台服务器都需要做
设置时区为上海
ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
bash -c "echo 'Asia/Shanghai' > /etc/timezone"
安装ntpdate
apt-get install -y ntpdate
同步阿里云
ntpdate ntp1.aliyun.com
设置机器户型【不确定是否三台都做 目前只做监控机成功】
ssh-keygen
### 两次回车 不需要设置密码
生成公钥 跟 私钥的 地址
#Your identification has been saved in /root/.ssh/id_rsa
#Your public key has been saved in /root/.ssh/id_rsa.pub
#传给别的机器 自己也要传一份
ssh-copy-id -i /root/.ssh/id_rsa.pub ceph_node1
ssh-copy-id -i /root/.ssh/id_rsa.pub ceph_node2
ssh-copy-id -i /root/.ssh/id_rsa.pub ceph_node3
传输完毕以后进行校验
ssh ceph_node2
ssh ceph_node2
截止目前准备工作全部完成
监控机操作部分
安装软件
三台都需要安装
以下2步 不确实是都是为必须
Ceph 通过radosgw提供RESTFul HTTP API接口支持对象存储能力,radosgw本质上是一个客户端程序,提供FastCGI 服务
apt-get install -y radosgw --allow-unauthenticated
配置apt允许以 HTTPS方式拉取镜像安装
apt-get install -y apt-transport-https --allow-unauthenticated
安装ceph相关包
apt-get install -y ceph ceph-osd ceph-mds ceph-mon radosgw
安装 ceph-deploy 【只要主节点操作】
目前方法一 方法二都有执行 不确定哪个生效 可用方法一 试试 不行再说
方法一:
yum -y install ceph-deploy
方法二:
apt-get install python3 python3-pip -y
mkdir /home/cephadmin
cd /home/cephadmin
git clone https://github.com/ceph/ceph-deploy.git
cd ceph-deploy
pip3 install setuptools
python3 setup.py install
创建配置文件
cd /opt
mkdir -p cephinstall
cd cephinstall
vim /etc/profile
export MDS="ceph_node1"
export MON= "ceph_node1 ceph_node2 ceph_node3"
export OSDS="ceph_node1 ceph_node2 ceph_node3"
export INST="$OSDS $MON"
source /etc/profile
ceph-deploy new $MON
方法二
执行之后,它会在当前目录生成文件ceph.conf
默认配置文件为
命令行输入
echo "osd pool default size = 2
osd max object name len = 256
osd max object namespace len = 64
mon_pg_warn_max_per_osd = 2000
mon clock drift allowed = 30
mon clock drift warn backoff = 30
rbd cache writethrough until flush = false" >> ceph.conf
截止到此 软件环境部署完成
ceph_node1 :
apt install ceph-deploy
ceph-deploy new ceph_node1 ceph_node2 ceph_node3
ceph_node1 ceph_node2 ceph_node3 :
apt install ceph
ceph-deploy mon create-initial ####生成 mon 角色
ceph-deploy admin ceph_node1 ceph_node2 ceph_node3
开始配置
cd /opt/cephinstall
# 创建一个新的 ceph-deploy
ceph-deploy new ceph_node1 ceph_node2 ceph_node3
# 推送配置文件
ceph-deploy --overwrite-conf config push ceph_node1
ceph-deploy --overwrite-conf config push ceph_node2
ceph-deploy --overwrite-conf config push ceph_node3
#生成 mon 角色
ceph-deploy mon create-initial
# 安装 这个是否需要??
apt install ceph-radosgw
# 设置 ceph_node1 为rgw
ceph-deploy rgw create ceph_node1
# 设置ceph_node1 、ceph_node2 、ceph_node3 为 mds
ceph-deploy mds create ceph_node1 ceph_node2 ceph_node3
初始化osd 就是自己挂载的东西
ceph-deploy osd create --data /dev/sdc ceph_node1
ceph-deploy osd create --data /dev/sdd ceph_node1
ceph-deploy osd create --data /dev/sdb ceph_node2
ceph-deploy osd create --data /dev/sdc ceph_node2
ceph-deploy osd create --data /dev/sdd ceph_node2
ceph-deploy osd create --data /dev/sdb ceph_node3
ceph-deploy osd create --data /dev/sdc ceph_node3
ceph-deploy osd create --data /dev/sdd ceph_node3
检查状态
root@jqb-node128:/opt/cephinstall# ceph -s
cluster:
id: 8dc355f1-b84b-408a-bd95-cd64c2279e15
health: HEALTH_WARN
mon is allowing insecure global_id reclaim
no active mgr
services:
mon: 3 daemons, quorum jqb-node128,jqb-node129,jqb-node131 (age 85m)
mgr: no daemons active
osd: 9 osds: 9 up (since 65m), 9 in (since 65m)
data:
pools: 0 pools, 0 pgs
objects: 0 objects, 0 B
usage: 0 B used, 0 B / 0 B avail
pgs:
此事状态 显示 确实 mgr
什么是mgr??
搭建mgr 【 感觉好像 只要ceph_node1 即可 】
ceph-deploy mgr create ceph_node1 ceph_node2 ceph_node3
#########################再次检测
root@jqb-node128:/opt/cephinstall# ceph -s
cluster:
id: 8dc355f1-b84b-408a-bd95-cd64c2279e15
health: HEALTH_OK
services:
mon: 3 daemons, quorum jqb-node128,jqb-node129,jqb-node131 (age 105m)
mgr: jqb-node128(active, since 4s)
osd: 9 osds: 9 up (since 85m), 9 in (since 85m)
data:
pools: 1 pools, 1 pgs
objects: 0 objects, 0 B
usage: 9.1 GiB used, 171 GiB / 180 GiB avail
pgs: 100.000% pgs unknown
1 unknown
部署完成
开始使用
创建pool池
开始使用
启用mds服务
ceph-deploy mds create jqb-node128
创建数据pool
ceph osd pool create cephfs_data 128
创建Metadata池
ceph osd pool create cephfs_metadata 128
启用pool
ceph fs new cephfs cephfs_metadata cephfs_data
查看cephfs
ceph fs ls
sudo mount -t ceph 192.168.1.11:6789:/ /mnt/wyl -o name=admin,secret=AQBZsgdhaqRkChAAzy/uWbbiN1J62Vm8VyCaOw==
下面的废弃!!!
mypool1 设置poll的名称
100为 pg数量 100可选
【但是上诉没有 创建 自动创建了一个1】
# ceph osd pool create mypool1 100
查看池
ceph osd pool ls detail
ceph osd pool ls
查看副本数
ceph osd pool get device_health_metrics size
ceph osd pool get device_health_metrics pg_num
ceph osd pool set device_health_metrics pg_num 64
设置数量 减少的时候 要慢慢减少 一般设置2的N次方
设置池类型
设置 device_health_metrics 为 rgw 一个池子只能设置一个类型
ceph osd pool application enable device_health_metrics rgw
挂载一个新池
创建一个新的池子
ceph osd pool create mypool3
格式化池子
ceph osd pool application enable mypool3 rbd
分配池子大小
rbd create mypool3/disk1 --size 1G
创建连接 map出一个设备来
rbd map mypool3/disk1 【但是可能出错 但是自己做没报错 出错以后按着流程重新做一次 然后重新创建一下】
格式化 挂载 即可使用
版权声明:本文为qq_34865347原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。