Gunakan Ansible untuk mengautomasikan penggunaan aplikasi tanpa pelayan
Pengenalan | Ansible direka untuk menjadi alat penggunaan paling mudah yang sebenarnya berfungsi. Ini bermakna ia bukan bahasa pengaturcaraan yang lengkap. Anda perlu menulis templat YAML yang mentakrifkan tugas dan menyenaraikan sebarang tugas yang perlu diautomatikkan. |
Kebanyakan orang menganggap Ansible sebagai "SSH dalam gelung untuk" yang lebih berkuasa, dan dalam kes penggunaan mudah ini adalah benar. Tetapi sebenarnya Ansible adalah tugas, bukan SSH. Dalam kebanyakan kes, kami menyambung melalui SSH, tetapi ia juga menyokong perkara seperti Pengurusan Jauh Windows (WinRM) pada mesin Windows dan API HTTPS sebagai bahasa biasa untuk perkhidmatan awan.
Dalam awan, Ansible boleh beroperasi pada dua tahap bebas: satah kawalan dan sumber contoh. Pesawat kawalan terdiri daripada semua yang tidak berjalan pada sistem pengendalian. Ini termasuk menyediakan rangkaian anda, mencipta kejadian baharu, menyediakan perkhidmatan peringkat lebih tinggi seperti Amazon S3 atau DynamoDB, dan semua yang anda perlukan untuk memastikan infrastruktur awan anda selamat dan melayani pelanggan anda.
Mengusahakan instance ialah perkara yang anda sudah tahu Ansible boleh lakukan: memulakan dan menghentikan perkhidmatan, templat fail konfigurasi, memasang pakej dan semua operasi berkaitan sistem pengendalian melalui SSH.
Sekarang, apakah yang tidak berguna? Bergantung pada orang yang anda tanya, tanpa pelayan adalah sama ada lanjutan awan awam yang tidak terhingga atau paradigma baharu sepenuhnya di mana segala-galanya adalah panggilan API dan tidak pernah dilakukan sebelum ini.
Ansible mengambil pandangan pertama. Sebelum "tanpa perkhidmatan" adalah istilah teknikal, pengguna perlu mengurus dan mengkonfigurasi kejadian EC2, rangkaian awan peribadi maya (VPC) dan segala-galanya. Serviceless ialah satu lagi langkah ke arah perkhidmatan terurus dan berfungsi dengan baik dengan seni bina tanpa ejen Ansible.
Sebelum kita memulakan contoh Lambda, mari lihat tugas susunan CloudFormation konfigurasi mudah:
- name: Build network cloudformation: stack_name: prod-vpc state: present template: base_vpc.yml
Menulis tugasan seperti ini hanya mengambil masa beberapa minit, tetapi ia merupakan langkah separa manual terakhir yang terlibat dalam membina infrastruktur - klik "Buat Tindanan" - ini meletakkan buku main bersama yang lain. Kini VPC anda hanyalah satu lagi tugas yang perlu dipanggil semasa menyediakan wilayah baharu.
Memandangkan pembekal awan ialah sumber kebenaran tentang perkara yang berlaku dalam akaun anda, Ansible mempunyai banyak cara untuk mendapatkan dan menapis serta membuat pertanyaan yang menjalankan kejadian atau rangkaian menggunakan ID, nama dan parameter lain. Mengambil modul cloudformation_facts sebagai contoh, kami boleh mendapatkan ID subnet, julat rangkaian dan data lain daripada templat yang baru kami buat.
- name: Pull all new resources back in as a variable cloudformation_facts: stack_name: prod-vpc register: network_stack
Untuk aplikasi tanpa pelayan, anda pasti memerlukan fungsi Lambda sebagai tambahan kepada jadual DynamoDB, baldi S3 dan apa-apa lagi. Nasib baik, dengan menggunakan modul lambda, fungsi Lambda boleh dibuat dengan cara yang sama seperti timbunan tugas sebelumnya:
- lambda: name: sendReportMail zip_file: "{{ deployment_package }}" runtime: python3.6 handler: report.send memory_size: 1024 role: "{{ iam_exec_role }}" register: new_function
Jika anda mempunyai alatan lain yang ingin anda gunakan untuk menghantar aplikasi tanpa pelayan, itu juga boleh dilakukan. Rangka kerja tanpa pelayan sumber terbuka mempunyai modul Ansible sendiri yang juga berfungsi:
- serverless: service_path: '{{ project_dir }}' stage: dev register: sls - name: Serverless uses CloudFormation under the hood, so you can easily pull info back into Ansible cloudformation_facts: stack_name: "{{ sls.service_name }}" register: sls_facts
Bukan ini sahaja yang anda perlukan, kerana projek tanpa pelayan juga mesti wujud dan anda akan mentakrifkan fungsi dan sumber acara anda di sana. Untuk contoh ini, kami akan membuat fungsi yang bertindak balas kepada permintaan HTTP. Rangka kerja tanpa perkhidmatan menggunakan YAML sebagai bahasa konfigurasi mereka (seperti Ansible), jadi ini sepatutnya kelihatan biasa.
# serverless.yml service: fakeservice provider: name: aws runtime: python3.6 functions: main: handler: test_function.handler events: - http: path: / method: get
Di AnsibleFest, saya akan membincangkan contoh ini dan strategi penggunaan mendalam yang lain untuk memaksimumkan penggunaan buku permainan dan infrastruktur yang telah anda miliki, serta amalan tanpa pelayan baharu. Sama ada anda boleh sampai ke sana atau tidak, saya harap contoh ini boleh membantu anda mula menggunakan Ansible, sama ada anda mempunyai sebarang perkhidmatan untuk diuruskan atau tidak.
AnsibleFest ialah persidangan sehari yang menghimpunkan ratusan pengguna Ansible, pembangun dan rakan kongsi industri. Sertai kami untuk kemas kini produk, perbualan yang memberi inspirasi, penyelaman mendalam teknikal, demo langsung dan rangkaian sepanjang hari.
Atas ialah kandungan terperinci Gunakan Ansible untuk mengautomasikan penggunaan aplikasi tanpa pelayan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Perbezaan utama antara CentOS dan Ubuntu adalah: asal (CentOS berasal dari Red Hat, untuk perusahaan; Ubuntu berasal dari Debian, untuk individu), pengurusan pakej (CentOS menggunakan yum, yang memberi tumpuan kepada kestabilan; Ubuntu menggunakan APT, untuk kekerapan yang tinggi) Pelbagai tutorial dan dokumen), kegunaan (CentOS berat sebelah ke arah pelayan, Ubuntu sesuai untuk pelayan dan desktop), perbezaan lain termasuk kesederhanaan pemasangan (CentOS adalah nipis)

