Diasumsikan bahwa sebagai hasil dari metode ini, kita menyimpan urutan di mana disk dikeluarkan oleh perintah ceph osd tree. Jika ada, agar lebih mudah dibaca dan dipertimbangkan, jika perlu.
Penyimpangan lirik pada topik. Metode resmi untuk mengganti disk di ceph melibatkan menghapus semua entitas logis yang terkait dengan disk ini dari cluster dengan pembuatan ulang lebih lanjut. Akibatnya, osd yang baru dibuat (dalam beberapa keadaan) dapat mengubah nomornya (nomor atas nama entitas, yang merupakan osd.Number) dan lokasi di peta crush dan secara alami akan ditampilkan di tempat lain di pohon ceph osd dan perintah lainnya. Nomor seri akan berubah.
Gagasan metode ini adalah bahwa kita tidak akan mengubah entitas logis apa pun, tetapi cukup memasukkan disk baru ke tempat "lama" di kluster. Untuk melakukan ini, pada disk baru ini, Anda harus (kembali) membuat struktur data yang benar: semua jenis id, symlink, kunci.
Mari kita tandai disk baru.parted /dev/__ mklabel gpt
Mari kita buat bagian baru di partisi kita parted /dev/sdaa mkpart primary ext2 0% 100% /sbin/sgdisk --change-name=1:'ceph data' -- /dev/sda1
Dapatkan UUID dari almarhum osd ceph osd dump|grep 'osd.'
Masukkan PARTUUID pada disk data /sbin/sgdisk --typecode=1:99886b14-7904-4396-acef-c031095d4b62 -- /dev/__
Temukan bagian dengan majalah ceph-disk list | grep for | sort
Buat sistem file pada disk data /sbin/mkfs -t xfs -f -i size=2048 -- /dev/sdaa1
Mount FS mount -o rw,noatime,attr2,inode64,noquota /dev/____ /var/lib/ceph/osd/ceph-_OSD
Salin data dari OSD yang berdekatanBahkan, ini adalah bagian paling terkenal dari prosedur ini, Anda harus melakukan semuanya dengan hati-hati.Saat menyalin, lewati direktori / var / lib / ceph / osd / ceph-NUMBER / current, ini adalah direktori data. Simlink di jurnal akan kita buat nanti
Menyalin for i in activate.monmap active ceph_fsid fsid journal_uuid keyring magic ready store_version superblock systemd type whoami; do cp /var/lib/ceph/osd/ceph-_/${i} /var/lib/ceph/osd/ceph-; done
Kami mencari majalah ceph-disk list | grep for | sort
sesuai, kami menemukan partisi, dan lakukan
ls -l /dev/disk/by-partuuid | grep _
Membuat symlink ke UUID ini ln -s /dev/disk/by-partuuid/UUID /var/lib/ceph/osd/ceph-/journal
Isi fsid dengan nilai yang benarFsid ini sebenarnya merupakan id unik, di mana kotak-osd muncul di cluster, ini penting, karena jika Anda tidak menebak dengan id, maka kotak-osd itu sendiri tidak akan melihat cluster dan ini akan saling menguntungkan.
Dan nilai harus diambil dari partisi partuuid pada log data.
echo -n UUID >/var/lib/ceph/osd/ceph-/fsid
Isi keyringDengan ini, kotak-osd diotorisasi dalam gugus.
ceph auth list|grep --after-context=1 'osd.'
Itu ditulis ke file dalam format
[osd.] key = __
Isi whoamiKami cukup menulis nomor OSD untuk file ini, yang ingin kami hidupkan kembali.
Memusatkan perhatian pada majalah dd bs=32M oflag=direct if=/dev/zero of=/var/lib/ceph/osd/ceph-/journal
Buat jurnal metadata dan osd-shki ceph-osd --mkfs -i _OSD ceph-osd --mkjournal -i _OSD
Ubah pemilik data chown -R ceph:ceph /var/lib/ceph/osd/ceph-
Jalankan ceph-osdPerhatian: Segera setelah memulai ceph-osd, membangun kembali akan dimulai jika ceph osd out NUMBER tidak dikeluarkan sebelum disk keluar dari cluster.
systemctl start ceph-osd.