Instal dan Konfigurasi Velero
#Perkenalan
Velero adalah alat sumber terbuka untuk melakukan pencadangan dan pemulihan dengan aman, melakukan pemulihan bencana, dan memigrasikan sumber daya kluster Kubernetes dan volume persisten. Alat ini berfungsi baik di tempat maupun di cloud publik. Velero terdiri dari proses server yang berjalan sebagai penerapan di kluster Kubernetes Anda dan antarmuka baris perintah (CLI) yang digunakan tim DevOps dan operator platform untuk mengonfigurasi pencadangan terjadwal, memicu pencadangan ad-hoc, melakukan pemulihan, dan banyak lagi.
Tidak seperti alat lain yang secara langsung mengakses basis data Kubernetes etcd untuk melakukan pencadangan dan pemulihan, Velero menggunakan API Kubernetes untuk menangkap status sumber daya kluster dan memulihkannya bila perlu. Pendekatan berbasis API ini memiliki sejumlah manfaat utama:
Pencadangan dapat menangkap subset sumber daya kluster, memfilter menurut namespace, jenis sumber daya, dan/atau pemilih label, yang memberikan tingkat fleksibilitas tinggi terkait apa yang dicadangkan dan dipulihkan.
Pengguna penawaran Kubernetes yang dikelola sering kali tidak memiliki akses ke dll yang mendasarinya
basis data, sehingga tidak memungkinkan untuk melakukan pencadangan/pemulihan secara langsung.
Sumber daya yang diekspos melalui server API agregat dapat dengan mudah dicadangkan dan dipulihkan meskipun disimpan dalam database etcd terpisah
Velero menyediakan serangkaian alat untuk mencadangkan sumber daya dan aplikasi Kubernetes untuk dua tujuan utama:
Pemulihan Bencana -- Pulihkan komponen dan aplikasi kluster Kubernetes.
Migrasi -- Migrasikan aplikasi Kubernetes Anda ke kluster Kubernetes lain.
Perlindungan Data - Menawarkan fitur perlindungan data utama seperti pencadangan terjadwal, jadwal penyimpanan, dan kait pra atau pasca pencadangan untuk tindakan khusus.
Gambar 131. Menginstal dan Mengonfigurasi Tata Letak Solusi Velero
Velero memungkinkan Anda:
Buat cadangan klaster Anda dan pulihkan jika terjadi kehilangan.
Migrasikan sumber daya klaster ke klaster lain.
Replikasi klaster produksi Anda ke klaster pengembangan dan pengujian.
Velero terdiri dari:
Server yang berjalan di cluster Anda
Klien baris perintah yang berjalan secara lokal
Bagian ini membahas cara memasang dan mengonfigurasi Velero dan cara menggunakan Velero untuk melakukan pencadangan/pemulihan pada Openshift Container Platform dengan menggunakan penyimpanan objek noobaa.
#Diagram Alir
Gambar 132. Diagram Alir Instalasi dan Konfigurasi Solusi Velero
PRASYARAT
Cluster OpenShift Container Platform harus tersedia dengan kredensial administrator
Cluster OCP harus memiliki penyimpanan objek noobaa sebagai bagian dari cluster Openshift Storage
#Proses Instalasi
Ikuti langkah-langkah di bawah ini untuk mengambil informasi Nooba.
Login ke cluster ocp dan jelaskan pod noobaa untuk mendapatkan DNS eksternal
> oc describe noobaa -n openshift-storage
Dapatkan ID akses & KUNCI noobaa dengan menjalankan perintah di bawah ini
> kubectl get secret noobaa-admin -n openshift-storage -o json | jq '.data|map_values(@base64d)'
Setelah kita memiliki informasi noobaa, buat file kredensial di cluster seperti yang ditunjukkan di bawah ini:
Buat file dengan menjalankan perintah berikut
vi velero.credentials
Tambahkan konten ke dalam berkas seperti yang disebutkan di bawah ini:
[default] aws_access_key_id = "3vTNl90sOpX654VdQYQm" aws_secret_access_key = "L0q2juZc647ySGRTHNzalmA2qKXK+fdkHV"
Ikuti langkah-langkah di bawah ini untuk mengonfigurasi Velero dengan penyimpanan Nooba.
Buat direktori terpisah untuk konfigurasi Velero dan beralihlah ke direktori tersebut.
> mkdir --p ~/Velero > cd ~/Velero
Unduh dan instal klien Velero dengan menggunakan langkah-langkah di bawah ini
> wget https://github.com/vmware-tanzu/velero/releases/download/v1.5.1/velero-v1.5.1-linux-amd64.tar.gz > tar zxf velero-v1.5.1-linux-amd64.tar.gz > sudo mv velero-v1.5.1-linux-amd64/Velero /usr/local/bin/ > rm -rf velero*
Hasilkan sertifikat menggunakan perintah di bawah ini.
> openssl s_client -showcerts \ -servername s3-openshift-storage.apps.dev01.twentynet.local \ -connect s3-openshift-storage.apps.dev01.twentynet.local:443 2>/dev/null | openssl x509 -inform pem > /tmp/noobaa.crt
Untuk mengonfigurasi server Velero dengan menggunakan penyimpanan noobaa, jalankan perintah berikut:
> velero install \ --provider aws \ --plugins velero/velero-plugin-for-aws:v1.1.0 \ --bucket velerobucket1 \ --secret-file ./noobaa.credentials \ --use-volume-snapshots=false --use-restic --default-volumes-to-restic \ --backup-location-config region=noobaa,s3ForcePathStyle=true,s3Url=https://s3-openshift-storage.apps.dev0.twentynet.local \ --cacert=/tmp/noobaa.crt
Output dari perintah di atas:
ClusterRoleBinding/velero: already exists, proceeding ClusterRoleBinding/velero: created ServiceAccount/velero: attempting to create resource ServiceAccount/velero: created Secret/cloud-credentials: attempting to create resource Secret/cloud-credentials: created BackupStorageLocation/default: attempting to create resource BackupStorageLocation/default: created Deployment/velero: attempting to create resource Deployment/velero: created Velero is installed! ⛵ Use 'kubectl logs deployment/velero -n velero' to view the status.
Aktifkan Velero Pods
Jalankan perintah di bawah ini untuk membuat pod velero.
> oc adm policy add-scc-to-user privileged -z velero -n velero > oc patch ds/restic --namespace velero --type json -p '[{"op":"add","path":"/spec/template/spec/containers/0/securityContext","value": { "privileged": true}}]'
Pod Velero harus Berjalan dan gunakan perintah di bawah ini untuk memeriksa status pod velero.
> watch oc get pods --n velero
Ikuti langkah-langkah di bawah ini untuk pencadangan dan pemulihan.
Gambar di bawah ini menunjukkan sumber daya aplikasi wordpress di bawah proyek wordpress
Jalankan perintah berikut untuk mengambil cadangan
> velero backup create wpbackup --include-namespaces wordpress
Output dari perintah di atas:
Backup request "my-backup" submitted successfully. Run `velero backup describe wpbackup` or `velero backup logs wpbackup` for more details.
Setelah beberapa detik, jalankan perintah di bawah ini untuk memeriksa status pencadangan.
> velero backup describe wpbackup
Jalankan perintah di bawah ini untuk mendapatkan cadangan yang tersedia di Velero.
> velero backup get
Output dari perintah di atas:
NAME STATUS ERRORS WARNINGS CREATED EXPIRES STORAGE LOCATION SELECTOR wpbackup Completed 0 0 2020-09-29 14:38:36 +0200 CEST 29d default <none>
Jalankan perintah di bawah ini untuk memulihkan cadangan di Velero.
> velero restore create --from-backup wpbackup
Output dari perintah di atas:
Restore request "wpbackup-20200930065552" submitted successfully. Run `velero restore describe wpbackup-20200930065552` or `velero restore logs wpbackup-20200930065552` for more details.
Jalankan perintah di bawah ini untuk mencantumkan pemulihan.
> velero restore get
Output dari perintah di atas.
NAME BACKUP STATUS STARTED COMPLETED ERRORS WARNINGS CREATED SELECTOR wpbackup-20200930065552 wpbackup Completed 2020-09-30 06:55:51 +0200 CEST 2020-09-30 06:55:53 +0200 CEST 0 0 2020-09-30 06:55:52 +0200 CEST <none>
#Verifikasi
Verifikasi apakah sumber daya wordpress telah dipulihkan atau tidak.
Tidak ada komentar:
Posting Komentar