GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara menginstal Ceph Storage Cluster di Ubuntu 16.04

Ceph adalah platform penyimpanan open source, menyediakan kinerja tinggi, keandalan, dan skalabilitas. Ini adalah sistem penyimpanan terdistribusi gratis yang menyediakan antarmuka untuk objek, blok, dan penyimpanan tingkat file dan dapat beroperasi tanpa satu titik kegagalan.

Dalam tutorial ini, saya akan memandu Anda untuk menginstal dan membangun cluster Ceph di server Ubuntu 16.04. Sebuah cluster Ceph terdiri dari komponen-komponen ini:

  • OSD Ceph (ceph-osd) - Menangani penyimpanan data, replikasi data, dan pemulihan. Sebuah cluster Ceph membutuhkan setidaknya dua server Ceph OSD. Kami akan menggunakan tiga server Ubuntu 16.04 dalam pengaturan ini.
  • Ceph Monitor (ceph-mon) - Memantau status cluster dan menjalankan peta OSD dan peta CRUSH. Kami akan menggunakan satu server di sini.
  • Server Data Meta Ceph (ceph-mds) - ini diperlukan jika Anda ingin menggunakan Ceph sebagai Sistem File.

Prasyarat

  • 6 node server dengan server Ubuntu 16.04 terinstal
  • Hak istimewa root pada semua node

Saya akan menggunakan nama host / pengaturan IP berikut:

nama host Alamat IP

ceph-admin        10.0.15.10
mon1                 10.0.15.11
osd1                10.0.15.21
    . br />klien               10.0.15.15

Langkah 1 - Konfigurasikan Semua Node

Pada langkah ini, kami akan mengonfigurasi 6 node untuk mempersiapkannya untuk instalasi perangkat lunak Ceph Cluster. Jadi Anda harus mengikuti dan menjalankan perintah di bawah ini di semua node. Dan pastikan ssh-server terinstal di semua node.

Buat Pengguna Ceph

Buat pengguna baru bernama 'cephuser ' di semua node.

useradd -m -s /bin/bash cephuser
passwd cephuser

Setelah membuat pengguna baru, kita perlu mengkonfigurasi cephuser untuk hak sudo tanpa kata sandi. Artinya 'cephuser' dapat berjalan dan mendapatkan hak sudo tanpa harus memasukkan password terlebih dahulu.

Jalankan perintah di bawah ini untuk mencapainya.

echo "cephuser ALL =(root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cephuser
chmod 0440 /etc/sudoers.d/cephuser
sed -i s'/Defaults requiretty/#Defaults requiretty'/g /etc/sudoers

Instal dan Konfigurasi NTP

Instal NTP untuk menyinkronkan tanggal dan waktu di semua node. Jalankan perintah ntpdate untuk mengatur tanggal dan waktu melalui NTP. Kami akan menggunakan server NTP pool AS. Kemudian mulai dan aktifkan server NTP untuk berjalan saat boot.

sudo apt-get install -y ntp ntpdate ntp-doc
ntpdate 0.us.pool.ntp.org
hwclock --systohc
systemctl aktifkan ntp
systemctl start ntp

Instal Open-vm-tools

Jika Anda menjalankan semua node di dalam VMware, Anda perlu menginstal utilitas virtualisasi ini.

sudo apt-get install -y open-vm-tools

Instal Python dan parted

Dalam tutorial ini, kita membutuhkan paket python untuk membangun ceph-cluster. Instal python dan python-pip.

sudo apt-get install -y python python-pip parted

Konfigurasikan File Host

Edit file host di semua node dengan editor vim.

vim /etc/hosts

Rekatkan konfigurasi di bawah ini:

10.0.15.10        ceph-admin
10.0.15.11        mon1
10.0.15.21       ceph-osd1
10.0.15.22       ceph-osd2
   .15.d>10.0.15.15        ceph-client

Simpan file host dan keluar dari editor vim.

Sekarang Anda dapat mencoba melakukan ping antara nama host server untuk menguji konektivitas jaringan.

ping -c 5 mon1

Langkah 2 - Konfigurasi Server SSH

Pada langkah ini, kita akan mengonfigurasi node ceph-admin . Node admin digunakan untuk mengkonfigurasi node monitor dan node osd. Masuk ke node ceph-admin dan akses 'cephuser '.

ssh [dilindungi email]
su - cephuser

Node admin digunakan untuk menginstal dan mengkonfigurasi semua node cluster, sehingga pengguna di node ceph-admin harus memiliki hak untuk terhubung ke semua node tanpa kata sandi. Kita perlu mengonfigurasi akses SSH tanpa kata sandi untuk 'cephuser' di node 'ceph-admin'.

Buat kunci ssh untuk 'cephuser '.

ssh-keygen

Biarkan frasa sandi kosong/kosong.

Selanjutnya, buat file konfigurasi untuk konfigurasi ssh.

vim ~/.ssh/config

Rekatkan konfigurasi di bawah ini:

