Project

General

Profile

Actions

Documentation #46691

open

Document manually deploment of OSDs

Added by Sebastian Wagner almost 4 years ago. Updated about 3 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

Sometimes, users want to deploy OSDs completely manual. Might be drive groups are not expressive enough, or there is some bug preventing the automation from succeeding.

Therfor we should document a manual way like so:

prepare

ceph-volume prepare
as you wish (note that you should add `--no-systemd`)

List

run `ceph-volume lvm list` and note the created OSDs

Manual container deployment

for each listed OSD, run:

cephadm deploy --name osd.x

Related issues 2 (0 open2 closed)

Related to Orchestrator - Feature #49249: cephadm: Automatically create OSDs after reinstalling base osDuplicate

Actions
Related to Orchestrator - Feature #49159: "cephadm ceph-volume activate" does not support cephadmResolved

Actions
Actions #1

Updated by Sebastian Wagner over 3 years ago

How to manually (re-)deploy OSDs

In order to manually deploy cephadm OSDs, first run ceph-volume (skip this step if needed)

(OSD host)$ cephadm ceph-volume lvm batch --no-auto /dev/mydatadevice1 /dev/mydatadevice2 --db-devices /dev/mydbdevice --yes --no-systemd

Then print a list of all OSDs:

(OSD host)$ cephadm ceph-volume lvm list

Save the osd-fsid of each osd from this command

For each osd:

Then get or create the auth entry

(Admin host)$ ceph auth get osd.XYZ

Get the ceph.conf:

(Admin host)$ ceph config generate-minimal-conf

Get the container image:

(Admin host)$ ceph config get "osd.xyz" container_image

Create the config json:

(OSD host)$ cat config-json.json
{
"config": "# minimal ceph.conf for 8255263a-a97e-4934-822c-00bfe029b28f\n[global]\n\tfsid = 8255263a-a97e-4934-822c-00bfe029b28f\n\tmon_host = [v2:192.168.178.28:40483/0,v1:192.168.178.28:40484/0]\n",
"keyring": "[osd.XYZ]\n\tkey = AQDSb0ZfJqfDNxAAhgAVuH8Wg0yaRUAHwXdTQA==\n" 
}

Deploy the daemon:

(OSD host)$ cephadm --image <container-image> deploy --fsid <fsid> --name osd.xyz --config-json config-json.json --osd-fsid <osd-fsid>
Actions #2

Updated by Sebastian Wagner over 3 years ago

  • Related to Feature #49249: cephadm: Automatically create OSDs after reinstalling base os added
Actions #3

Updated by Sebastian Wagner over 3 years ago

  • Related to Feature #49159: "cephadm ceph-volume activate" does not support cephadm added
Actions #4

Updated by Sebastian Wagner about 3 years ago

  • Description updated (diff)
Actions

Also available in: Atom PDF