Muokataan sivua Debian homelab(opennebula, drbd, linstor ja ocfs2)
Siirry navigaatioon
Siirry hakuun
Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.
Nykyinen versio | Oma tekstisi | ||
Rivi 58: | Rivi 58: | ||
Asennetaan Debian SDK | Asennetaan Debian SDK | ||
sudo apt | sudo apt install devscripts build-essential dkms | ||
Asennetaan [https://sdkman.io/ SDKMAN] ja Linstorin vaatima uusin [https://gradle.org/ Gradle] sen avulla. | Asennetaan [https://sdkman.io/ SDKMAN] ja Linstorin vaatima uusin [https://gradle.org/ Gradle] sen avulla. | ||
SDKMAN: | SDKMAN: | ||
curl -s "https://get.sdkman.io" | bash | |||
Ja sen jälkeen Gradle: | Ja sen jälkeen Gradle: | ||
Rivi 189: | Rivi 189: | ||
linstor resource-group create homelabrg --storage-pool homelabpool --place-count 3 | linstor resource-group create homelabrg --storage-pool homelabpool --place-count 3 | ||
Luodaan volume-ryhmä: | |||
linstor volume-group create homelabrg | |||
Luodaan looginen tallennustila: | Luodaan looginen tallennustila: | ||
Rivi 236: | Rivi 239: | ||
'''<big>Huom! Tuota yllämainittua komentoa/ominaisuutta ei voi käyttää kuin [[Ocfs2]] ja [[GFS2]] tiedostojärjestelmien kanssa. Muilla(esim. [[ext4]] tai [[btrfs]] )järjestelmä vikaantuu pahasti.</big>''' | '''<big>Huom! Tuota yllämainittua komentoa/ominaisuutta ei voi käyttää kuin [[Ocfs2]] ja [[GFS2]] tiedostojärjestelmien kanssa. Muilla(esim. [[ext4]] tai [[btrfs]] )järjestelmä vikaantuu pahasti.</big>''' | ||
== | == OCFS2-tiedostojärjestelmän asennus ja käyttöönotto == | ||
Seuraavat komennot annetaan jälleen kaikissa kolmessa palvelimessa. | Seuraavat komennot annetaan jälleen kaikissa kolmessa palvelimessa. | ||
Rivi 287: | Rivi 290: | ||
name = node-2 | name = node-2 | ||
'''HUOM! | '''HUOM! Debianin paketissa on bugi ja klusteri ei käynnisty ennenkuin teet pari manuaalista liitosta komennoilla. Tämä täytyy EHKÄ tehdä jokaisen käynnistyksen jälkeen, tai automatisoida se esimerkiksi crontabiin:''' | ||
sudo mount -t ocfs2_dlmfs none /dlm && sudo sudo mount -t configfs none /config | sudo mount -t ocfs2_dlmfs none /dlm && sudo sudo mount -t configfs none /config | ||
Rivi 297: | Rivi 300: | ||
Tämän jälkeen klusteri voidaan käynnistää kaikissa kolmessa palvelimessa komennolla ja samalla tarkistaa toiminta: | Tämän jälkeen klusteri voidaan käynnistää kaikissa kolmessa palvelimessa komennolla ja samalla tarkistaa toiminta: | ||
sudo /etc/init.d/o2cb | sudo /etc/init.d/o2cb start && sudo /etc/init.d/o2cb status | ||
Tuloste pitäisi olla esimerkiksi Debian 12 node-1:ssä tämän kaltainen: | Tuloste pitäisi olla esimerkiksi Debian 12 node-1:ssä tämän kaltainen: | ||
Rivi 330: | Rivi 333: | ||
Jossa -b block size, -C cluster size, -N node count, -L label | Jossa -b block size, -C cluster size, -N node count, -L label | ||
Tiedostojärjestelmän luonnin jälkeen tehdään kaikissa palvelimissa /var/lib/one | Tiedostojärjestelmän luonnin jälkeen tehdään kaikissa palvelimissa /var/lib/one- kansio ja liitetään /dev/drbd1000 siihen seuraavalla komennolla: | ||
sudo mkdir | sudo mkdir /var/lib/one && sudo mount /dev/drbd1000 /var/lib/one | ||
Tarkistetaan lsblk -f komennolla: | Tarkistetaan lsblk -f komennolla: | ||
Rivi 348: | Rivi 351: | ||
Tulosteesta pitäisi löytyä jotakuinkin tälläinen rivi: | Tulosteesta pitäisi löytyä jotakuinkin tälläinen rivi: | ||
/dev/drbd1000 50G 0,1G 50G 1% /var/lib/one | /dev/drbd1000 50G 0,1G 50G 1% /var/lib/one | ||
Ja jos kaikki meni oikein niin linstorin tarkastuskomento: | Ja jos kaikki meni oikein niin linstorin tarkastuskomento: | ||
Rivi 367: | Rivi 370: | ||
|} | |} | ||
== Asennetaan | == Asennetaan KVM, Qemu, libvirt ja Docker == | ||
[[KVM]], Qemu ja libvirt asennetaan seuraavalla komennolla: | |||
sudo apt | sudo apt install qemu-system libvirt-daemon-system | ||
[[Docker]] asennetaan seuraavasti: | [[Docker]] asennetaan seuraavasti: | ||
Rivi 386: | Rivi 389: | ||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null | ||
sudo apt update && sudo apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin | sudo apt update && sudo apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin | ||
== Asennetaan [[OpenNebula]] == | == Asennetaan [[OpenNebula]] == | ||
Rivi 441: | Rivi 405: | ||
sudo apt update && sudo apt -y install opennebula opennebula-sunstone opennebula-fireedge opennebula-gate opennebula-flow opennebula-provision opennebula-node-kvm docker-machine-opennebula | sudo apt update && sudo apt -y install opennebula opennebula-sunstone opennebula-fireedge opennebula-gate opennebula-flow opennebula-provision opennebula-node-kvm docker-machine-opennebula | ||
Lisätään asennuksen luoma oneadmin käyttäjä | Lisätään asennuksen luoma oneadmin käyttäjä docker-ryhmään | ||
sudo adduser oneadmin docker | sudo adduser oneadmin docker | ||
Vaihdetaan oneadmin-käyttäjäksi ja lisätään salasana: | Vaihdetaan oneadmin-käyttäjäksi ja lisätään salasana: | ||
Rivi 456: | Rivi 419: | ||
sudo systemctl enable --now opennebula opennebula-sunstone opennebula-fireedge opennebula-gate opennebula-flow | sudo systemctl enable --now opennebula opennebula-sunstone opennebula-fireedge opennebula-gate opennebula-flow | ||
Jos kaikki meni putkeen ja palomuurista portti 9869 auki, voit selaimella mennä osoitteeseen | Jos kaikki meni putkeen ja palomuurista portti 9869 auki, voit selaimella mennä osoitteeseen http://<debian11_control_ip-osoite>:9869 | ||
Ja kirjautua oneadmin käyttäjänä ja aiemmin antamallisi salasanalla hallintapaneeliin. | Ja kirjautua oneadmin käyttäjänä ja aiemmin antamallisi salasanalla hallintapaneeliin. | ||
Rivi 463: | Rivi 426: | ||
Koska osassa opennebulan paketeista on vielä tätä ohjetta kirjoitettaessa ristiriitaisuuksia Debian 12:n pakettien kanssa niin asennetaan pelkästään varmasti toimivat paketit näihin palvelimiin seuraavasti: | Koska osassa opennebulan paketeista on vielä tätä ohjetta kirjoitettaessa ristiriitaisuuksia Debian 12:n pakettien kanssa niin asennetaan pelkästään varmasti toimivat paketit näihin palvelimiin seuraavasti: | ||
mkdir opennebula && cd opennebula | mkdir opennebula && cd opennebula | ||
wget https://downloads.opennebula.io/repo/6.8/Debian/11/pool/opennebula/opennebula-common_6.8.0-1_all.deb | wget https://downloads.opennebula.io/repo/6.8/Debian/11/pool/opennebula/opennebula-common_6.8.0-1_all.deb | ||
Rivi 471: | Rivi 434: | ||
Oneadmin-käyttäjälle täytyy luoda salasanaton [[ssh]]-kirjautuminen palvelimien välille ja sitten voidaan Debian 12 palvelimet lisätä Debian 11 hallintapaneelista virtuaalikoneisänniksi. | Oneadmin-käyttäjälle täytyy luoda salasanaton [[ssh]]-kirjautuminen palvelimien välille ja sitten voidaan Debian 12 palvelimet lisätä Debian 11 hallintapaneelista virtuaalikoneisänniksi. | ||
==Huomiota== | ==Huomiota== | ||
Rivi 484: | Rivi 443: | ||
* Voi rakentaa kokonaisen virtualisoidun pilviympäristön palomuureineen, verkkolevyineen reitittimineen yms. | * Voi rakentaa kokonaisen virtualisoidun pilviympäristön palomuureineen, verkkolevyineen reitittimineen yms. | ||
* Voi ajaa klusterin päällä esim. [[Distcc]]:tä ja tehdä esim. Linux-[[ytimen_kääntäminen]] nopeammaksi. Tai minkä muun paketin tahansa. | * Voi ajaa klusterin päällä esim. [[Distcc]]:tä ja tehdä esim. Linux-[[ytimen_kääntäminen]] nopeammaksi. Tai minkä muun paketin tahansa. | ||
* Linstoria ajetaan tässä dual-primary moodissa ja äkillisen virtakatkoksen tai muun häiriön tapahtutuessa palvelinten uudelleenkäynnistyksen yhteydessä saattaa tapahtua nk. [https://www.google.com/search?q=split+brain+drbd&sca_esv=ee520a4c543f855e&sxsrf=ACQVn08x_CGXtg7oj1_8Cg7hJNlTDRbH9g%3A1714227872009&ei=oAotZrQLpY3A8A_v4JCoDg&udm=&oq=split+brain+dr&gs_lp=Egxnd3Mtd2l6LXNlcnAiDnNwbGl0IGJyYWluIGRyKgIIAjIIEAAYgAQYywEyCBAAGIAEG split-brain reaktio], joka tarkoittaa, että palvelin ei tiedä miltä koneelta tieto haetaan replikoitavaksi ja on haasteellista saada järjestelmä tästä virheestä toipumaan ilman uudelleenasennusta ja tietojen häviämistä. Joten etenkin tuotantokäytössä on syytä heti käyttöönoton jälkeen aloittaa [[crontab]]in ja vaikka [[rsync]]in avulla Linstorin DRBD-osion säännöllinen tiheä [[varmuuskopiointi]]. | * Linstoria ajetaan tässä dual-primary moodissa ja äkillisen virtakatkoksen tai muun häiriön tapahtutuessa palvelinten uudelleenkäynnistyksen yhteydessä saattaa tapahtua nk. [https://www.google.com/search?q=split+brain+drbd&sca_esv=ee520a4c543f855e&sxsrf=ACQVn08x_CGXtg7oj1_8Cg7hJNlTDRbH9g%3A1714227872009&ei=oAotZrQLpY3A8A_v4JCoDg&udm=&oq=split+brain+dr&gs_lp=Egxnd3Mtd2l6LXNlcnAiDnNwbGl0IGJyYWluIGRyKgIIAjIIEAAYgAQYywEyCBAAGIAEG split-brain reaktio], joka tarkoittaa, että palvelin ei tiedä miltä koneelta tieto haetaan replikoitavaksi ja on haasteellista saada järjestelmä tästä virheestä toipumaan ilman uudelleenasennusta ja tietojen häviämistä. Joten etenkin tuotantokäytössä on syytä heti käyttöönoton jälkeen aloittaa [[crontab]]in ja vaikka [[rsync]]in avulla Linstorin DRBD-osion säännöllinen tiheä [[varmuuskopiointi]]. | ||
==Aiheesta muualla== | ==Aiheesta muualla== | ||
Rivi 515: | Rivi 462: | ||
*[https://docs.opennebula.io/6.8/overview/opennebula_concepts/opennebula_overview.html OpenNebulan virallinen dokumentaatio (englanniksi)] | *[https://docs.opennebula.io/6.8/overview/opennebula_concepts/opennebula_overview.html OpenNebulan virallinen dokumentaatio (englanniksi)] | ||
*[https://computingforgeeks.com/install-opennebula-kvm-node-on-debian/ OpenNebula KVM-noden konfigurointi -ohje (englanniksi)] | *[https://computingforgeeks.com/install-opennebula-kvm-node-on-debian/ OpenNebula KVM-noden konfigurointi -ohje (englanniksi)] | ||
[[Luokka:Verkko]] | [[Luokka:Verkko]] | ||
Rivi 523: | Rivi 470: | ||
[[Luokka:Palvelimet]] | [[Luokka:Palvelimet]] | ||
[[Luokka:Emulaattorit ja virtuaalikoneet]] | [[Luokka:Emulaattorit ja virtuaalikoneet]] | ||