Menyediakan Fedora CoreOS di DigitalOcean

Panduan ini menjelaskan cara menyediakan node Fedora CoreOS (FCOS) baru di DigitalOcean. Saat ini, citra Fedora CoreOS belum dipublikasikan langsung di DigitalOcean, sehingga Anda perlu mengunduh citra DigitalOcean Fedora CoreOS dan mengunggahnya ke akun DigitalOcean Anda sebagai citra kustom.

Persyaratan

Sebelum menyediakan mesin FCOS, Anda harus memiliki file konfigurasi Ignition yang berisi kustomisasi Anda. Jika belum memilikinya, lihat [Producing an Ignition File](xref:producing-ign.adoc).

Fedora CoreOS memiliki pengguna bawaan bernama core yang dapat digunakan untuk menjelajahi sistem operasi. Jika Anda ingin menggunakannya, selesaikan [konfigurasinya](xref:authentication.adoc) dengan menambahkan, misalnya, kunci SSH.

Jika Anda tidak ingin menggunakan Ignition untuk memulai, Anda dapat memanfaatkan dukungan Afterburn.

Anda juga perlu memiliki akses ke akun DigitalOcean. Contoh berikut menggunakan alat baris perintah doctl dan jq sebagai pemroses JSON di baris perintah.

Membuat citra kustom DigitalOcean

Fedora CoreOS dirancang untuk diperbarui secara otomatis, dengan jadwal pembaruan yang berbeda untuk setiap stream.

  1. Setelah memilih aliran (stream) yang relevan, temukan citra DigitalOcean yang sesuai di halaman unduhan dan salin URL tautan unduhannya.

  2. Buat citra kustom:

    Contoh mengunggah FCOS sebagai citra kustom di DigitalOcean
    doctl compute image create my-fcos-image --region sfo2 --image-url <download-url>
    # Tunggu hingga pembuatan citra selesai
    declare -i count=0
    while ! doctl compute image list-user --output json | jq -c '.[] | select(.name=="my-fcos-image")' | grep available; do sleep 5; ((count++)); echo "Menunggu... ($count)"; done

Perintah di atas akan mengunggah citra dan menunggu hingga siap digunakan. Proses ini bisa memakan waktu lama—dalam pengujian kami bisa mencapai hingga 15 menit. Waktu tunggu tergantung pada kecepatan unggah dan beban platform.

Menjalankan droplet

  1. Jika Anda belum memiliki kunci SSH yang diunggah ke DigitalOcean, unggah terlebih dahulu:

    Contoh mengunggah kunci SSH ke DigitalOcean
    doctl compute ssh-key create my-key --public-key "$(cat ~/.ssh/id_rsa.pub)"
  2. Jalankan droplet. Konfigurasi Ignition Anda dapat diteruskan ke VM sebagai user data, atau Anda dapat melewatinya jika hanya ingin akses SSH. Cara ini memudahkan Anda untuk mencoba FCOS tanpa terlebih dahulu membuat konfigurasi Ignition.

    Saat membuat droplet Fedora CoreOS di DigitalOcean, Anda harus menetapkan kunci SSH untuk droplet, bahkan jika Anda berencana menambahkan kunci SSH melalui Ignition.

    Contoh menjalankan FCOS di DigitalOcean dengan file konfigurasi Ignition
    image_id=$(doctl compute image list-user | grep my-fcos-image | cut -f1 -d ' ')
    key_id=$(doctl compute ssh-key list | grep my-key | cut -f1 -d ' ')
    doctl compute droplet create my-fcos-droplet --image "${image_id}" --region sfo2 --size s-2vcpu-2gb --user-data-file <ignition-config-path> --ssh-keys "${key_id}" --wait
    Meskipun dokumentasi DigitalOcean menyebutkan cloud-init dan skrip, FCOS tidak mendukung cloud-init ataupun eksekusi skrip melalui user data. FCOS hanya menerima file konfigurasi Ignition.
  3. Sekarang Anda seharusnya dapat melakukan SSH ke dalam instance menggunakan alamat IP yang terkait.

    Contoh Koneksi
    ssh core@<ip address>