Ceph从入门到认证 - 基于Centos7搭建Ceph单节点集群

Ceph从入门到认证系列是为初学Ceph的人准备的快速入门教程,通过实践优先的方式,在实践中完成对Ceph知识体系的认识和了解。本系列文章也参考了官方Ceph认证考试(Ex-125)要求的知识点,强化实际操作能力。本文是Ceph零基础起步系列文章的第一篇,力图通过简单的环境搭建,让大家可以快速的进入学习状态。

预备主机

准备一台虚拟机(VirutalBox或Vmware),或是在云端申请一台主机

推荐配置如下:

CPU:2核以上,
内存: 4G内存)
硬盘: 除系统盘以外,再配置大小为10G的硬盘三块

安装好CentOS 7 系统并完成以下准备工作:

  1. 切换 CentOS 的更新源为国内源
  2. 安装 Python3
  3. 切换 Python3 的源为国内源

环境准备

  1. 修改主机名
1
hostnamectl set-hostname ceph-01
  1. 修改 /etc/hosts 文件,添加地址项
1
192.168.3.118  ceph-01

前面的为你机器的内网地址。

  1. 设置免密登录

修改 root 用的密码为; Password.123

1
passwd

生成key

1
ssh-keygen -t rsa

全部使用默认设置,系统显示

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Generating public/private rsa key pair.
Enter file in which to save the key (/home/stu/.ssh/id_rsa):
Created directory '/home/stu/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/stu/.ssh/id_rsa.
Your public key has been saved in /home/stu/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:lKE3BBI6eJy2lSkpxfGEn8CjFMMsplZ2HO8bTh3OxDU stu@c-node00
The key's randomart image is:
+---[RSA 2048]----+
|o=+o=oo.o E |
|.OBO *.o.o. . |
|B.%+*...=+ |
|o= =o .o=.. |
|. . +S+ |
| o o |
| o |
| |
| |
+----[SHA256]-----+

将密钥复制到其它节点,以复制到 ceph-01 为例

1
ssh-copy-id ceph-01

验证 ssh 能过无密码登录,执行

1
ssh ceph-01

安装 Ansible

  1. 安装 ansible
1
yum install ansible

安装完成后可执行 ansible –version 验证安装是否成功。

安装 ceph-ansible

上传 ceph-ansible-4.0.45.tar.gz 安装包

解压

1
tar -zxvf ceph-ansible-4.0.45.tar.gz

改名

1
mv ceph-ansible-4.0.45 ceph-ansible

配置主机信息

编辑 /etc/ansible/hosts 文件

1
2
3
4
5
6
7
8
9
10
11
[mons]
ceph-01

[osds]
ceph-01

[clients]
ceph-01

[grafana-server]
ceph-01

运行以下命令进行验证

1
ansible all -m ping

如果看到类似如下的结果,说明配置成功

1
2
3
4
5
6
7
ceph-01 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": false,
"ping": "pong"
}

配置 ceph 基本信息

打开 group_vars/all.yml 文件,修改如下的一些信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
ceph_origin: repository
ceph_repository: community

ceph_mirror: http://mirrors.tuna.tsinghua.edu.cn/ceph
ceph_stable_key: https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc

ceph_stable: true
ceph_stable_release: nautilus
ceph_stable_readhat_distro: el7
cephx: true

monitor_interface: eth0

journal_size: 2048

public_network: 192.168.0.0/24
cluster_network: "{{ public_network }}"

osd_mkfs_type: xfs
osd_mkfs_options_xfs: -f -i size=2048
osd_mount_options_xfs: noatime,largeio,inode64,swalloc

dashboard_admin_user: admin
dashboard_admin_password: p@ssw0rd
grafana_admin_password: admin

查看本机的磁盘

1
lsblk

修改 osds.yml 文件

1
2
3
4
5
6
devices:
- /dev/vdb
- /dev/vdc
- /dev/vdd

journal_collocation: true

复制 site.yml 文件

1
cp site.yml.sample site.yml

部署单节点集群

执行

1
ansible-playbook -i /etc/ansible/hosts site.yml

部署完成后,可以执行 ceph -s 查看集群准备,可以看到有一个警告。

执行下面的语句

1
ceph config set mon auth_allow_insecure_global_id_reclaim false

以消除警告。

本文标题:Ceph从入门到认证 - 基于Centos7搭建Ceph单节点集群

文章作者:Morning Star

发布时间:2022年12月07日 - 07:12

最后更新:2022年12月07日 - 07:12

原始链接:https://www.mls-tech.info/ceph/ceph-setup-sinlge-node-cluster-on-centos/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。