Memulai Dengan SaltStack di Ubuntu 17.04
SaltStack adalah program manajemen konfigurasi berbasis python yang dioptimalkan untuk otomatisasi file konfigurasi, penyebaran, dan hal lain yang perlu
Sementara SaltStack adalah alat yang hebat untuk menjalankan operasi pada banyak server secara bersamaan, SaltStack juga mendukung preset konfigurasi terdefinisi per host yang disimpan dalam file unik yang selanjutnya disebut "pillar". Dalam panduan ini, kita akan menulis formula SaltStack kecil untuk menginstal Nginx dan mengotomatiskan penyebaran host virtual menggunakan pilar.
Jika Anda baru memulai dan belum menyiapkan master SaltStack Anda, lihat artikel ini yang menjelaskan cara memulai dengan SaltStack.
Kita mulai dengan membuat folder untuk formula kita yang selanjutnya menyimpan file yang diperlukan untuk operasi SaltStack di antek-antek kita.
mkdir -p /srv/salt/nginx
Setelah membuat folder, kita dapat melanjutkan menulis init.sls
file yang merupakan bagian penting dari setiap rumus:
nginx:
pkg:
- installed
/etc/nginx/sites-enabled/virtualhosts.conf:
file.managed:
- source: salt://nginx/files/virtualhosts.jinja
- template: jinja
- user: root
- group: root
- mode: 655
cmd:
- run
- names:
- service nginx restart
Seperti yang mungkin Anda perhatikan, SaltStack menggunakan mesin templating Jinja untuk menghasilkan file konfigurasi dinamis. Ini memberikan berbagai kemungkinan dalam file template konfigurasi kami, seperti mengakses kode Python asli atau variabel pengaturan dan sejenisnya. Langkah selanjutnya terdiri dari membuat template untuk virtualhosts.conf
file kita , sedangkan kita perlu membuat folder terlebih dahulu:
mkdir -p /srv/salt/nginx/files
Setelah folder dibuat, kita dapat melanjutkan menulis virtualhosts.jinja
file:
{% for vhost in pillar['vhosts'] %}
server {
listen {{ vhost['listenPort'] }};
server_name {{ vhost['serverName'] }};
root {{ vhost['documentRoot'] }};
index {%- for index in vhost['indexFiles'] -%}{{ index }}{%- endfor -%};
location / {
try_files $uri $uri/ =404;
}
}
{% endfor %}
Setelah membuat rumus, kita dapat melanjutkan dan mengatur basis Pilar kami:
mkdir -p /srv/pillar/
Setiap referensi untuk host yang cocok dengan file pilar tertentu ditulis ke dalam top.sls
file dalam direktori yang baru saja kita buat. Dalam contoh kami, kami menganggap bahwa dua antek ada dengan nama host nginxwww1
dan nginxwww2
sedangkan kami akan menetapkan keduanya file pilar unik:
base:
'id:nginxwww1':
- match: grain
- nginxwww1
'id:nginxwww2':
- match: grain
- nginxwww2
Selanjutnya, kita akan melanjutkan membuat file pilar nginxwww1
sementara kita akan membuat vhost mendengarkan pada port 81 untuk domain example.com
, root dokumen /var/www/example_com/
dan file indeks menjadi index.shtml
:
vhosts:
-
listenPort: '81'
serverName: 'example.com'
documentRoot: '/var/www/example_com'
indexFiles:
- index.shtml
Kami akan melanjutkan dengan membuat file pilar nginxwww2
sementara kami akan membuat vhost mendengarkan pada port 82 untuk domain example2.com
, keberadaan root dokumen /var/www/example2_com/
dan file indeks menjadi index.js
dan index.css
:
vhosts:
-
listenPort: '82'
serverName: 'example2.com'
documentRoot: '/var/www/example2_com'
indexFiles:
- index.js
- index.css
Catatan: File pilar disimpan di dalamnya/srv/pillar/
Kami sekarang dapat menyelesaikan percobaan pertama kami dengan pilar dengan memperbarui mereka di kaki tangan kami:
salt '*' saltutil.refresh_pillar
Setelah itu, kita bisa menjalankan formula SaltStack:
salt '*' state.sls nginx
Setelah formula SaltStack dijalankan dan diselesaikan tanpa kesalahan, kita seharusnya dapat melihat nginx
mendengarkan pada port 81
on nginxwww1
dan on port 82
on nginxwww2
sebagai konfirmasi.
Formula SaltStack yang agak ringan namun kuat ini dapat diperluas lebih jauh untuk menambahkan dukungan untuk HTTPS, mungkin dengan integrasi Let's Encrypt, dukungan untuk backend CGI atau PHP dan semua yang dapat Anda lakukan secara manual juga. Panduan ini seharusnya memberi Anda ide dasar formula dan pilar SaltStack yang digunakan untuk penyebaran file konfigurasi. Selamat mengotomatisasi!
SaltStack adalah program manajemen konfigurasi berbasis python yang dioptimalkan untuk otomatisasi file konfigurasi, penyebaran, dan hal lain yang perlu
Jenkins adalah alat open source CI (Continuous Integration) yang populer yang banyak digunakan untuk pengembangan, penyebaran, dan otomatisasi proyek. Artikel ini wil
Pendahuluan Drone adalah platform pengujian dan pengiriman otomatis dan berkesinambungan yang berjalan pada infrastruktur Anda sendiri. Drone mendukung bahasa apa pun, layanan o
Ada banyak cara untuk mengotomatiskan proses pengaturan dan konfigurasi kotak. Untuk alasan apa pun, jika seluruh sistem kami pada saat ini terdiri dari adil
Apa itu Load Balancer Load Balancers duduk di depan aplikasi Anda dan mendistribusikan lalu lintas masuk di beberapa instance aplikasi Anda. Fo
SaltStack, atau Salt, adalah solusi manajemen konfigurasi open source yang populer yang dapat digunakan untuk mengimplementasikan eksekusi jarak jauh, manajemen konfigurasi, cod
Menggunakan Sistem yang Berbeda? Ansible adalah alat sumber terbuka untuk mengotomatisasi tugas. Ia mengelola konfigurasi server Linux dan Windows Anda. Ini bekerja
Menggunakan Sistem yang Berbeda? Pengantar Continuous Integration adalah praktik pengembangan perangkat lunak DevOps yang memungkinkan pengembang untuk sering menggabungkannya
Menggunakan Sistem yang Berbeda? Pengantar Continuous Integration adalah praktik pengembangan perangkat lunak DevOps yang memungkinkan pengembang untuk sering menggabungkannya
Pendahuluan Strider CD adalah platform penyebaran berkelanjutan sumber terbuka. Aplikasi ini ditulis dalam Node.js dan menggunakan MongoDB sebagai cadangan penyimpanan. Melangkah
Menggunakan Sistem yang Berbeda? Ansible adalah alat sumber terbuka untuk mengotomatisasi tugas. Ia mengelola konfigurasi server Linux dan Windows Anda. Ini bekerja
Apa itu Packer? Packer adalah alat pencitraan server yang dikembangkan oleh HashiCorp. Pencitraan server; atau sebagai alternatif, infrastruktur yang tidak dapat diubah; adalah alternatif populer
Menggunakan Sistem yang Berbeda? GoCD adalah sistem pengantaran dan otomatisasi sumber terbuka yang berkelanjutan. Ini memungkinkan Anda untuk memodelkan alur kerja yang kompleks menggunakan paralelnya
Pendahuluan Chocolatey membawa manajemen paket yang memudahkan administrasi perangkat lunak dan dependensi di Linux, ke Windows. Anda dapat dengan cepat dan mudah
Menggunakan Sistem yang Berbeda? Foreman adalah alat sumber terbuka dan gratis yang membantu Anda dengan konfigurasi dan pengelolaan server fisik dan virtual. Forema
Menggunakan Sistem yang Berbeda? Foreman adalah alat sumber terbuka dan gratis yang membantu Anda dengan konfigurasi dan pengelolaan server fisik dan virtual. Forema
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.
CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?
Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.
Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.
Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut