Builds a Proxmox VE image that MAAS can deploy to bare metal, plus first-boot
automation that configures the node and joins it to a Proxmox cluster with no
manual steps.
The image starts from the official Debian cloud image and installs proxmox-ve
on top of it, rather than capturing a raw disk from the Proxmox ISO. That keeps
MAAS in control of partitioning, networking, SSH keys and cloud-init, and makes
moving between Proxmox releases a variable change instead of a rewrite.
Contents:
* Makefile driving the whole flow: build, verify, preseed, upload
* customize-proxmox.sh, run inside the Packer build VM, which layers Proxmox
onto the Debian cloud image and resets the pmxcfs node identity so one image
can produce many nodes
* pve-maas-init, a first-boot state machine covering /etc/hosts, node-unique
identifiers, the root password, vmbr0 conversion, cluster create/join and
the local-lvm thin pool; each stage is resumable across reboots
* curtin-hooks, which stops curtin installing a kernel over APT and pins
interface names by MAC so they match what MAAS recorded at commissioning
* a MAAS curtin preseed template and cloud-init examples
* deploy-cluster.sh, which builds a whole cluster through the MAAS API
* verify-image.sh, 22 static checks on the produced tarball
Cluster identity lives entirely in deploy-time cloud-init user-data, so a single
image and preseed can build any number of independent clusters.
Verified end to end against MAAS 3.7.2: proxmox-ve 9.2.0 / pve-manager 9.2.11 /
kernel 7.0.14-15-pve, deployed to two machines that formed a quorate cluster with
local-lvm on both, with no manual intervention.
The README documents four failure modes found along the way that all fail
silently: curtin rejecting "kernel: null", pvenetcommit overwriting the network
configuration at boot, interface renaming leaving the link down, and a systemd
ordering cycle that made systemd delete the service's start job.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
20 KiB
Not: Kanonik dokumantasyon README.md (Ingilizce). Bu Turkce surum geride kalmis olabilir.
maas-proxmox
MAAS ile bare-metal sunuculara deploy edilebilen Proxmox VE imajlari uretir.
Deploy edilen dugum ilk acilista kendini yapilandirir: vmbr0 koprusunu kurar,
local-lvm thin havuzunu olusturur ve istenirse bir Proxmox kumesine otomatik katilir.
Varsayilan hedef: Proxmox VE 9.x (Debian 13 "trixie" tabanli).
Nasil calisiyor?
Debian 13 cloud image (qcow2)
│
├─ packer-maas / debian sablonu (QEMU + KVM)
│ ├─ cloud-init, netplan, curtin uyumlulugu [upstream]
│ ├─ disk/cpu/ram yamasi (4G -> 16G) [bu proje]
│ └─ customize-proxmox.sh [bu proje]
│ ├─ Proxmox APT deposu + anahtarlik
│ ├─ proxmox-default-kernel + proxmox-ve
│ ├─ Debian cekirdegi / os-prober kaldirilir
│ ├─ pmxcfs dugum kimligi sifirlanir
│ └─ overlay: pve-maas-init + systemd unit + curtin-hooks
│
└─ proxmox-ve-9.tar.gz ──► maas boot-resources create
│
▼
MAAS deploy (curtin)
│
▼
pve-maas-init.service (ilk acilis)
hosts → identity → rootpw →
network → cluster → storage
Neden Proxmox ISO'su degil de Debian uzerine kurulum? MAAS imaji disk bolumlemesini,
ag yapilandirmasini, kullanici/SSH anahtarlarini ve cloud-init'i curtin ile kendisi
yonetir. Debian tabanli imaj bu akisa dogal olarak uyar; ISO'dan yakalanan ham disk
imaji (dd.gz) ise MAAS'in disk duzenini tamamen devre disi birakir.
Dogrulanmis durum
Bu depo canli bir ortamda ucdan uca test edildi:
| Imaj | proxmox-ve 9.2.0 / pve-manager 9.2.11 / kernel 7.0.14-15-pve |
| MAAS | 3.7.2 (snap), Ubuntu 24.04 region+rack |
| Deploy | custom/proxmox-ve-9, amd64/generic, LVM duzeni (kok 12GiB) |
| Sonuc | 2 dugumlu kume, Quorate: Yes, her iki dugumde local-lvm thin havuzu |
| Otomasyon | vmbr0 donusumu, root parolasi, dugum adi, kume olusturma + katilma - hepsi elle mudahalesiz |
Gereksinimler
Build host (imajin derlendigi makine):
- Ubuntu 22.04+ (24.04 LTS onerilir), x86_64
- Nested virtualization / KVM erisimi — VM ise CPU tipi
hostolmali - 4+ vCPU, 8+ GB RAM, 25+ GB bos disk
sudoyetkisi
Deploy tarafi:
- MAAS 3.2+ (custom image destegi)
- Curtin 21.0+
- Region controller uzerinde bu depodaki curtin preseed dosyasi (asagida)
Hizli baslangic
# 1) Build host bagimliliklari (packer, qemu, nbdkit, ovmf, ...)
sudo ./scripts/install-deps.sh
# 2) Imaji derle (~20-40 dk, ag hizina bagli)
sudo make image
# -> build/proxmox-ve-9.tar.gz
# 3) MAAS curtin preseed dosyasini uret
make preseed
# -> build/curtin_userdata_custom_amd64_generic_proxmox-ve-9
# 4) Preseed'i MAAS region controller'a kopyala
sudo make install-preseed
# (varsayilan: /var/snap/maas/current/preseeds/ ; deb kurulumunda
# MAAS_PRESEED_DIR=/etc/maas/preseeds kullanin)
# 5) Imaji MAAS'a yukle
make upload MAAS_PROFILE=admin
Ardindan MAAS arayuzunde makineyi deploy ederken OS olarak Custom → Proxmox VE 9 secin, ya da CLI ile:
maas $PROFILE machine deploy $SYSTEM_ID \
osystem=custom distro_series=proxmox-ve-9 \
user_data="$(base64 -w0 maas/examples/01-first-node.yaml)"
Makefile degiskenleri
| Degisken | Varsayilan | Aciklama |
|---|---|---|
PVE_VERSION |
9 |
Proxmox VE ana surumu (imaj adinda kullanilir) |
DEBIAN_SERIES |
trixie |
PVE'nin dayandigi Debian kod adi |
DEBIAN_VERSION |
13 |
Debian ana surum numarasi |
PVE_REPO |
pve-no-subscription |
pve-no-subscription / pve-enterprise / pve-test |
PVE_EXTRA_PACKAGES |
ifupdown2 open-iscsi chrony ... |
Imaja eklenecek ek paketler |
IMAGE_NAME |
proxmox-ve-9 |
MAAS'taki custom/<ad> ve preseed dosya adi |
ARCH / BOOT |
amd64 / uefi |
Mimari ve onyukleme modu |
DISK_SIZE |
16G |
Build VM disk boyutu (upstream sablondaki 4G yetersiz) |
BUILD_CPUS / BUILD_MEM |
4 / 4096 |
Build VM kaynaklari |
DEBIAN_IMAGE_CHANNEL |
stable |
stable sabit URL kullanir (packer onbellegi isabet eder); daily upstream varsayilani |
GZIP_LEVEL |
6 |
Tarball sikistirma seviyesi (upstream 9; 6 belirgin hizli, imaj ~%2-3 buyuk) |
APT_PROXY |
(bos) | Yerel APT onbellegi, or. http://10.0.2.2:3142 - bkz. make deps-cache |
PM_REF |
main |
Kullanilacak canonical/packer-maas surumu (dal, etiket ya da commit SHA) |
MAAS_PROFILE |
admin |
maas CLI profil adi |
MAAS_PRESEED_DIR |
/var/snap/maas/current/preseeds |
Preseed dizini |
TIMEOUT |
3h |
Packer build zaman asimi |
Derlemeyi hizlandirma
Sure agirlikli olarak VM icindeki paket kurulumunda geciyor. Uygulanan optimizasyonlar (varsayilan olarak acik):
- eatmydata - dpkg'nin her paket icin yaptigi
fsynccagrilari devre disi. Imaj derlemede guvenli, cunku build VM'inin diski zaten atilabilir. - initramfs erteleme -
update-initramfskurulum boyunca diverte edilir ve en sonda yalnizca bir kez calistirilir (cekirdek + firmware + dkms tetikleyicileri normalde defalarca calistiriyor). - Kararli cloud image - sabit URL sayesinde packer'in onbellegi isabet eder;
dailyher gun degistigi icin her derlemede ~350MB yeniden inerdi. GZIP_LEVEL=6- upstream--best(9) kullaniyor; 6 ilepigzcok cekirdekli calisip belirgin hizlaniyor.
Tekrarlanan derlemeler icin en buyuk ek kazanc yerel APT onbellegi:
sudo make deps-cache # apt-cacher-ng kurar
sudo make image APT_PROXY=http://10.0.2.2:3142 # ~700MB indirme onbellekten
10.0.2.2, packer'in user-mode aginda build host'un adresidir. Proxy verildiginde
Debian depolari https yerine http kullanacak sekilde yeniden yazilir (onbellek
CONNECT tunelini saklayamaz); paket imzalari yine dogrulandigi icin guvenlik
kaybi yoktur.
Yeni bir Proxmox surumune gecmek
Once ne oldugunu gorun - derleme yapmadan, saniyeler icinde:
make check-upstream
Depodaki guncel proxmox-ve / pve-manager surumlerini, elinizdeki imajin
kunyesiyle (/etc/pve-maas/image-info) yan yana gosterir.
Durum 1 - ayni Debian tabani icinde surum yukseltmesi (9.2 -> 9.3 -> ...)
Hicbir sey degistirmeniz gerekmez. Imajda surum sabitlemesi yok; her derleme
depodaki en guncel proxmox-ve paketini alir:
sudo make image && make verify && make upload
Imaj adi (proxmox-ve-9) ve preseed dosyasi ayni kaldigi icin MAAS'taki kayit
yerinde guncellenir, preseed'e dokunmaniza gerek kalmaz.
Durum 2 - Debian tabanini degistiren ana surum (or. PVE 10 / Debian 14)
Bu otomatik degildir; bu depodaki degiskenleri degistirmek tek basina yetmez.
Sebep: temel aldigimiz canonical/packer-maas sablonunun icinde Debian surumune
ozel sabit kosullar var -
debian/scripts/networking.sh: if [ ${DEBIAN_VERSION} == '12' ] || [ ${DEBIAN_VERSION} == '13' ]
debian/scripts/setup-boot.sh: if [ ${DEBIAN_VERSION} == '13' ]
Bilinmeyen bir surumde bu kosullar else dalina duser ve 2020 tarihli bir
cloud-init paketi kurulur; imaj sessizce bozulur. Bu yuzden ana surum gecisi
upstream'in yeni Debian'i desteklemesini bekler. Sirasi:
canonical/packer-maasyeni Debian'i destekliyor mu? (debian/scripts/icindekiDEBIAN_VERSIONkosullarina bakin)- Proxmox anahtarligi yayinlanmis mi?
https://enterprise.proxmox.com/debian/proxmox-archive-keyring-<suite>.gpg - Depoda paketler var mi?
curl -s http://download.proxmox.com/debian/pve/dists/<suite>/Release | grep Components - Sonra:
sudo make image PVE_VERSION=10 DEBIAN_SERIES=forky DEBIAN_VERSION=14 PM_REF=main
make preseed PVE_VERSION=10
Yeni preseed dosyasinin adi da degisir (..._proxmox-ve-10) - MAAS'a kurmayi
unutmayin.
Upstream surum sabitlemesi
PM_REF, test edilmis bir canonical/packer-maas commit'ine sabitlenmistir.
main birakmak, upstream'de yapilan bir degisikligin derlemenizi haber vermeden
bozmasi anlamina gelir. Ileri tasirken PM_REF=main ile derleyip deploy ederek
test edin, sonra yeni SHA'yi Makefile'a yazin.
Dugumun ilk acilis davranisi
Imajda pve-maas-init.service etkin gelir. Servis su asamalari sirayla, her birini
yalnizca bir kez calistirir (/var/lib/pve-maas/<asama>.done):
| Asama | Ne yapar |
|---|---|
hosts |
/etc/hosts icinde <yonetim-ip> <fqdn> <hostname> satirini kurar (pvecm bunu sart kosar), postfix myhostname degerini duzeltir |
identity |
Dugume ozel kimlikleri yeniden uretir (iSCSI IQN) |
rootpw |
root@pam parolasini ayarlar |
network |
MAAS'in yapilandirdigi arayuzu vmbr0 koprusune donusturur, cloud-init/netplan ag yapilandirmasini devre disi birakir |
cluster |
Kume olusturur (create) veya mevcut kumeye katilir (join) |
storage |
VG'deki bos alanda LVM-thin havuzu acar ve local-lvm olarak tanimlar |
Bir asama basarisiz olursa servis hata verir ve sonraki acilista kaldigi yerden devam eder. Durum:
systemctl status pve-maas-init
journalctl -u pve-maas-init -b
ls -l /var/lib/pve-maas/
Yapilandirma /etc/pve-maas/pve-maas.conf (varsayilanlar) ve
/etc/pve-maas/conf.d/*.conf (cloud-init ile yazilan, ezici degerler) dosyalarindan
okunur. Tum secenekler icin overlay/etc/pve-maas/pve-maas.conf.
Proxmox + MAAS birlesiminin tuzaklari
Bu imaj asagidaki uc sorunu bilerek cozer. Kendi turevinizi yazacaksaniz bunlari bozmayin:
1. systemd siralama dongusu. pve-maas-init.service icin
After=cloud-final.service + WantedBy=multi-user.target yazmak bu imajda
donguye yol aciyor ve systemd dongoyu kirmak icin bizim servisimizi siliyor:
multi-user.target: Found ordering cycle on pve-maas-init.service/start
Job pve-maas-init.service/start deleted to break ordering cycle
Servis sessizce hic calismaz. Cozum: unit'te cloud-init siralamasi yok;
script kendi icinde cloud-init status --wait ile bekliyor.
2. pvenetcommit.service. Proxmox ag degisikliklerini once
/etc/network/interfaces.new dosyasina yazar; pvenetcommit her acilista bu
dosyayi interfaces uzerine tasir. Build sirasinda olusan bir .new
dosyasi imajda kalirsa dugumun ilk acilisinda yapilandirmayi ezer. Hem imajda
hem de ag donusumunden sonra siliniyor.
3. Arayuz adi uyusmazligi. MAAS commissioning'i Ubuntu ephemeral ortaminda
yapar ve karti orada gordugu adla kaydeder (or. enp6s18). Deploy edilen
Debian 13 / Proxmox ise udev'in farkli isimlendirme semasi yuzunden ayni karta
ens18 diyebilir. Bu durumda cloud-init acilista yeniden adlandirmayi dener,
[busy] hatasi alir ve arayuzu kapali birakir - dugum agini tamamen
kaybeder:
Failed to rename devices: [busy] Error renaming mac=... from ens18 to enp6s18
curtin-hooks, MAAS'in ag yapilandirmasindaki MAC -> ad eslemesini
/etc/systemd/network/10-maas-<ad>.link olarak yazar; udev karti en bastan
dogru adla olusturur ve yeniden adlandirma gerekmez.
Ilk acilista ag sahipligi
Imaj networking.service'i (ifupdown2) devre disi ve /etc/network/interfaces
dosyasini yalnizca lo icerecek sekilde gonderir. Ilk acilista agi tamamen MAAS
yonetir (curtin'in yazdigi netplan + systemd-networkd). pve-maas-init ag asamasi
vmbr0 yapilandirmasini yazdiktan sonra netplan/networkd'yi devre disi birakip
networking.service'i kendisi etkinlestirir.
Bu sirala onemli: ifupdown2 etkin gelirse, imajdan gelen eski arayuz tanimiyla acilista gercek arayuzu kapatir ve dugum daha otomasyon calismadan agini kaybeder.
Ag donusumu
PVE_NET_APPLY=reboot (varsayilan) ile dugum, cloud-init MAAS'a "deploy tamamlandi"
sinyalini gonderdikten sonra bir kez yeniden baslar ve vmbr0 ile acilir.
Yeniden baslatma istemiyorsaniz PVE_NET_APPLY=reload ifupdown2'nin ifreload -a
komutunu kullanir.
Bond/VLAN gibi karmasik topolojilerde PVE_NET_MANAGE=false yapip
/etc/network/interfaces dosyasini cloud-init ile kendiniz yazin —
bkz. maas/examples/04-advanced-network.yaml.
Depolama
MAAS'in disk duzeni bir LVM VG birakiyorsa (MAAS'ta LVM storage layout secip
kok LV'yi kucultun), artan alanda data adinda bir thin havuz acilir ve local-lvm
olarak tanimlanir. Ayri bir disk kullanmak icin:
PVE_THINPOOL_DISK=/dev/sdb
PVE_THINPOOL_VG=pve
Bos alan PVE_THINPOOL_MIN_GB (varsayilan 16 GiB) altindaysa asama sessizce atlanir;
dugum yalnizca dizin tabanli local deposuyla calisir.
Kume otomasyonu
pvecm add parolayi etkilesimli sorar, bu yuzden ayni isi yapan API ucu kullanilir:
pvesh create /cluster/config/join --hostname <peer> --password <pw> --fingerprint <fp>
Ilk dugum (01-first-node.yaml):
PVE_CLUSTER_MODE=create
PVE_CLUSTER_NAME=pve-cluster-01
Katilan dugumler (02-join-node.yaml):
PVE_CLUSTER_MODE=join
PVE_CLUSTER_PEER=192.0.2.11
PVE_CLUSTER_PEER_PASSWORD='...'
PVE_CLUSTER_FINGERPRINT='AA:BB:...' # onerilir
Katilan dugum, hedef dugumun 8006 portu acilana kadar bekler
(PVE_CLUSTER_WAIT, varsayilan 900 s) ve basarisiz denemeleri tekrarlar
(PVE_CLUSTER_RETRIES). Katilim bittikten sonra conf.d icindeki parolalar
temizlenir (PVE_CLUSTER_WIPE_SECRETS=true).
Birden fazla bagimsiz kume
Imaj tamamen jeneriktir - kume kimligi yalnizca deploy anindaki cloud-init user-data'sindan gelir. Ayni imaj ve ayni preseed ile istediginiz kadar ayri kume kurabilirsiniz; yeniden derleme gerekmez.
Elle yapmak zahmetli oldugu icin (scripts/deploy-cluster.sh)
tum akisi otomatiklestirir: ilk dugumu create ile deploy eder, ayaga kalkmasini
bekler, sertifika parmak izini okur ve kalan dugumleri o parmak iziyle join
modunda deploy eder.
MAAS region controller uzerinde calistirin (maas CLI profili ve dugumlerin
8006 portuna erisim gerekir):
# Once ne uretecegini gorun - hicbir sey deploy etmez
./deploy-cluster.sh --name pve-prod --nodes pve1,pve2,pve3 --dry-run
# Gercek kurulum
./deploy-cluster.sh --name pve-prod --nodes pve1,pve2,pve3
# Ikinci, tamamen bagimsiz kume - ayni imaj, ayni preseed
./deploy-cluster.sh --name pve-dr --nodes dr1,dr2,dr3
Listedeki ilk dugum kumeyi olusturur, digerleri ona katilir. Her kume kendi root parolasini alir (vermezseniz uretilir ve ekrana yazilir).
Ayri bir corosync agi kullaniyorsaniz:
./deploy-cluster.sh --name pve-prod --nodes pve1,pve2,pve3 --link0-prefix 10.10.20.
Her dugumun o onekle baslayan adresi MAAS'tan bulunup PVE_CLUSTER_LINK0 olarak
yazilir. (Bu yol henuz canli test edilmedi.)
Cok dugumlu kumelerde --serial ile katilanlar teker teker deploy edilir.
Varsayilan paralel moddur; es zamanli katilim denemeleri olursa pve-maas-init
zaten 5 kez, 30 saniye arayla tekrar dener.
Kumeleri MAAS'ta ayirmak icin etiket kullanmak ise yarar:
maas $PROFILE tag create name=pve-prod
maas $PROFILE tag update-nodes pve-prod add=$SYSTEM_ID
maas $PROFILE machines read tags=pve-prod | jq -r '.[].hostname'
Guvenlik notlari
- Hedef dugumun root@pam parolasi duz metin olmak zorundadir — API dogrulamasi hash kabul etmez. Bu deger cloud-init user-data icinde MAAS'ta saklanir; MAAS user-data'ya erisimi olan herkes gorebilir. Kisa omurlu bir parola kullanip kurulumdan sonra degistirmeyi dusunun.
PVE_CLUSTER_FINGERPRINTvermezseniz parmak izi hedef dugumden okunur (TOFU) — ilk baglantida MITM'e aciktir. Uretimde parmak izini onceden verin.- Dugumun kendi
rootparolasi icinPVE_ROOT_PASSWORD_HASHkullanin (openssl passwd -6), duz metinPVE_ROOT_PASSWORDyerine. PVE_ROOT_PASSWORD*hic verilmezse root parolasi kilitli kalir: web arayuzuneroot@pamile girilemez ve bu dugum baska bir dugumun katilim hedefi olamaz.
Dizin yapisi
Makefile derleme / preseed / yukleme hedefleri
scripts/install-deps.sh build host bagimliliklari
scripts/customize-proxmox.sh.in build VM icinde calisan Proxmox kurulum sablonu
scripts/deploy-cluster.sh MAAS uzerinden komple bir kume kurar (cok kumeli senaryolar)
scripts/verify-image.sh uretilen imajin icerik dogrulamasi
overlay/ imaja kopyalanan dosyalar
usr/local/sbin/pve-maas-init ilk acilis durum makinesi
etc/pve-maas/pve-maas.conf varsayilan yapilandirma (tum secenekler)
etc/systemd/system/... pve-maas-init.service
curtin/curtin-hooks curtin'in apt ile cekirdek kurmasini engeller
maas/curtin_userdata_custom.in MAAS curtin preseed sablonu
maas/examples/*.yaml cloud-init user-data ornekleri
build/ uretilen dosyalar (git'e girmez)
packer-maas uzerindeki degisiklikler
make image, build/packer-maas altina klonlanan upstream sablonda tek bir yama
yapar: debian-cloudimg.pkr.hcl icindeki disk_size (4G -> DISK_SIZE), cpus ve
memory degerleri. Upstream 4G ile gelir; Debian cloud image (~3G) uzerine Proxmox VE
kurulumu bu alana sigmaz. Uretilen .tar.gz yalnizca kullanilan dosyalari icerdigi
icin buyuk sanal disk son imaji buyutmez.
Yama her make image calistiginda git checkout -f sonrasi yeniden uygulanir;
upstream'i PM_REF ile bir commit SHA'ya sabitleyerek surprizleri onleyebilirsiniz.
Sorun giderme
Deploy "Failed deployment" ile bitiyor
Preseed dosyasi dogru adla region controller'da mi? Ad, yuklenen imajin adiyla
birebir eslesmelidir: curtin_userdata_custom_<arch>_<subarch>_<image-name>.
make preseed ciktisindaki dosya adini kullanin.
Deploy tamam ama web arayuzune girilemiyor
root@pam parolasi ayarlandi mi? journalctl -u pve-maas-init -b | grep rootpw.
Ayrica vmbr0 ayaga kalkmis mi: ip -br addr.
Dugum kumeye katilmadi
journalctl -u pve-maas-init -b ciktisina bakin. Sik nedenler: hedef dugum 8006'da
erisilemiyor, root parolasi yanlis, parmak izi eslesmiyor, ya da hedef dugumun
/etc/hosts kaydi eksik oldugu icin pvecm orada hata veriyor.
Servisi elle tekrar calistirmak icin:
rm -f /var/lib/pve-maas/cluster.done /var/lib/pve-maas/complete
systemctl start pve-maas-init
Deploy "Deployed" diyor ama dugume hic erisilemiyor
Dugumun konsoluna bakin (Proxmox'ta qm terminal <vmid>). Login istemi geliyorsa
sistem acilmis, sorun agda demektir. Kurtarma modunda diski inceleyin:
maas $PROFILE machine rescue-mode $SYSTEM_ID
# ephemeral ortama SSH ile baglanip:
mount /dev/vgroot/lvroot /mnt/t
cat /mnt/t/etc/network/interfaces # vmbr0 yazilmis mi?
ls -l /mnt/t/var/lib/pve-maas/ # hangi asamalar tamamlandi?
cat /mnt/t/var/log/cloud-init-output.log # cloud-init user-data'yi aldi mi?
journalctl -D /mnt/t/var/log/journal -u pve-maas-init
/var/lib/pve-maas/ bosken ag da kapaliysa, networking.service ile MAAS'in
netplan yapilandirmasi cakisiyor demektir; imajda bu servis devre disi olmali.
Dugum adi imajdaki hostname olarak gorunuyor
Olmamasi gerekir — pmxcfs veritabani imajdan silinir ve ilk acilista guncel
hostname ile yeniden uretilir. Boyle bir durumda /var/lib/pve-cluster/config.db
imajda kalmis demektir; make image ciktisinda "Proxmox dugum kimligi sifirlaniyor"
adimini kontrol edin.
Deploy "Installing OS" sonrasi "Configuring OS" asamasinda patliyor Kurulum kaydina bakin:
maas $PROFILE node-script-result download $SYSTEM_ID current-installation \
filetype=txt filters=/tmp/install.log output=all | tail -60
install_kernel -> AttributeError: 'NoneType' object has no attribute 'get'
goruyorsaniz preseed'de kernel: null kullanilmis demektir. MAAS ile gelen
curtin surumlerinin bir kismi bunu desteklemez. Bu depodaki preseed bunu
kullanmaz; cekirdek kurulumu imajdaki /curtin/curtin-hooks ile devre disi
birakilir. Preseed'i elle duzenlediyseniz geri alin.
Build "proxmox-ve paketi bulunamadi" diyor
PVE_SUITE/DEBIAN_SERIES ile PVE_REPO uyumsuz. Depoyu dogrulayin:
curl -s http://download.proxmox.com/debian/pve/dists/<suite>/Release | grep Components
Kaynaklar
- canonical/packer-maas — temel Packer sablonlari (AGPL-3.0)
- MAAS: Build custom images
- Proxmox VE: Install on Debian
- Proxmox VE: Cluster Manager
- pvecm(1)