Langkah Pemasangan CentOS: Muat turun Imej ISO dan Burn Bootable Media; boot dan pilih sumber pemasangan; Pilih susun atur bahasa dan papan kekunci; Konfigurasikan rangkaian; memisahkan cakera keras; Tetapkan jam sistem; Buat pengguna root; pilih pakej perisian; Mulakan pemasangan; Mulakan semula dan boot dari cakera keras selepas pemasangan selesai.

CentOS akan ditutup pada tahun 2024 kerana pengedaran hulu, RHEL 8, telah ditutup. Penutupan ini akan menjejaskan sistem CentOS 8, menghalangnya daripada terus menerima kemas kini. Pengguna harus merancang untuk penghijrahan, dan pilihan yang disyorkan termasuk CentOS Stream, Almalinux, dan Rocky Linux untuk memastikan sistem selamat dan stabil.

Dasar sandaran dan pemulihan Gitlab di bawah sistem CentOS untuk memastikan keselamatan data dan pemulihan, Gitlab pada CentOS menyediakan pelbagai kaedah sandaran. Artikel ini akan memperkenalkan beberapa kaedah sandaran biasa, parameter konfigurasi dan proses pemulihan secara terperinci untuk membantu anda menubuhkan strategi sandaran dan pemulihan GitLab lengkap. 1. Backup Manual Gunakan Gitlab-Rakegitlab: Backup: Buat Perintah untuk Melaksanakan Backup Manual. Perintah ini menyokong maklumat utama seperti repositori Gitlab, pangkalan data, pengguna, kumpulan pengguna, kunci, dan kebenaran. Fail sandaran lalai disimpan dalam direktori/var/opt/gitlab/sandaran. Anda boleh mengubah suai /etc /gitlab

Docker menggunakan ciri -ciri kernel Linux untuk menyediakan persekitaran berjalan yang cekap dan terpencil. Prinsip kerjanya adalah seperti berikut: 1. Cermin digunakan sebagai templat baca sahaja, yang mengandungi semua yang anda perlukan untuk menjalankan aplikasi; 2. Sistem Fail Kesatuan (Unionfs) menyusun pelbagai sistem fail, hanya menyimpan perbezaan, menjimatkan ruang dan mempercepatkan; 3. Daemon menguruskan cermin dan bekas, dan pelanggan menggunakannya untuk interaksi; 4. Ruang nama dan cgroups melaksanakan pengasingan kontena dan batasan sumber; 5. Pelbagai mod rangkaian menyokong interkoneksi kontena. Hanya dengan memahami konsep -konsep teras ini, anda boleh menggunakan Docker dengan lebih baik.

Centos Hard Disk Mount dibahagikan kepada langkah -langkah berikut: Tentukan nama peranti cakera keras (/dev/sdx); Buat titik gunung (disyorkan untuk menggunakan /mnt /newdisk); laksanakan perintah gunung (mount /dev /sdx1 /mnt /newdisk); Edit fail /etc /fstab untuk menambah konfigurasi gunung tetap; Gunakan perintah UMount untuk menyahpasang peranti untuk memastikan bahawa tiada proses menggunakan peranti.

CentOS telah dihentikan, alternatif termasuk: 1. Rocky Linux (keserasian terbaik); 2. Almalinux (serasi dengan CentOS); 3. Ubuntu Server (Konfigurasi diperlukan); 4. Red Hat Enterprise Linux (versi komersial, lesen berbayar); 5. Oracle Linux (serasi dengan CentOS dan RHEL). Apabila berhijrah, pertimbangan adalah: keserasian, ketersediaan, sokongan, kos, dan sokongan komuniti.

Bagaimana cara menggunakan desktop Docker? Docktop Docktop adalah alat untuk menjalankan bekas Docker pada mesin tempatan. Langkah -langkah untuk digunakan termasuk: 1. Pasang desktop Docker; 2. Mulakan desktop Docker; 3. Buat imej Docker (menggunakan Dockerfile); 4. Membina imej Docker (menggunakan Docker Build); 5. Jalankan bekas Docker (menggunakan Docker Run).
