Pembuatan kode untuk Ansible

 Diagram alur dengan berbagai bentuk dan simbol, termasuk gelembung ucapan berwarna biru, tanda tanya, dan tanda centang
Pembuatan kode untuk Ansible

IBM® watsonx Code Assistant (WCA) untuk Red Hat Ansible Lightspeed (RHAL) mendemistifikasi proses pembuatan pedoman Ansible melalui rekomendasi konten yang didukung AI generatif. Dibangun untuk mempercepat Otomatisasi TI, WCA untuk RHAL memberikan rekomendasi konten yang mematuhi praktik terkemuka, mengurangi kesalahan dan meningkatkan konsistensi tugas, peran, dan pedoman Ansible. WCA untuk RHAL juga dapat menghasilkan konten menggunakan permintaan bahasa alami yang ditulis dalam teks bahasa Inggris biasa, membantu untuk menskalakan dan memperluas akses ke otomatisasi dalam perusahaan.

WCA untuk RHAL menggunakan Model Bahasa Besar (LLM) IBM® Granite yang dilatih pada kumpulan data yang luas dari pedoman Ansible. LLM dapat disetel menggunakan data perusahaan sendiri untuk memahami nuansa sintaks dan struktur otomatisasi. Pengguna dapat menerima saran apa adanya atau menyempurnakan rekomendasi konten agar sesuai dengan kebutuhan mereka secara tepat, sehingga semakin mengurangi time-to-value dalam otomatisasi dan mempercepat siklus pengembangan melalui rekomendasi konten yang dihasilkan AI.

 

Ikhtisar Solusi

IBM® watsonx Code Assistant (WCA) untuk Red Hat Ansible Lightspeed (RHAL) mendemistifikasi proses pembuatan playbook Ansible melalui generasi
Tinjauan umum dari solusi Pembuatan Kode Ansible yang menunjukkan penempatan komponen utama dan interkoneksi mereka.

WCA untuk RHAL terdiri atas komponen-komponen berikut (ditunjukkan pada diagram di atas):

  1. Ansible Playbook berisi kode yang diperlukan untuk menjalankan Otomatisasi pada node dan titik akhir yang dikelola, misalnya, server, kontainer, perangkat jaringan, dan layanan cloud.

     

  2. Playbook Kode Sumber Management (SCM) adalah tempat semua cabang produksi dan pengembangan dari pedoman Ansible dikelola. Meskipun ada banyak solusi SCM yang tersedia, solusi berbasis Git adalah yang paling umum digunakan dan dengan demikian diasumsikan dalam diskusi berikut.

     

  3. Platform Otomatisasi Ansible dari Red Hat mencakup mesin inti Ansible, layanan linting, layanan manajemen penerapan, dan antarmuka pengguna untuk menjalankan dan memecahkan masalah pedoman Ansible. Umumnya, konfigurasi dilakukan agar sistem mengambil pedoman terbaru dari SCM setiap kali ada penggabungan.

     

  4. Red Hat Ansible Lightspeed adalah aplikasi IBM® watsonx.ai yang membaca prompt bahasa alami dan konteks kode dan mengirimkannya ke layanan IBM® watsonx Code Assistant untuk pencocokan model dasar. Ini menghasilkan konten dan mencocokkan informasi audit yang dikirim kembali ke VS Code.

     

  5. IBM® watsonx Code Assistant Service (WCA for RHAL) adalah aplikasi IBM® watsonx.ai yang menerima prompt dari Red Hat Ansible Lightspeed dan melakukan pencocokan terhadap Model Bahasa Besar (LLM). WCA untuk RHAL juga dapat melatih LLM dengan kumpulan data pedoman Ansible tambahan. IBM® watsonx Code Assistant dan Red Hat Ansible Lightspeed bekerja sama untuk memberikan proposal pembuatan konten yang lengkap dan akurat yang mengikuti praktik terkemuka.

     

  6. Model Bahasa Besar (LLM) Kode adalah model dasar untuk pembuatan konten yang didasarkan pada model Granite IBM® untuk Ansible. Ini juga dapat dilatih untuk memasukkan kode pedoman tambahan yang dihasilkan oleh vendor atau oleh pengguna perusahaan.

     

    Cara Penggunaan dan Panduan Langkah demi Langkah