Host ceph-admin
        Hostname ceph-admin
        User cephuser

Host mon1
       Hostname mon1
       User cephuser

Host ceph-osd1
        Hostname ceph-osd1
       User cephuser

Host ceph-osd2
       Hostname ceph-osd2
   br />Host ceph-osd3
        Hostname ceph-osd3
        User cephuser

Host ceph-client
       Hostname ceph-client
     

Simpan file dan keluar dari vim.

Ubah izin file konfigurasi menjadi 644.

chmod 644 ~/.ssh/config

Sekarang tambahkan kunci ke semua node dengan perintah ssh-copy-id.

ssh-keyscan ceph-osd1 ceph-osd2 ceph-osd3 ceph-client mon1>> ~/.ssh/known_hosts
ssh-copy-id ceph-osd1
ssh-copy-id ceph- osd2
ssh-copy-id ceph-osd3
ssh-copy-id mon1

Ketikkan kata sandi cephuser Anda saat diminta.

Sekarang coba akses server osd1 dari node ceph-admin untuk menguji apakah login tanpa kata sandi berfungsi.

ssh ceph-osd1

Langkah 3 - Konfigurasikan Firewall Ubuntu

Untuk alasan keamanan, kita perlu mengaktifkan firewall di server. Sebaiknya kita menggunakan Ufw (Uncomplicated Firewall), firewall default Ubuntu, untuk melindungi sistem. Pada langkah ini, kita akan mengaktifkan ufw pada semua node, kemudian membuka port yang dibutuhkan oleh ceph-admin, ceph-mon dan ceph-osd.

Masuk ke node ceph-admin dan instal paket ufw.

ssh [dilindungi email]
sudo apt-get install -y ufw

Buka port 80, 2003 dan 4505-4506, lalu muat ulang firewalld.

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 2003/tcp
sudo ufw allow 4505:4506/tcp

Mulai dan aktifkan ufw untuk memulai saat boot.

sudo ufw aktifkan

Dari node ceph-admin, login ke node monitor 'mon1' dan instal ufw.

ssh mon1
sudo apt-get install -y ufw

Buka port untuk node monitor ceph dan mulai ufw.

sudo ufw izinkan 22/tcp
sudo ufw izinkan 6789/tcp
sudo ufw aktifkan

Terakhir, buka port berikut pada setiap node osd:ceph-osd1, ceph-osd2 dan ceph-osd3 - port 6800-7300.

Login ke setiap node ceph-osd dari ceph-admin, dan instal ufw.

ssh ceph-osd1
sudo apt-get install -y ufw

Buka port pada node osd dan muat ulang firewalld.

sudo ufw allow 22/tcp
sudo ufw allow 6800:7300/tcp
sudo ufw enable

Konfigurasi firewall ufw selesai.

Langkah 4 - Konfigurasikan Node OSD Ceph

Dalam tutorial ini, kami memiliki 3 node OSD, masing-masing node ini memiliki dua partisi hard disk.

  1. /dev/sda untuk partisi root
  2. /dev/sdb adalah partisi kosong - 20GB

Kami akan menggunakan /dev/sdb untuk ceph disk. Dari node ceph-admin, login ke semua node OSD dan format partisi /dev/sdb dengan XFS sistem file.

ssh ceph-osd1
ssh ceph-osd2
ssh ceph-osd3

Periksa skema partisi dengan perintah fdisk.

sudo fdisk -l /dev/sdb

Format partisi /dev/sdb dengan sistem file XFS dan dengan tabel partisi GPT menggunakan perintah parted.

sudo parted -s /dev/sdb mklabel gpt mkpart primer xfs 0% 100%

Selanjutnya, format partisi dalam format XFS dengan perintah mkfs.

sudo mkfs.xfs -f /dev/sdb

Sekarang periksa partisi, dan Anda akan melihat partisi XFS /dev/sdb.

sudo fdisk -s /dev/sdb
sudo blkid -o nilai -s TYPE /dev/sdb

Langkah 5 - Bangun Cluster Ceph

Pada langkah ini, kita akan menginstal Ceph pada semua node dari ceph-admin. Untuk memulai, login ke node ceph-admin.

ssh [dilindungi email]
su - cephuser

Instal ceph-deploy pada node ceph-admin

Pada langkah pertama kami telah menginstal python dan python-pip ke sistem. Sekarang kita perlu menginstal alat penyebaran Ceph 'ceph-deploy ' dari repositori pypi python.

Instal ceph-deploy pada node ceph-admin dengan perintah pip.

sudo pip install ceph-deploy

Catatan:Pastikan semua node diperbarui.

Setelah alat ceph-deploy diinstal, buat direktori baru untuk konfigurasi cluster Ceph.

Buat Cluster baru

Buat direktori cluster baru.

kluster mkdir
cd cluster/

Selanjutnya, buat cluster baru dengan 'ceph-deploy ' perintah dengan mendefinisikan node monitor 'mon1 '.

