Tutorial Chef
Tutorial Chef adalah blog kedua dari seri blog Chef. Dalam saya blog sebelumnya , Saya telah menjelaskan apa itu Chef, Manajemen Konfigurasi dan bagaimana Chef mencapai Manajemen Konfigurasi dengan bantuan kasus penggunaan Gannett.
Dalam Tutorial Koki ini topik berikut akan dibahas:
Saya yakin setelah membaca saya blog sebelumnya Anda pasti penasaran ingin tahu bagaimana sebenarnya Chef bekerja. Bagian pertama dari blog Tutorial Chef ini akan menjelaskan arsitektur Chef secara mendetail, yang akan menghapus semua keraguan Anda.
Tutorial Chef - Arsitektur Chef
Seperti yang ditunjukkan pada diagram di bawah ini, ada tiga komponen Chef utama:
- Workstation
- Server
- Node
Tutorial Chef - Workstation
Workstation adalah lokasi dari semua konfigurasi Chefdikelola. Mesin ini menampung semua data konfigurasi yang nantinya dapat didorong ke Chef Server pusat. Konfigurasi ini diuji di workstation sebelum dimasukkan ke Chef Server. Sebuah workstation terdiri dari alat baris perintah yang disebut Pisau, yang digunakan untuk berinteraksi dengan Chef Server. Mungkin ada beberapa Workstation yang bersama-sama mengelola Chef Server pusat.
Workstation bertanggung jawab untuk melakukan fungsi di bawah ini:
- Menulis Buku Resep dan Resep yang nantinya akan di-push ke Chef Server pusat
- Mengelola Node di Chef Server pusat
Sekarang, mari kita pahami poin-poin yang disebutkan di atas satu per satu.
Menulis Buku Resep dan Resep yang nantinya akan di-push ke Chef Server pusat
Resep: Resep adalah kumpulan sumber daya yang menjelaskan konfigurasi atau kebijakan tertentu. Ini menjelaskan semua yang diperlukan untuk mengkonfigurasi bagian dari suatu sistem. Pengguna menulis Resep yang menjelaskan cara Chef mengelola aplikasi dan utilitas (seperti Server HTTP Apache, MySQL, atau Hadoop) dan cara mengonfigurasinya.
Resep ini menjelaskan serangkaian sumber daya yang harus berada dalam keadaan tertentu, yaitu Paket yang harus diinstal, layanan yang harus dijalankan, atau file yang harus ditulis.
Nanti di blog , Saya akan menunjukkan cara menulis Resep untuk menginstal paket Apache2 di Chef Nodes dengan menulis kode ruby di Chef Workstation.
Buku masak: Beberapa Resep dapat dikelompokkan bersama untuk membentuk Buku Masakan. Cookbook mendefinisikan skenario dan berisi semua yang diperlukan untuk mendukung skenario itu:
- Resep, yang menentukan sumber daya yang akan digunakan dan urutan penerapannya
- Nilai atribut
- Distribusi file
- Template
- Ekstensi untuk Chef, seperti perpustakaan, definisi, dan sumber daya khusus
Mengelola Node di Chef Server pusat
Sistem Workstation akan memiliki utilitas baris perintah yang diperlukan, untuk mengontrol dan mengelola setiap aspek Chef Server pusat. Hal-hal seperti menambahkan Node baru ke Chef Server pusat, menghapus Node dari Chef Server pusat, mengubah konfigurasi Node, dll, semuanya dapat dikelola dari Workstation itu sendiri.
Sekarang mari kita lihat, komponen Workstation apa saja yang diperlukan untuk menjalankan fungsi di atas.
Stasiun kerja memiliki dua komponen utama:
Utilitas pisau: Alat baris perintah ini dapat digunakan untuk berkomunikasi dengan Chef Server pusat dari Workstation. Menambah, menghapus, mengubah konfigurasi Node di Chef Server pusat akan dilakukan dengan menggunakan utilitas Knife ini. Menggunakan utilitas Knife, Cookbooks dapat diunggah ke Server dan Peran Chef pusat, lingkungan juga dapat dikelola. Pada dasarnya, setiap aspek dari Chef Server pusat dapat dikontrol dari Workstation menggunakan utilitas Knife.
Repositori Chef lokal: Ini adalah tempat di mana setiap komponen konfigurasi Chef Server pusat disimpan. Repositori Chef ini dapat disinkronkan dengan Chef Server pusat (sekali lagi menggunakan utilitas pisau itu sendiri).
Tutorial Chef - Chef Server
Chef Server bertindak sebagai hub untuk data konfigurasi. Chef Server menyimpan Cookbooks, kebijakan yang diterapkan ke Node, dan metadata yang menjelaskan setiap Node terdaftar yang dikelola oleh Chef-Client.
Node menggunakan Chef-Client untuk meminta detail konfigurasi pada Chef Server, seperti Resep, Templat, dan distribusi file. Chef-Client kemudian melakukan pekerjaan konfigurasi sebanyak mungkin pada Node itu sendiri (dan bukan pada Chef Server). Setiap Node memiliki perangkat lunak Chef Client yang diinstal, yang akan menurunkan konfigurasi dari Chef Server pusat yang berlaku untuk Node tersebut. Pendekatan skalabel ini mendistribusikan upaya konfigurasi ke seluruh organisasi.
Tutorial Chef - Chef Nodes
Node dapat berupa server virtual berbasis cloud atau server fisik di pusat data Anda sendiri, yang dikelola menggunakan Chef Server pusat. Komponen utama yang perlu ada di Node adalah agen yang akan menjalin komunikasi dengan Chef Server pusat. Ini disebut Chef Client.
Chef Client melakukan fungsi berikut:
- Ini bertanggung jawab untuk berinteraksi dengan Chef Server pusat.
- Ia mengelola pendaftaran awal Node ke Chef Server pusat.
- Ini menurunkan Cookbooks, dan menerapkannya di Node, untuk mengkonfigurasinya.
- Polling berkala dari Chef Server pusat untuk mengambil item konfigurasi baru, jika ada.
Klik di sini untuk mempelajari cara menginstal Chef Server, Workstation, dan Node
Tutorial Chef - Keuntungan Chef:
Tutorial Chef ini tidak akan lengkap jika, saya tidak menyertakan manfaat utama Chef:
- Anda dapat mengotomatiskan seluruh infrastruktur menggunakan Chef. Semua tugas yang sebelumnya dilakukan secara manual, kini dapat dilakukan melalui alat Chef.
- Anda dapat mengkonfigurasi ribuan node dalam beberapa menit menggunakan Chef.
- Otomatisasi chef berfungsi dengan sebagian besar penawaran cloud publik seperti .
- Chef tidak hanya akan mengotomatiskan, tetapi juga akan terus memeriksa sistem secara konsisten, dan mengonfirmasi bahwa sistem sebenarnya dikonfigurasi seperti yang diperlukan (Agen Chef / Klien melakukan pekerjaan ini). Jika seseorang membuat kesalahan dengan memodifikasi file, Chef akan memperbaikinya.
- Seluruh infrastruktur dapat direkam dalam bentuk repositori Chef, yang dapat digunakan sebagai cetak biru untuk membuat ulang infrastruktur dari awal.
Saya harap Anda menikmati tutorial Chef ini sampai sekarang, cukup dengan posting teoritis! mari kita bersenang-senang dengan tangan.
Tutorial Chef | Memulai Dengan Chef | Edureka
Tutorial Koki - Hands-On
Disini saya akan menjelaskan cara membuat Resep, Buku Masak dan Template di Chef Workstation. Saya juga akan menjelaskan kepada Anda bagaimana menggunakan Cookbook dari Workstation ke Chef-Client (Chef Node).
program round robin di c
Saya menggunakan dua Gambar Virtual, satu untuk Chef Workstation dan lainnya untuk Chef Node. Untuk Chef Server, saya akan menggunakan versi Chef yang dihosting (di cloud). Anda juga dapat menggunakan mesin fisik untuk Chef Server juga.
Langkah 1: Instal Chef DK (Development Kit) di Chef Workstation Anda.
Chef DK adalah paket yang berisi semua alat pengembangan yang Anda perlukan saat membuat kode Chef. Ini tautan untuk mengunduh Chef DK .
Di sini, pilih sistem operasi yang Anda gunakan. Saya menggunakan CentOS 6.8. Jadi, saya akan mengklik Red Hat Enterprise Linux .
Salin tautan tersebut sesuai dengan versi CentOS yang Anda gunakan. Saya menggunakan CentOS 6, seperti yang Anda lihat yang telah saya soroti pada gambar di atas.
Pergi ke terminal Workstation Anda dan unduh Chef DK dengan menggunakan perintah wget dan tempel tautannya.
Jalankan ini:
wget https://packages.chef.io/stable/el/6/chefdk-1.0.3-1.el6.x86_64.rpm
Paket tersebut sekarang telah diunduh. Saatnya menginstal paket ini menggunakan rpm.
Jalankan ini:
rpm -ivh chefdk-1.0.3-1.el6.x86_64.rpm
Chef DK sekarang terinstal di Workstation saya.
Langkah 2: Buat Resep di Workstation
Mari kita mulai dengan membuat Recipe di Workstation dan mengujinya secara lokal untuk memastikannya berfungsi.Buat folder bernama chef-repo. Kami dapat membuat Resep kami di dalam folder ini.
Jalankan ini:
mkdir chef-repo cd chef-repo
Di direktori chef-repo ini saya akan membuat Resep bernama edureka.rb. .rb adalah ekstensi yang digunakan untuk ruby. Saya akan menggunakan editor vim, Anda dapat menggunakan editor lain yang Anda inginkan seperti gedit, emac, vi dll.
Jalankan ini:
vim edureka.rb
Di sini tambahkan yang berikut:
file '/ etc / motd' content 'Selamat Datang di Chef' end
R iniecipe aku s dureka .rb membuat file bernama / etc / motd dengan konten “Selamat Datang di Chef”.
cara menggunakan daya di java
Sekarang saya akan menggunakan Resep ini untuk memeriksa apakah itu berfungsi.
Menjalankan ini:
chef-apply edureka.rb
Jadi ada file yang dibuat di chef-repo yang memiliki konten Selamat datang di Chef.
Langkah 3: MOdifying Recipe file untuk menginstal paket httpd
Saya akan mengubah Resep untuk menginstal paket httpd di Workstation saya dan menyalin file index.html ke root dokumen default untuk mengkonfirmasi instalasi. Tindakan default untuk sumber daya paket adalah penginstalan, oleh karena itu saya tidak perlu menentukan tindakan itu secara terpisah.
Menjalankan ini:
vim edureka.rb
Di sini tambahkan yang berikut ini:
paket 'httpd' service 'httpd' do action [: enable,: start] end file '/var/www/html/index.html' do content 'Selamat datang di Apache di Chef' end
Sekarang saya akan menerapkan konfigurasi ini dengan menjalankan perintah di bawah ini:
Menjalankan ini:
chef-apply edureka.rb
Eksekusi perintah dengan jelas menggambarkan setiap contoh dalam Resep. Ini menginstal paket Apache, mengaktifkan dan memulai layanan httpd di Workstation. Dan itu membuat file index.html di root dokumen default dengan konten 'Selamat datang di Apache di Chef'.
Sekarang konfirmasikan instalasi Apache2 dengan membuka browser web Anda. Ketik alamat IP publik Anda atau nama host Anda. Dalam kasus saya, ini adalah localhost.
Langkah 4: Sekarang kita akan membuat Cookbook pertama kita.
Buat direktori bernama buku masak, dan jalankan perintah di bawah ini untuk menghasilkan Buku Resep.
Menjalankan ini:
mkdir buku masak cd buku masak chef menghasilkan buku masak httpd_deploy
httpd_deploy adalah nama yang diberikan ke Cookbook. Anda dapat memberikan nama apa pun yang Anda inginkan.
Mari kita pindah ke direktori baru ini httpd_deploy.
Menjalankan ini:
cd httpd_deploy
Sekarang mari kita lihat struktur file dari Cookbook yang dibuat.
Menjalankan ini:
pohon
Langkah 5: Cbuat file Template.
Sebelumnya, saya membuat file dengan beberapa konten, tetapi itu tidak sesuai dengan struktur Resep dan Buku Resep saya. Jadi mari kita lihat bagaimana kita bisa membuat Template untuk halaman index.html.
Menjalankan ini:
chef menghasilkan template httpd_deploy index.html
Sekarang jika Anda melihat struktur file Cookbook saya, ada folder yang dibuat dengan nama template dengan file index.html.erb. Saya akan mengedit file template index.html.erb ini dan menambahkan Resep saya ke dalamnya. Lihat contoh di bawah ini:
Buka direktori default
Menjalankan ini:
cd / root / chef-repo / buku masak / httpd_deploy / templates / default
Di sini, edit template index.html.erb dengan menggunakan editor apa pun yang Anda suka. Saya akan menggunakan editor vim.
Menjalankan ini:
vim index.html.erb
Sekarang tambahkan yang berikut ini:
Selamat datang di Chef Apache Deployment
Langkah 6: Cbuat resep dengan template ini.
Buka direktori Resep.
Jalankan t nya:
cd / root / chef-repo / buku masak / httpd_deploy / resep
Sekarang edit file default.rb dengan menggunakan editor apa pun yang Anda inginkan. Saya akan menggunakan editor vim.
Menjalankan ini:
vim default.rb
Di sini tambahkan yang berikut ini:
paket 'httpd' service 'httpd' lakukan tindakan [: aktifkan,: mulai] templat akhir '/var/www/html/index.html' lakukan sumber 'index.html.erb' end
Sekarang saya akan kembali ke folder chef-repo saya dan menjalankan / menguji resep saya di Workstation saya.
Menjalankan ini:
cd / root / chef-repo chef-client --local-mode --runlist 'resep [httpd_deploy]'
Menurut Resep saya, Apache diinstal pada Workstation saya, layanan sedang dimulai dan diaktifkan saat boot. Juga file template telah dibuat di root dokumen default saya.
Sekarang saya telah menguji Workstation saya. Saatnya menyiapkan Chef Server.
Langkah 7: Siapkan Chef Server
Saya akan menggunakan versi Chef Server yang dihosting di cloud tetapi Anda juga dapat menggunakan mesin fisik. Chef-Server ini hadir di kelola.chef.io
Di sini buat akun jika Anda belum punya. Setelah Anda membuat akun, masuk dengan kredensial login Anda.
apa itu tipe casting di java
Seperti inilah rupa Chef Server.
Jika Anda masuk untuk pertama kali, hal pertama yang akan Anda lakukan adalah membuat organisasi. Organisasi pada dasarnya adalah sekelompok Mesin yang akan Anda kelola dengan Chef Server.
Pertama, saya akan pergi ke tab administrasi. Di sana, saya sudah membuat organisasi bernama edu. Jadi saya perlu mendownload starter kit di Workstation saya. Starter kit ini akan membantu Anda untuk mengirim file dari Workstation ke Chef Server. Klik pada ikon pengaturan di sisi kanan dan klik Starter Kit.
Ketika Anda mengklik di sana, Anda akan mendapatkan opsi untuk mengunduh Starter Kit. Cukup klik di atasnya untuk mengunduh file zip Starter Kit.
Pindahkan file ini ke direktori root Anda.Sekarang unzip file zip ini dengan menggunakan perintah unzip di terminal Anda. Anda akan melihat bahwa itu termasuk direktori yang disebut chef-repo.
Menjalankan ini:
buka zip chef-starter.zip
Sekarang pindahkan starter kit ini ke direktori buku masak di direktori chef-repo.
Menjalankan ini:
mv starter / root / chef-repo / buku masak
Chef Cookbooks tersedia di Cookbook Super Market, kita bisa ke Chef SuperMarket. Unduh Buku Resep yang diperlukan dari supermarket.chef.io . Saya mengunduh salah satu Cookbook untuk menginstal Apache dari sana.
Menjalankan e t h aku s:
cd chef-repo knife unduh situs buku masak learn_chef_httpd
Ada Tar ball yang diunduh untuk Apache Cookbook. Sekarang, kita perlu mengekstrak konten dari file Tar yang diunduh ini. Untuk itu, saya akan menggunakan perintah tar.
tar -xvf learn_chef_httpd-0.2.0.tar.gz
Semua file yang diperlukan secara otomatis dibuat di bawah Buku Resep ini. Tidak perlu melakukan modifikasi apa pun. Mari kita periksa deskripsi Resep di dalam folder resep saya.
Jalankan t h aku s :
cd / root / chef-repo / learn_chef_httpd / resep kucing default.rb
Sekarang, saya hanya akan mengunggah buku masak ini ke Chef Server saya karena terlihat sempurna bagi saya.
Langkah 8: Unggah Buku Resep ke Chef Server.
Untuk mengupload Apache Cookbook yang telah saya download, pertama-tama pindahkan file learn_chef_httpd ini ke folder Cookbooks di chef-repo. Kemudian ubah direktori Anda menjadi buku masak.
Jalankan t h aku s :
mv / root / chef-repo / learn_chef_httpd / root / chef-repo / buku masak
Sekarang pindah ke direktori buku masak ini.
Jalankan ini:
cd buku masak
Sekarang di direktori ini, jalankan perintah di bawah ini untuk mengunggah Apache Cookboountuk:
Exec ute t h aku s:
unggah buku masak pisau learn_chef_httpd
Verifikasi Cookbook dari konsol Chef Server Management. Di bagian kebijakan, Anda akan menemukan Buku Resep yang telah Anda unggah. Lihat tangkapan layar di bawah ini:
Sekarang langkah terakhir kita adalah menambahkan Chef Node. Saya telah menyiapkan Workstation, Chef Server, dan sekarang saya perlu menambahkan Klien saya ke Chef Server untuk otomatisasi.
Langkah 9: Menambahkan Chef Node ke Chef Server.
Untuk tujuan demonstrasi saya akan menggunakan satu mesin CentOS sebagai Chef Node. Ada ratusan Node yang terhubung ke satu Chef Server. Warna terminal mesin Node saya berbeda dari Workstation sehingga Anda dapat membedakan keduanya.
Saya hanya perlu alamat IP dari Node saya untuk itu saya akan menjalankan perintah di bawah ini di mesin Node sayaaku s.
Exec u t aku s t h aku s:
ifconfig
Saya akan menambahkan Chef Node saya ke Server dengan menjalankan perintah Knife Bootstrap di mana saya akan menentukan alamat IP The Chef Node dan namanya. Jalankan perintah yang ditunjukkan di bawah inidi:
Exec ute t h aku s:
knife bootstrap 192.168.56.102 --ssh-user root --ssh-password edureka --node-name chefNode
Perintah ini juga akan menginisialisasi penginstalan Chef-Client di Chef Node. Anda dapat memverifikasinya dari CLI di Workstation menggunakan perintah pisau, seperti yang ditunjukkan di bawah inidi:
Exec ute t h aku s:
Daftar simpul pisau
Anda juga dapat memverifikasi dari Chef Server. Buka tab node di Konsol Manajemen Server Anda, di sini Anda akan melihat bahwa node yang Anda tambahkan ada. Lihat tangkapan layar di bawah ini.
Langkah 10: Kelola Daftar Node Run
Mari kita lihat bagaimana kita dapat menambahkan Buku Resep ke Node dan mengelola daftar Jalankan dari Chef Server. Seperti yang Anda lihat pada gambar di bawah, klik tab Tindakan dan pilih opsi Edit Daftar Proses untuk mengelola daftar Proses.
Dalam Resep yang Tersedia, Anda dapat melihat Resep learn_chef_httpd kami, Anda dapat menariknya dari paket yang tersedia ke Daftar Proses saat ini dan menyimpan daftar Proses.
Sekarang login ke Node Anda dan jalankan chef-client untuk menjalankan Run List.
Exec ute t h aku s:
klien utama
Saya harap Anda menikmati Tutorial Chef ini dan mempelajari bagaimana Chef dapat digunakan untuk mengonfigurasi ratusan Node. Chef memainkan peran penting dalam banyak organisasi untuk mencapai DevOps. Dengan organisasi Chef merilis aplikasi lebih sering dan reliabkaca.
Jika Anda menemukan blog ini di “ Tutorial Chef 'Relevan, lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kursus Pelatihan Sertifikasi DevOps Edureka membantu pelajar mendapatkan keahlian dalam berbagai proses dan alat DevOps seperti Puppet, Chef, Jenkins, Nagios, dan GIT untuk mengotomatiskan beberapa langkah di SDLC.