---
title: 部署OSD节点
description: "- 仅需在主节点ceph1节点上执行。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengsdss/ecosystemEnable/Ceph/kunpengcephobject_DG_Ubuntu_04_0027.html
sourcePath: /source/zh/kunpengsdss/ecosystemEnable/Ceph/kunpengcephobject_DG_Ubuntu_04_0027.html
indexId: e2ef09d4b069ebfa187e77fe8218b659123e890e98788352e92ffaa3b5003ae884
---
# 部署OSD节点

- 仅需在主节点ceph1节点上执行。
- 需要参考  分析OSD节点
相关内容完成OSD节点配置。
- 需要在cephadm shell启动的容器内bash中执行。


OSD是Ceph集群数据管理服务。添加为OSD的磁盘设备需满足以下所有条件。

- 设备必须没有分区。
- 设备不得具有任何LVM状态。
- 该设备不得包含文件系统。
- 该设备不得包含Ceph BlueStore OSD。
- 设备必须大于5GB。

1. 查看系统可用盘。
  1 ceph orch device ls --wide --refresh

2. 配置osd_spec.yaml。

  a. 打开osd_spec.yaml文件。
    1 vi osd_spec.yaml

  b. 按“i”进入编辑模式，在文件中添加以下内容，支持混合存储场景。请阅读下方配置详细说明，根据实际情况调整配置文件。
    示例配置1：指定具体磁盘部署

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 service_type: osd service_id: osd_spec_hdd placement: hosts: - ceph1 - ceph2 - ceph3 spec: data_devices: paths: - /dev/sda - /dev/sdb db_devices: paths: - /dev/nvme0n1 - /dev/nvme1n1

    示例配置2：仅指定磁盘类型和数量，自动选择磁盘部署

    1 2 3 4 5 6 7 8 9 10 11 12 13 service_type: osd service_id: osd_spec_hdd placement: hosts: - ceph1 - ceph2 - ceph3 spec: data_devices: rotational: 1 # 1 for HDD, 0 for SSD db_devices: rotational: 0 limit: 2

  c. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。
    以上配置中的磁盘名/dev/sda、/dev/sdb、/dev/nvme0n1、/dev/nvme1n1仅为示例，请根据服务器实际磁盘盘符选择合适的磁盘名称，修改上述示例后再执行下一步启动OSD。 配置文件说明： service_type：设置为osd，表示这段配置是用来部署Ceph OSD服务的。 placement - hosts： 列出了ceph1、ceph2和ceph3 三个节点，表示OSD将会部署在这三个节点上。 spec - data_devices - paths：列出了/dev/sda、/dev/sdb这两个磁盘，表示Ceph OSD服务会使用这两个设备作为数据存储设备。paths指明了当前部署所需磁盘，它与rotational、limit配置互斥。如果使用了paths配置，请不要再使用额外配置。如不指定特定磁盘，Ceph将自动选择符合rotational、limit配置的磁盘。 spec - data_devices - rotational: 1：这个配置表示数据存储设备（data devices）是机械硬盘（HDD），即通常的旋转硬盘。 spec - db_devices - paths：列出了/dev/nvme0n1、/dev/nvme1n1，表示使用这2个设备作为Ceph OSD的数据库（WAL和其他元数据）存储设备。该配置与rotational、limit配置互斥。 spec - db_devices - rotational: 0：这个配置表示用于数据库（DB）的存储设备是固态硬盘（SSD）。 spec - db_devices - limit: 2：这个配置指定了用于数据库的SSD设备数量限制为2，表示最多允许两个SSD用于存储OSD的数据库（DB）。数据库设备通常用于存储Ceph的WAL（Write-Ahead Logging）和其他元数据。 应用场景说明： 混合存储场景：上面的yaml配置示例，使用机械硬盘（HDD）存储数据，并用固态硬盘（SSD）来加速Ceph OSD的数据库操作（如WAL和元数据存储），并且限制每个OSD实例使用最多2个SSD作为数据库设备，是混合存储的Ceph OSD部署场景典型配置。 全闪存场景：数据存储和数据库设备都应该使用SSD或NVMe，并且rotational设置为0。这种配置提供了更高的I/O性能，通常用于高性能计算场景。 冷存储场景：数据存储设备使用HDD，rotational设置为1；数据库设备可以使用SSD或 NVMe（设置为 0）。只需要通过调整rotational的值（0表示SSD，1表示HDD）和选择合适的设备（SSD或HDD），就可以根据需要配置全闪存或冷存储场景。

3. 应用配置。
  1 ceph orch apply -i osd_spec.yaml

4. 等待并查看是否配置成功完成，等待所有OSD节点状态都为up。
  1 ceph -s

  返回信息如下所示：
