Așa că, după 2 săptămâni de cercetare și de citit multe, multe postări pe blog, mi-am dat seama în sfârșit cum să o fac.
Nu este deosebit de direct, dar nici nu este știință rachetă, totuși am sentimentul (și ostilitatea) dacă întreb pe forumurile proxmox că ar prefera să nu te îndepărtezi de platforma proxmox, temporar sau altfel.
Oricum, pașii pe care trebuie să-i urmezi sunt în esență
la linia de comandă proxmox, „pct list” pentru a obține ID-ul containerului pe care doriți să-l copiați.
la aceeași linie de comandă "vzdump -compress gzip -dumpdir /tmp" , nu aveți nevoie de parametrul dump dir, dar implicit este imbricat o cantitate stupidă de foldere adânc, așa că aș sfătui să utilizați tmp dir pentru ușurință .
apoi trebuie să creați un „fișier metadate” folosind următoarele comenzi (Vă rugăm să REȚINȚI: simbolurile # trebuie schimbate în BACKTICKS înainte de a copia și lipi/utiliza comanda, a trebuit să folosesc simbolul # ca reducere în o postare SO nu poate afișa simbolul backtick din cauza modului în care markdown îl folosește):
arhitectura echo: #pct config $1 | grep arc: | awk '{print $2}'# > metadata.yaml
echo creation_date: #date +%s# >> metadata.yaml
tar -czvf metadata.tar.gz metadata.yaml
rm metadata.yaml
Mutați fișierele „.tar.gz” pe care le-ați creat pe mașina țintă care rulează o versiune modernă a LXD, am folosit rsync pentru asta.
PE linia de comandă a mașinii dvs. LXD, utilizați următoarea comandă pentru a importa metadatele și descărcarea fișierului într-o imagine lxc:
sudo lxc image import metadata.tar.gz <nume vzdump>.tar.gz
Acest lucru va importa containerul ca tip de imagine, care nu poate fi rulat direct
lista de imagini lxc
și obțineți amprenta imaginii pe care tocmai ați creat-o
încă la linia de comandă LXD, folosind amprenta din imaginea dvs.:
lxc lansează <amprentă> <numele pe care vrei să-l dai containerului>
În acest moment, veți avea un nou container, care este o copie exactă a celui original proxmox care rulează.
Totuși, ceea ce este posibil să nu aveți sunt aceleași setări de rețea. Pentru mine, totul din rețeaua mea funcționează cu DHCP, inclusiv închirierile statice, așa că era important ca noile mele containere să aibă aceeași adresă MAC, lucru care a fost ușor de realizat folosind
pct config <container id>
pe proxmox cli pentru a afișa configurația hardware, apoi copiați și lipiți adresa MAC de pe aceasta, urmată de
lxc stop <numele containerului>
lxc config set <nume container> volatile.eth0.hwaddr <adresă Mac copiată>
lxc start <numele containerului>
Dacă închirierile dvs. statice DHCP sunt conduse de la adresa mac, atunci acest lucru va asigura că primesc aceeași adresă IP, atâta timp cât gazda dvs. LXD este configurată să pună IP-uri în aceeași rețea ca și gazda dvs. originală proxmox.
Am scris o postare pe blog care poate fi găsită la: https://shawtyds.wordpress.com/2021/11/16/converting-containers-from-proxmox-ve-back-to-plain-old-lxd-lxc/ asta intră puțin mai în detaliu.
Odată ce containerul copiat rulează, atunci este doar o chestiune de a folosi lxc pentru a șterge imaginea temporară (cu excepția cazului în care doriți să o păstrați) și pentru a șterge fișierele „.tar.gz” de pe ambele servere și, eventual, pentru a elimina vechiul container din proxmox dacă nu mai aveți nevoie de el.