Virtual maşını ilk yükləmədə cloud-init ilə tənzimləyin
Virtual maşın yaradarkən onun ilk yüklənməsində paketlər quraşdırmaq, fayllar yazmaq və əmrlər icra etmək üçün cloud-init istifadəçi məlumatlarını ötürün.
İstifadəçi məlumatları (user data) virtual maşın (instance) ilk dəfə yüklənəndə cloud-init-in icra etdiyi konfiqurasiya və ya skriptdir. Onlardan virtual maşına daxil olmadan paketlər quraşdırmaq, fayllar yazmaq və əmrlər icra etmək üçün istifadə edin.
Başlamazdan əvvəl
- İstifadə etdiyiniz obraz (image) cloud-init işlətməlidir. Onsuz virtual maşın nə istifadəçi məlumatlarınızı, nə də SSH açarlarını alır.
- İstifadəçi məlumatlarınızı bu formatlardan birində mətn kimi hazırlayın:
- İlk sətri
#cloud-configolan cloud-config sənədi. - İlk sətri
#!ilə başlayan shell skripti, məsələn,#!/bin/bash.
- İlk sətri
- Əvvəlcədən planlaşdırın: istifadəçi məlumatlarını yalnız virtual maşın yaradarkən təyin edə bilərsiniz və platforma mövcud virtual maşında onları dəyişməkdən imtina edir. Başqa istifadəçi məlumatlarından istifadə etmək üçün yeni virtual maşın yaradın.
İstifadəçi məlumatlarını əlavə edin
Yaratma ustadında Advanced addımına keçin.
User data (cloud-init) sahəsinə istifadəçi məlumatlarınızı əlavə edin. Əvəzində onları mətn faylından yükləmək üçün Load from file düyməsini seçin.
Ustadı tamamlayın və virtual maşını yaradın. Virtual maşın yaradın səhifəsinə baxın.
- Adi mətn əlavə edin. Platforma istifadəçi məlumatlarını sizin üçün Base64 ilə kodlaşdırır.
- Load from file sahənin məzmununu faylın mətni ilə əvəz edir və siz onu yenə də redaktə edə bilərsiniz. Mətn olmayan fayl, məsələn, şəkil və ya proqram, rədd edilir.
- Ustad istifadəçi məlumatlarını öz qaralamasında saxlamır. Ustadı yeniləsəniz, istifadəçi məlumatlarını yenidən daxil edin.
- Yoxlama addımındakı REST ekvivalenti istifadəçi məlumatlarınızı adi mətn kimi ehtiva edir. İstifadəçi məlumatlarınızda sirlər (secret) varsa, bunu nəzərə alın.
Nümunələr
Bu cloud-config sənədi paket indeksini yeniləyir, nginx-i quraşdırır və xidmətin işlədiyinə əmin olur:
#cloud-config
package_update: true
packages:
- nginx
runcmd:
- systemctl enable --now nginxBu cloud-config sənədi konfiqurasiya faylı yazır:
#cloud-config
write_files:
- path: /etc/myapp/config.json
permissions: "0644"
content: |
{"environment": "production"}Bu shell skripti günün mesajını yazır:
#!/bin/bash
echo "Provisioned on $(date -u)" > /etc/motdBütün cloud-config seçimləri üçün cloud-init sənədlərinə baxın.
İstifadəçi məlumatları və giriş parametrləri
İstifadəçi məlumatlarınızda SSH açarlarının və ya administrator hesabının olmasına ehtiyac yoxdur. Platforma onları yaratma ustadında seçdiklərinizə əsasən qurur.
Nəticəni yoxlayın
Virtual maşına daxil olun. Virtual maşına qoşulun səhifəsinə baxın.
cloud-init status --long əmrini icra edin: o, cloud-init-in işini bitirib-bitirmədiyini və xəta bildirib-bildirmədiyini göstərir.
Daxil ola bilmirsinizsə, yükləmə çıxışını nəzərdən keçirmək üçün virtual maşının Connect tab-vərəqəsində serial konsol jurnalını endirin. Serial konsol jurnalını endirin bölməsinə baxın.