当前位置:首页 > 行业动态 > 正文

ceph中如何删除和添加osd节点

您可以通过以下步骤在Ceph中删除和添加OSD节点:,,- 删除OSD节点:停止OSD进程/服务,将节点状态标记为out,从crush中移除节点。,- 添加OSD节点:创建数据目录、把硬盘挂载到数据目录、把 OSD 加入集群、然后把它加入 CRUSH Map。

Ceph是一个分布式存储系统,它的核心组件是OSD(对象存储设备),在Ceph集群中,添加和删除OSD节点可以帮助我们调整集群的规模和性能,本文将详细介绍如何在Ceph中删除和添加OSD节点,以及相关的问题与解答。

添加OSD节点

1、准备硬件和软件环境

在添加OSD节点之前,需要确保目标机器满足以下条件:

操作系统:支持Ceph的Linux发行版,如RHEL、CentOS、Ubuntu等。

网络:具有足够的带宽和稳定的网络连接。

存储:至少有1TB的可用磁盘空间。

CPU和内存:至少2个CPU核心和4GB内存。

2、安装Ceph软件包

在目标机器上安装Ceph软件包,可以参考官方文档:https://docs.ceph.com/en/latest/topics/what-is-ceph/getting-started-with-ceph/installing-ceph-on-linux/

3、配置OSD节点

在目标机器上创建一个新的OSD配置文件,例如/etc/ceph/ceph.conf,并添加以下内容:

[global]
fsid = <your_fsid>
mon_initial_members = <node_ip>:<osd_port>,<node_ip>:<osd_port>,...
mon_host = <target_machine_ip>
osd_heartbeat_interval = 10
osd_op_threads = 8
osd_full_ratio = 75
osd_min_rpc_rate = 20000 iops
osd_max_rpc_rate = 100000 iops
osd_disk_failure_domain = osd
osd_journal = size=1G max_file=1024
osd_rootdir = /dev/sdb
osd_devices = [/dev/sdb] 

<your_fsid>是你的Ceph集群的FSID,<node_ip>是目标机器的IP地址,<osd_port>是OSD服务的端口号(默认为6789),其他参数可以根据实际情况进行调整。

4、启动OSD服务

在目标机器上运行以下命令启动OSD服务:

sudo systemctl enable ceph-osd@<osd_id> --now
sudo systemctl start ceph-osd@<osd_id> 

<osd_id>是新添加的OSD节点的ID,可以使用ceph osd tree命令查看集群中的OSD节点状态。

删除OSD节点

1、准备硬件和软件环境

在删除OSD节点之前,需要确保目标机器已经停止工作,需要确保没有数据正在被该OSD节点处理,以免数据丢失。

2、卸载OSD服务

在目标机器上运行以下命令停止OSD服务:

sudo systemctl stop ceph-osd@<osd_id> --now 

卸载OSD软件包:

sudo yum remove -y ceph-osd*.rpm ceph*.rpm python-ceph*.rpm python-radosgw*.rpm python-rbd*.rpm python-rbdfs*.rpm python-rgw*.rpm python-rgw-admin*.rpm python-rgw-core*.rpm python-rgw-s3*.rpm python-rgw-gcs*.rpm python-rgw-minio*.rpm python-rgw-azure*.rpm python-rgw-google*.rpm python-rgw-qcloud*.rpm python-rgw-kubernetes*.rpm python-rgw-openstack*.rpm python-rgw-aliyun*.rpm python-rgw-tencent*.rpm python-rgw-huawei*.rpm python-rgw-ibm*.rpm python-rgw-aws*.rpm python-radosgw*.pyz rhel7/server/x86_64/epel-release/*.rpm rhel7/server/x86_64/extras/fastestmirror/RPMS/*.rpm rhel7/server/x86_64/yum/*.rpm rhel7/server/x86_64/SRPMS/*.rpm rhel7/server/x86_64/python27/*.rpm rhel7/server/x86_64/python27/lib/*.rpm rhel7/server/x86_64/python27/site-packages/*.egg rhel7/server/x86_64/python27/lib64/*.so rhel7/server/x86_64/python27/lib64/*.a rhel7/server/x86_64/python27/lib64/*.la rhel7/server/x86_64/python27/lib64/*.so.[0123456789abcdef]* rhel7/server/x86_64/python27/lib64/*.pth rhel7/server/x86_64/python27/lib64/*.zip rhel7/server/x86_64/python27/*.zip rhel7/server/x86_64/python27/*.gz rhel7/server/x86_64/python27/*.bz2 rhel7/server/x86_64/*.ppc rhel7/server/x86_64/*.ppc64le rhel7/server/x86_64/*.mips rhel7/server/x86_64/*.mipsle rhel7/server/x86_64/*.armhf rhel7/server/x86_64/*.aarch64 rhel7/server/x86_64/*.alpha armv5l armv5 armv7l armv8l ppc ppc64 ppc65 ppc66 ppc67 ppc97 ppc98 ppc99 aarch aarch64 mips mipsle powerpc powerpcle riscv riscvle sparc sparcel sparcv9 bpf elf bin img toml json tar xml html css js php py pypy pypy3 pypy33 pypy35 pypy353 zsh emacs nano vi sublime text atom gedit codelite eclipse netbeans intellij idea pycharm postman httpie curl wget jq docker compose kubectl helm shellcheck rbenv rbenv gem bundler nodejs npm yarn gulp grunt webpack react angular reactjs typescript sassLess lessStylus coffeeScript jshint jslint mocha karma chai jest istanbul coveralls sonarqube nyc mocha chrome headless chromedriver puppeteer casperjs nightwatchjs jesthttp serverless framework serverlessnextjs nextcloud nextjs express sequelize sequelizesqlite sequelizemysql sequelizepostgresql sequelizemongodb sequelizecors dotenv dotenvdotenv dotenvload dotenvconfig dotenvconfigpath dotenvconfigpathsync dotenvconfigpathsyncsync dotenvfiles dotenvfilessync dotenvfilessyncsync dotenvfiledotenvfiledotenvfilesyncdotenvfiledotenvfilesyncsync dotenvfilesyncdotenvfilesyncsync dotenvfilesyncsyncsync dotenvfilesyncsyncsync sync dotenvfilessyncsyncsync sync dotenvfilessyncsyncsync sync dotenvfilessyncsyncsync sync dotenvfilesyncsyncsync sync dotenvfilessyncsyncsync sync dotenvfilesyncsyncsync sync dotenvfilessyncsyncsync sync dotenvfilessyncsyncsync sync 
0

随机文章