Menyediakan Fedora CoreOS di Exoscale

Panduan ini menunjukkan cara menyediakan instance Fedora CoreOS (FCOS) baru di Exoscale Cloud Hosting.

Persyaratan

Sebelum menyediakan mesin FCOS, disarankan untuk memiliki file konfigurasi Ignition yang berisi penyesuaian Anda. Jika Anda belum memiliki file tersebut, lihat Membuat File Ignition.

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.

If you do not want to use Ignition to get started, you can make use of the Afterburn support.

Anda juga perlu memiliki akses ke akun Exoscale. Daftar jika Anda belum memilikinya.

Mengunggah citra FCOS sebagai Template Kustom

Exoscale menyediakan template FCOS resmi, tetapi saat ini sudah usang. Untuk saat ini, kami merekomendasikan untuk membuat template Anda sendiri. Pantau perkembangan perbaikan ini di #1166.

Exoscale menyediakan Template Kustom untuk memungkinkan Anda mengunggah citra cloud apa pun. Untuk membuat Template Kustom, Anda harus terlebih dahulu mengunduh dan mengekstrak citranya.

Unduh dan ekstrak citra QCOW2 menggunakan coreos-installer
STREAM="stable"
coreos-installer download -d -s $STREAM -p exoscale -f qcow2.xz

Sebagai alternatif, citra QCOW2 dapat diunduh dari halaman unduhan dan diekstrak secara manual.

Selanjutnya, Anda dapat Mendaftarkan Template Kustom. Ini dapat dilakukan melalui Portal Web atau CLI Exoscale. Keduanya memerlukan citra yang sudah diekstrak dan dapat diakses publik, serta URL dan checksum MD5 yang akan disertakan selama pendaftaran. Salah satu opsi adalah menggunakan penyimpanan objek yang disediakan oleh Exoscale untuk menampung citra tersebut.

Unggah ke Object Storage dan buat Template Kustom
# Set the version and calculate the checksum
FCOS_VERSION='...'
FILE="fedora-coreos-${FCOS_VERSION}-exoscale.x86_64.qcow2"
CHECKSUM=$(md5sum "${FILE}" | cut -d " " -f 1)

# Unggah ke object storage
BUCKET='newbucket'
exo storage mb "sos://${BUCKET}"
exo storage upload --acl public-read "${FILE}" "sos://${BUCKET}/image-import/"

# Buat template menggunakan URL dan CHECKSUM yang telah diberikan
URL=$(exo storage show "sos://${BUCKET}/image-import/${FILE}" --output-template "{{.URL}}")
TEMPLATE="fedora-coreos-${FCOS_VERSION}"
exo compute instance-template register --boot-mode=uefi $TEMPLATE $URL $CHECKSUM

Anda dapat melihat template menggunakan exo compute instance-template show --visibility=private $TEMPLATE.

Menjalankan instance VM

Anda dapat menyediakan instance FCOS menggunakan Portal Web Exoscale atau melalui CLI Exoscale.

Anda perlu menggunakan minimal versi v1.54.0 dari CLI Exoscale.
Jangan gunakan argumen --cloud-init-compress pada CLI. Argumen ini menyebabkan konfigurasi Ignition dikirim dalam bentuk terkompresi ke instance dan Ignition tidak dapat menangani hal tersebut.
Tambahkan kunci SSH Anda
exo compute ssh-key register key-name /path/to/key
Menjalankan instance baru dengan CLI Exoscale
NAME='worker'
TYPE='standard.medium'
DISK='10' # dalam GiB
SSHKEY='key-name'
TEMPLATE=$TEMPLATE # nama template yang telah ditetapkan di atas
exo compute instance create "${NAME}" \
    --disk-size $DISK \
    --ssh-key "${SSHKEY}" \
    --template $TEMPLATE \
    --template-visibility private \
    --cloud-init "path/to/ignition-file.ign"
Jika Anda hanya memerlukan akses SSH dan tidak memerlukan penyesuaian lainnya, Anda tidak perlu menambahkan file Ignition dan dapat menghilangkan argumen --cloud-init.
Anda dapat mengetahui alamat IP yang ditetapkan untuk instance dengan menjalankan exo compute instance show "${NAME}"

Sekarang Anda seharusnya dapat melakukan SSH ke dalam instance menggunakan alamat IP yang terkait.

Contoh Koneksi
ssh core@<ip address>