Ero sivun ”Ocfs2” versioiden välillä
(c/) |
Ei muokkausyhteenvetoa |
||
(7 välissä olevaa versiota samalta käyttäjältä ei näytetä) | |||
Rivi 21: | Rivi 21: | ||
==Yksinkertainen esimerkki. Ocfs2:n asentaminen Debianiin== | ==Yksinkertainen esimerkki. Ocfs2:n asentaminen Debianiin== | ||
{{jakeluspesifinen}} | |||
Tarvitaan 2 kpl palvelimia, virtuaalikoneetkin käy tähän esimerkkiin. Juuritiedostojärjestelmää ei voi jakaa, joten molemmissa palvelimissa pitää olla yksi ylimääräinen levy tai levyosio. Esimerkissä käytetään /dev/sdb5 -osiota | Tarvitaan 2 kpl palvelimia, virtuaalikoneetkin käy tähän esimerkkiin. Juuritiedostojärjestelmää ei voi jakaa, joten molemmissa palvelimissa pitää olla yksi ylimääräinen levy tai levyosio. Esimerkissä käytetään /dev/sdb5 -osiota | ||
Rivi 31: | Rivi 31: | ||
192.168.1.201 esimerkkiservu-1.lan esimerkkiservu-1 | 192.168.1.201 esimerkkiservu-1.lan esimerkkiservu-1 | ||
192.168.1. | 192.168.1.202 esimerkkiservu-2.lan esimerkkiservu-2 | ||
Rivi 51: | Rivi 51: | ||
sudo o2cb register-cluster esimerkkiklusteri command | sudo o2cb register-cluster esimerkkiklusteri command | ||
Tarkistetaan klusterin asetustiedosto: | |||
cat /etc/ocfs2/cluster.conf | |||
Jos kaikki meni oikein sen pitäisi antaa seuraanvalainen tuloste: | |||
cluster: | |||
name = esimerkkiklusteri | |||
heartbeat_mode = local | |||
node_count = 2 | |||
node: | |||
cluster = esimerkkiklusteri | |||
number = 1 | |||
ip_port = 7777 | |||
ip_address = 192.168.1.201 | |||
name = esimerkkiservu-1 | |||
node: | |||
cluster = esimerkkiklusteri | |||
number = 2 | |||
ip_port = 7777 | |||
ip_address = 192.168.1.202 | |||
name = esimerkkiservu-2 | |||
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 [[crontab]]iin: | |||
sudo mount -t ocfs2_dlmfs none /dlm && sudo sudo mount -t configfs none /config | |||
Mikäli juuritiedostojärjestelmässä ei ole kansioita dlm ja config, voit luoda ne komennolla: | |||
sudo mkdir /dlm && sudo mkdir /config | |||
Tämän jälkeen klusteri voidaan käynnistää molemmissa palvelimissa komennolla: | |||
sudo /etc/init.d/o2cb start | |||
Toiminnan voi tarkistaa komennolla: | |||
sudo /etc/init.d/o2cb status | |||
Jonka pitäisi antaa seuraavankaltainen tuloste: | |||
o2cb.service - LSB: Load O2CB cluster services at system boot. | |||
Loaded: loaded (/etc/init.d/o2cb; generated) | |||
Active: active (running) since Sat 2024-04-27 13:25:20 EEST; 3s ago | |||
Docs: man:systemd-sysv-generator(8) | |||
Process: 45895 ExecStart=/etc/init.d/o2cb start (code=exited, status=0/SUCCESS) | |||
Tasks: 1 (limit: 9371) | |||
Memory: 236.0K | |||
CPU: 73ms | |||
CGroup: /system.slice/o2cb.service | |||
`-45942 o2hbmonitor | |||
Apr 27 13:25:20 esimerkkiservu-1 systemd[1]: Starting o2cb.service - LSB: Load O2CB cluster services at system boot.... | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: checking debugfs... | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Loading stack plugin "o2cb": OK | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Loading filesystem "ocfs2_dlmfs": OK | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Mounting ocfs2_dlmfs filesystem at /dlm: OK | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Setting cluster stack "o2cb": OK | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Registering O2CB cluster "esimerkkiklusteri": OK | |||
Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Setting O2CB cluster timeouts : OK | |||
Apr 27 13:25:20 esimerkkiservu-1 o2hbmonitor[45942]: Starting | |||
Apr 27 13:25:20 esimerkkiservu-1 systemd[1]: Started o2cb.service - LSB: Load O2CB cluster services at system boot.. | |||
Nyt voidaan molemmissa palvelimissa luoda ocfs2-tiedostojärjestelmä komennolla: | |||
sudo mkfs.ocfs2 -b 4k -C 1M -N 2 -L jaettulevy /dev/sdb5 | |||
Jossa -b block size, -C cluster size, -N node count, -L label | |||
Tämän jälkeen liitetään levy esimerkkikansioon komennolla: | |||
sudo mount /dev/sdb5 /esimerkkikansio | |||
Jonka jälkeen sitä voi käyttää kuten mitä tahansa muuta liitettyä levyä ja tallentaa tiedostoja ja nämä ovat reaaliaikaisesti käytössä molemmilla koneilla. Erittäin hyödyllinen esimerkiksi tietokannoissa, nfs/samba-servuissa ja virtuaalikoneiden tallennustilana. | |||
==Katso myös== | |||
*[[ZFS]] | |||
*[[NFS]] | |||
*[[Samba]] | |||
*[[DRBD]] | |||
*[[Linstor]] | |||
[[Luokka:Ohjeet]] | |||
[[Luokka:Verkko]] | [[Luokka:Verkko]] | ||
[[Luokka:Palvelimet]] | [[Luokka:Palvelimet]] | ||
[[Luokka:Tiedostojärjestelmät]] | [[Luokka:Tiedostojärjestelmät]] |
Nykyinen versio 28. huhtikuuta 2024 kello 02.33
OCFS2 | |
---|---|
Kotisivu | OCFS2 Wiki |
OCFS2 (Oracle Cluster File System Version 2) on yleiskäyttöinen ja jaettu levyjärjestelmä, joka on tarkoitettu klustereiden käyttöön. Se tarjoaa korkean suorituskyvyn ja korkean käytettävyyden. Vaihtoehtoisesti voit myös liittää OCFS2-tiedostojärjestelmän itsenäiseen, ei-klusteroituun järjestelmään. OCFS2 mahdollistaa seuraavat edut:
Voit käyttää reflink-komentoa OCFS2:ssa luodaksesi copy-on-write -klooneja yksittäisistä tiedostoista. Voit myös käyttää cp --reflink -komentoa samalla tavalla kuin Btrfs-tiedostojärjestelmässä. Tällaiset kloonit auttavat säästämään levytilaa, kun tallennetaan useita samankaltaisia tiedostoja, kuten virtuaalikoneiden kuvia tai Linux-säiliöitä. Huomaa, että käytettäessä reflink-komentoa, tuloksena oleva tiedostojärjestelmä käyttäytyy alkuperäisten tiedostojen kloonina, mikä tarkoittaa, että niiden UUID:t ovat samat. Kun luot kloonin reflink-komennolla, sinun on muutettava UUID käyttämällä tunefs.ocfs2 -komentoa.
Liittämällä paikallinen OCFS2-tiedostojärjestelmä voit myöhemmin siirtää tiedostojärjestelmän klusteritiedostojärjestelmään ilman muunnosta. OCFS2 tarjoaa paikallisen tiedostojärjestelmän semantiikkaa, joten lähes kaikki sovellukset voivat käyttää sitä. Klusteritietoiset sovellukset voivat käyttää välimuistissa yhtenäistä rinnakkais-I/O:ta useista klusterisolmuista tasapainottaakseen toimintaa klusterin yli tai käyttää käytettävissä olevaa tiedostojärjestelmätoiminnallisuutta siirtyäkseen toiselle solmulle, jos jokin solmu epäonnistuu.
OCFS2:n käyttötapauksia ovat muun muassa:[muokkaa]
- Kuormantasaus: Voit käyttää OCFS2-solmuja jakamaan resursseja asiakasjärjestelmien välillä. Esimerkiksi solmut voisivat jakaa jaetun tiedostojärjestelmän käyttämällä Sambaa tai NFS:ää. Palvelupyyntöjen jakamiseksi solmujen välillä voit käyttää round-robin DNS:ää, verkkokuormantasapainotinta tai määrittää, mitä solmua tulisi käyttää kullakin asiakkaalla.
- Oracle Real Application Cluster -käyttötapaus: Oracle Real Application Cluster (RAC) käyttää omaa klusteripinoaan, Cluster Synchronization Services (CSS). Voit käyttää O2CB:ta yhdessä CSS:n kanssa, mutta huomaa, että kumpikin pino on konfiguroitu erikseen aikarajoituksille, solmuille ja muille klusteriasetuksille. Voit käyttää OCFS2:ta tiedostojen ja Oracle-klusterirekisterin (OCR) isäntänä, mutta grid-infrastruktuurin käyttäjän kotihakemisto on oltava paikallisessa tiedostojärjestelmässä kullakin solmulla.
Yksinkertainen esimerkki. Ocfs2:n asentaminen Debianiin[muokkaa]
Tarvitaan 2 kpl palvelimia, virtuaalikoneetkin käy tähän esimerkkiin. Juuritiedostojärjestelmää ei voi jakaa, joten molemmissa palvelimissa pitää olla yksi ylimääräinen levy tai levyosio. Esimerkissä käytetään /dev/sdb5 -osiota
Muokataan /etc/hosts-tiedostoa molemmissa palvelimissa niin, että molemmat palvelimet löytyy sieltä:
sudo nano /etc/hosts
Lisää rivit/palvelimet:
192.168.1.201 esimerkkiservu-1.lan esimerkkiservu-1 192.168.1.202 esimerkkiservu-2.lan esimerkkiservu-2
Ocfs2 löytyy Debianin pakettivarastoista ja se asennetaan molempiin palvelimiin komennolla:
sudo apt install ocfs2-tools
Nämä komennot annetaan molemmissa palvelimissa. Luodaan klusteri:
sudo o2cb add-cluster esimerkkiklusteri
Nämä komennot annetaan molemmissa palvelimissa. Lisätään palvelimet klusteriin:
sudo o2cb add-node esimerkkiklusteri esimerkkiservu-1 --ip 192.168.1.201 --port 7777 --number 1 sudo o2cb add-node esimerkkiklusteri esimerkkiservu-2 --ip 192.168.1.202 --port 7777 --number 2
Nämä komennot annetaan molemmissa palvelimissa. Rekisteröidään klusteri:
sudo o2cb register-cluster esimerkkiklusteri command
Tarkistetaan klusterin asetustiedosto:
cat /etc/ocfs2/cluster.conf
Jos kaikki meni oikein sen pitäisi antaa seuraanvalainen tuloste:
cluster: name = esimerkkiklusteri heartbeat_mode = local node_count = 2 node: cluster = esimerkkiklusteri number = 1 ip_port = 7777 ip_address = 192.168.1.201 name = esimerkkiservu-1 node: cluster = esimerkkiklusteri number = 2 ip_port = 7777 ip_address = 192.168.1.202 name = esimerkkiservu-2
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
Mikäli juuritiedostojärjestelmässä ei ole kansioita dlm ja config, voit luoda ne komennolla:
sudo mkdir /dlm && sudo mkdir /config
Tämän jälkeen klusteri voidaan käynnistää molemmissa palvelimissa komennolla:
sudo /etc/init.d/o2cb start
Toiminnan voi tarkistaa komennolla:
sudo /etc/init.d/o2cb status
Jonka pitäisi antaa seuraavankaltainen tuloste:
o2cb.service - LSB: Load O2CB cluster services at system boot. Loaded: loaded (/etc/init.d/o2cb; generated) Active: active (running) since Sat 2024-04-27 13:25:20 EEST; 3s ago Docs: man:systemd-sysv-generator(8) Process: 45895 ExecStart=/etc/init.d/o2cb start (code=exited, status=0/SUCCESS) Tasks: 1 (limit: 9371) Memory: 236.0K CPU: 73ms CGroup: /system.slice/o2cb.service `-45942 o2hbmonitor Apr 27 13:25:20 esimerkkiservu-1 systemd[1]: Starting o2cb.service - LSB: Load O2CB cluster services at system boot.... Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: checking debugfs... Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Loading stack plugin "o2cb": OK Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Loading filesystem "ocfs2_dlmfs": OK Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Mounting ocfs2_dlmfs filesystem at /dlm: OK Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Setting cluster stack "o2cb": OK Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Registering O2CB cluster "esimerkkiklusteri": OK Apr 27 13:25:20 esimerkkiservu-1 o2cb[45895]: Setting O2CB cluster timeouts : OK Apr 27 13:25:20 esimerkkiservu-1 o2hbmonitor[45942]: Starting Apr 27 13:25:20 esimerkkiservu-1 systemd[1]: Started o2cb.service - LSB: Load O2CB cluster services at system boot..
Nyt voidaan molemmissa palvelimissa luoda ocfs2-tiedostojärjestelmä komennolla:
sudo mkfs.ocfs2 -b 4k -C 1M -N 2 -L jaettulevy /dev/sdb5
Jossa -b block size, -C cluster size, -N node count, -L label
Tämän jälkeen liitetään levy esimerkkikansioon komennolla:
sudo mount /dev/sdb5 /esimerkkikansio
Jonka jälkeen sitä voi käyttää kuten mitä tahansa muuta liitettyä levyä ja tallentaa tiedostoja ja nämä ovat reaaliaikaisesti käytössä molemmilla koneilla. Erittäin hyödyllinen esimerkiksi tietokannoissa, nfs/samba-servuissa ja virtuaalikoneiden tallennustilana.