IBM® watsonx Code Assistant (WCA) untuk Red Hat Ansible Lightspeed (RHAL) mendemistifikasi proses pembuatan playbook Ansible melalui generasi Panduan solusi yang menunjukkan aliran komunikasi antar komponen untuk pembuatan kode Ansible baru.

Diagram di atas menggambarkan bagaimana komponen WCA untuk RHAL bekerja sama untuk mengurangi waktu dan meningkatkan konsistensi Ansible playbook.

  1. Pengembang menarik kode Ansible Playbook terbaru dari repositori kode di SCM Playbook dan membukanya di VS Code.

  2. Pengembang menambahkan tugas Ansible dalam bentuk prompt bahasa alami, misalnya, - nama: Instal httpd.conf menggunakan template.

  3. Ekstensi Ansible untuk VS Code mengirimkan permintaan Lightspeed ke IBM® watsonx Code Assistant Service.

  4. IBM® watsonx Code Assistant menghasilkan respons terhadap prompt bahasa alami. Tanggapan didasarkan pada isi LLM-nya serta semua konteks yang dapat diperoleh dari kode lain yang ada, variabel, dan informasi lain dalam file.

  5. IBM® watsonx Code Assistant mengirimkan respons ke prompt bahasa alami dalam bentuk kode Ansible (YAML). Contoh konten yang dihasilkan muncul di bawah ini. ansible.builtin.template:

      src:httpd.conf.j2
      dest:/etc/httpd/conf/httpd.conf
      mode:“0644”
      owner:root
      group:root

  6. Pengembang menerima dan/atau memodifikasi proposal konten buatan AI, melakukan perubahan, dan mendorong komit ke repositori di Playbook SCM.

  7. Proyek Ansible yang dikonfigurasi pada Red Hat Ansible Automation Platform mendeteksi pembaruan pada Playbook SCM, mengunduh kode yang diperbarui, dan menjalankan pedoman yang diperbarui pada titik akhir yang ditunjukkan.

Prasyarat

  • Kode Microsoft Visual Studio untuk macOS atau Linux
  • python3
  • ansible, ansible-lint
  • Ekstensi Ansible untuk Kode VS
  • Platform Otomatisasi Red Hat Ansible
  • Akun RedHat.com atau GitHub.com
  • Koneksi ke IBM® watsonx Code Assistant
  • Microsoft Visual Studio Code untuk Windows
  • Layanan Windows untuk Linux (WSL) versi 2
  • Basis Kontainer Fedora 37, CentOS, atau RHEL 8 untuk WSL
  • python3, ansible, dan ansible-lint seperti di atas
Fitur Unik dari IBM® watsonx Code Assistant
  • Pembuatan Kode: Menyederhanakan proses pembuatan pedoman Ansible dengan menggunakan input bahasa alami dalam deskripsi tugas Ansible.
  • Penegakan Standar Pengodean: Memungkinkan pelatihan konten Ansible yang mengikuti praktik publik dan praktik perusahaan terkemuka, yang pada gilirannya menghasilkan kode yang mengikuti standar tersebut.
  • Peningkatan Produktivitas: Mengintegrasikan rekomendasi kode yang dihasilkan AI langsung ke lingkungan pengembangan terintegrasi (IDE).
Langkah selanjutnya

Diskusikan implementasi pola penerapan hybrid cloud dengan pakar kami.

Kontributor

Al Hamid, Pete Nuwayser, Chris Kirby, Mihai Criveti

Diperbarui: 5 Desember 2023