ceph-deploy mon1 baru

Perintah tersebut akan menghasilkan file konfigurasi cluster Ceph 'ceph.conf' di direktori cluster.

Edit file ceph.conf dengan vim.

vim ceph.conf

Di bawah blok [global], rekatkan konfigurasi di bawah ini.

# Alamat jaringan Anda
jaringan publik =10.0.15.0/24
ukuran default kumpulan osd =2

Simpan file dan keluar dari editor.

Instal Ceph di Semua Node

Sekarang instal Ceph di semua node dari node ceph-admin dengan satu perintah.

ceph-deploy install ceph-admin ceph-osd1 ceph-osd2 ceph-osd3 mon1

Perintah tersebut akan menginstal Ceph secara otomatis di semua node:mon1, osd1-3 dan ceph-admin - Instalasi akan memakan waktu.

Sekarang terapkan node monitor di node mon1.

ceph-deploy mon create-initial

Perintah akan membuat kunci monitor, periksa kunci dengan perintah ceph ini.

ceph-deploy assemblekeys mon1

Menambahkan OSDS ke Cluster

Setelah Ceph diinstal di semua node, sekarang kita dapat menambahkan daemon OSD ke cluster. Daemon OSD akan membuat partisi data dan jurnal pada disk /dev/sdb.

Periksa disk /dev/sdb yang tersedia di semua node osd.

daftar disk ceph-deploy ceph-osd1 ceph-osd2 ceph-osd3

Anda akan melihat /dev/sdb dengan format XFS yang telah kita buat sebelumnya.

Selanjutnya, hapus tabel partisi pada semua node dengan opsi zap.

ceph-deploy disk zap ceph-osd1:/dev/sdb ceph-osd2:/dev/sdb ceph-osd3:/dev/sdb

Perintah tersebut akan menghapus semua data di /dev/sdb pada node Ceph OSD.

Sekarang siapkan semua node OSD dan pastikan tidak ada kesalahan dalam hasilnya.

ceph-deploy osd mempersiapkan ceph-osd1:/dev/sdb ceph-osd2:/dev/sdb ceph-osd3:/dev/sdb

Saat Anda melihat ceph-osd1-3 siap untuk digunakan OSD di hasilnya, maka perintahnya berhasil.

Aktifkan OSD dengan perintah di bawah ini:

ceph-deploy osd aktifkan ceph-osd1:/dev/sdb ceph-osd2:/dev/sdb ceph-osd3:/dev/sdb

Sekarang Anda dapat memeriksa disk sdb pada node OSDS lagi.

daftar disk ceph-deploy ceph-osd1 ceph-osd2 ceph-osd3

Hasilnya adalah bahwa /dev/sdb sekarang memiliki dua partisi:

  1. /dev/sdb1 - Data Ceph
  2. /dev/sdb2 - Jurnal Ceph

Atau Anda memeriksanya langsung di node OSD.

ssh ceph-osd1
sudo fdisk -l /dev/sdb

Selanjutnya, terapkan kunci manajemen ke semua node terkait.

ceph-deploy admin ceph-admin mon1 ceph-osd1 ceph-osd2 ceph-osd3

Ubah izin file kunci dengan menjalankan perintah di bawah ini pada semua node.

sudo chmod 644 /etc/ceph/ceph.client.admin.keyring

Cluster Ceph di Ubuntu 16.04 telah dibuat.

Langkah 6 - Menguji Ceph

Pada langkah 4, kami telah menginstal dan membuat cluster Ceph baru, dan menambahkan node OSDS ke cluster. Sekarang kita harus menguji kluster untuk memastikannya berfungsi sebagaimana mestinya.

Dari node ceph-admin, masuk ke server monitor Ceph 'mon1 '.

ssh mon1

Jalankan perintah di bawah untuk memeriksa kondisi cluster.

kesehatan sudo ceph

Sekarang periksa status cluster.

sudo ceph -s

Anda dapat melihat hasilnya di bawah ini:

Pastikan kesehatan Ceph OK dan ada node monitor 'mon1 ' dengan alamat IP '10.0.15.11 '. Ada 3 OSD server dan semuanya siap dan berjalan, dan harus ada ruang disk yang tersedia sebesar 45 GB - Partisi OSD Data Ceph 3x15GB.

Kami berhasil membangun Cluster Ceph baru di Ubuntu 16.04.


Ubuntu
  1. Cara Menginstal MariaDB Galera Cluster di Ubuntu 16.04

  2. Cara Membuat Cluster Penyimpanan Ceph di Ubuntu 16.04

  3. Cara Menginstal Go di Ubuntu 18.04

  1. Cara Menginstal Odoo di Ubuntu

  2. Cara Menginstal Maven di Ubuntu

  3. Cara menginstal R di Ubuntu 16.04

  1. Cara Menginstal Anggur di Ubuntu

  2. Cara Menginstal Ruby di Ubuntu 20.04

  3. Cara Menginstal Putty di Ubuntu