Idena Sibling: Megosztott és normál Idena-csomópont felállítása és kezelése
Ansible Playbookok és szerepkörgyűjtemény segítségével
A jelen útmutató fő célja, hogy segítse az újoncokat és a potenciális megosztottcsomópont-operátorokat egy Idena-csomópont vagy egy megosztott csomópont gyors és biztonságos felállításában. A playbookok
és szerepkörök segítségével a (megosztott) csomópontod összes paraméterét beállíthatod, és az üzembe helyezés után könnyedén frissítheted a megosztott csomópontod API-kulcsait.
Ha úgy döntesz, hogy megosztott csomópontot állítasz fel,
akkor használhatod a saját SSL-tanúsítványodat, vagy szerezhetsz egyet
a Let’s Encrypt-től is. Ha a Let’s Encrypt mellett döntesz, akkor
a tanúsítvány egy speciális crontab feladattal automatikusan frissül.
Ennek eredményeképpen üzemkész megosztott csomópontod lesz,
amely szinte semmilyen manuális beavatkozást nem igényel.
Ez különösen akkor hasznos, ha a validálási alkalom előtt állítod fel
a megosztott csomópontszerveredet egy nagyobb teljesítményű dropleten.
Emellett külön playbookot is kapsz, amellyel a már üzembe helyezett Idena-csomópontodon gyorsan elvégezhetsz különböző műveleteket.
Ilyen művelet például a bányászat be-/kikapcsolása, az API-kulcsok hozzáadása/eltávolítása, az Idena-csomópont daemon indítása/leállítása, valamint a csomópontkulcs (privát kulcs) megváltoztatása.
A megosztott csomópont felállítási módja
Számos különböző módja van a megosztott csomópont felállításának,
de a jelen cikk a következőt alkalmazza:
( idena-go ↔ idena-node-proxy ) ⇄ HAProxy (SSL-tanúsítványrétegen keresztül)
A rendszer felkészítése az Ansible Playbookok alkalmazására
Ubuntu telepítése WSL2-re Windows-felhasználóknak
Az én példámban WSL2-t használok Windows 10-el, amelyre Ubuntu 20.04 képet telepítettem, de az itt leírt instrukciók bármelyik Debian-alapú Linux-disztribúcióval használhatók. Ha nem tudod, mi az a WSL2
vagy hogy hogyan kell beállítani, akkor ez a cikk segít megismerkedni vele.
Telepíts mindent, ami a WSL futtatásához kell egyetlen paranccsal (PowerShell vagy Windows Parancssor), amit rendszergazdaként futtatsz, majd indítsd újra a géped.
wsl --install
Ez a parancs engedélyezi a WSL futtatásához szükséges funkciókat,
és telepíti a Linux Ubuntu disztribúcióját.
Az Ubuntu futtatásához egyszerűen keresd meg a telepített programok listájában.
Hogyan telepíthetsz egy független WSL2 Linux disztribúciót a fő rendszerrel párhuzamosan (nem szükséges)
Ha Windows 10 Build 18305 vagy későbbi verziót használsz,
és az alapértelmezettől eltérő Linux-disztribúciót akarsz telepíteni,
akkor csak futtass ilyen parancsokat azon a mappán belül,
ahová az Ubuntu-disztribúciódat telepíteni akarod. Csak győződj meg arról, hogy van elég szabad helyed:
1. Töltsd le a root tarballt, amely tartalmazza az Ubuntu 20.04 server verziót a WSL-hez. Az elérhető disztribúciók teljes listáját itt találod.
Én a legfrissebb AMD64 Ubuntu 20.04 disztribúciót használtam.
2. A tarball letöltési mappáján belül add meg a következő parancsot:
wsl.exe --import <Distribution_Name> <Install Folder> ubuntu-20.04-server-cloudimg-amd64-wsl.rootfs.tar.gz
Ügyelj rá, hogy az Install Folder
mappanév és a Distribution Name
nem lehet egyforma.
3. Látni fogod, hogy az Install Folder
mappának adott névvel megjelenik egy könyvtár abban a mappában, amelyben a fenti parancsot futtattad. Most pedig a disztribúció futtatásához egyszerűen írd be ezt a parancsot:
wsl.exe -d Distribution_Name
4. Emellett több másik wsl
parancs létezik, amely segíthet a disztribúciók kezelésében:
A rendszeredre telepített összes disztribúciót tartalmazó lista megtekintéséhez használd ezt a parancsot:
wsl --list
Egy korábban telepített disztribúció eltávolításához használhatod
a következő parancsot:
wsl --unregister <Distribution_Name>
Egy konkrét disztribúció deregisztrációja után már könnyedén törölheted
a mappáját.
Néhány dolog, amit érdemes észben tartani:
1. A disztribúció futtatása után az összes helyi meghajtó a /mnt
könyvtárban kap helyet.
2. Kérlek, ne a Windows-fájlrendszerben található standard mappát használd. A repót klónoznod kell a WSL-rendszeredben található egyik könyvtárba, lehetőség szerint a kezdőkönyvtáradba. Az aktuális felhasználó kezdőkönyvtárának megnyitásához tartozó alapértelmezett parancs
a következő: cd ~
. Ha a standard Windows-könyvtáron belül (az /mnt/
mappán belül bárhol) próbálod futtatni a playbookot, akkor hibaüzenetet kapsz.
[WARNING]: Ansible is being run in a world writable directory (/mnt/...), ignoring it as an ansible.cfg source.
3. A saját disztribúciód futtatása után belépsz a Linux alrendszerbe, amely eltér a Windows Parancssor felületétől. Az egyik fő különbség,
hogy a Linux fájlrendszerben a kurzor előtti karaktersor így néz ki:
3. Ha ki akarsz lépni a WSL alrendszerből, csak írd be az exit
parancsot.
4. A WSL alrendszerben kell futtatni az Ansible repónk használatához kapcsolódó összes parancsot, amelyet a jövőben futtatni akarunk.
VS-kód előkészítése az Idena Sibling (Idena-testvér) beállításához és a csomópontod felállításához
A terminállal kell dolgoznunk és néhány konfigurációs fájlt módosítanunk kell, köztük a titkosítottakat is. Ha számodra nem ismeretlen a Linux, akkor ez nem jelent majd gondot, de ha Windows-felhasználó vagy,
akkor javaslom, hogy a VS Code-ot egy különleges WSL-bővítménnyel telepítsd.
A helyi számítógéppel és a távoli dropletekkel szemben támasztott követelmények
Rendeltetési dropletek
· Python 3.9 vagy újabb verzió szükséges. Egyes felhőszolgáltatók előtelepített Pythonnal kínálnak dropleteket, míg mások anélkül.
Ha a rendeltetési dropleten nincs Python telepítve, akkor az Ansible semmilyen műveletet nem tud végrehajtani rajta. Kérlek, ezt jól jegyezd meg.
· A szkriptet Ubuntu 20.04 LTS rendszeren teszteltük, és más Debian-alapú disztribúciókon is működhet, de ilyen irányú tesztelés nem történt.
Mestercsomópont (Master Node)
· Python 3.9 vagy újabb verzió és pip3 telepítése szükséges.
· Az Ansible legfrissebb verzióját kell telepíteni a gépre.
· Ha Windows-alapú számítógépet használsz, akkor Ubuntu disztribúcióval telepített WSL2-t használva futtathatod ezt a playbookot.
A Python 3 telepítésének menete, ha még nem lenne telepítve
Az Ubuntu 20.04 LTS már rendelkezik az előtelepített python3 csomaggal. Ezt a python3 --version
parancs futtatásával könnyedén ellenőrizheted. Ha nincs telepítve, akkor a következő parancs felhasználásával telepítsd:
sudo apt install python3
A rendszer előkészítése és az Ansible telepítése a mestercsomópontra
Csomagok frissítése a legújabb verzióra
sudo apt update && sudo apt upgrade
Ansible repo hozzáadása, Ansible telepítése Pip segítségével és a szükséges csomagokkal
sudo apt install python3-pip
sudo pip3 install pywinrmsudo pip3 install pyvmomisudo apt-add-repository ppa:ansible/ansiblesudo pip3 install ansiblesudo pip3 install ansible[azure]
Idena Sibling repo klónozása
cd ~
git clone
https://github.com/ltraveler/idena-sibling.git
Belépés az idena-sibling repo könyvtárba
cd idena-sibling
A szükséges gyűjtemények és python könyvtárak telepítése a helyi gépre
Mielőtt elkezdenéd használni ezeket a playbookokat, kérlek, telepítsd
a szükséges python csomagokat és Ansible-galaxy modulokat.
· dnspython könyvtár telepítése pip3 install dnspython
· A szükséges ansible közösségi modulok telepítése ansible-galaxy install -r requirements.yml
Térjünk most rá a megosztott csomópont API-kulcsainak generálására és kezelésére.
API-kulcsok generálása
Ahhoz, hogy csomópontkulcsokat importálhass a megosztott csomópontodba, először létre kell hoznod őket. Nálam erre a célra
a legjobban az Online Hash Tools szolgáltatás vált be.
Tömb (array) létrehozása a generált API-kulcsokból
A következő lépés az, hogy a kulcsokat tömb formátumba rendezed,
a repo api_keys.yaml
fájljában is látható módon. Ennek legegyszerűbb módja egy speciális Google Sheet táblázatsablon alkalmazása.
A munkalap mindenki számára elérhető itt:
Az Ansible két típusú engedélyezést támogat a távoli dropletek tekintetében
Engedélyezés SSH-kulccsal (ajánlott)
A nyilvános SSH-kulcsodat hozzá kell adnod a távoli dropleten található authorized_keys
fájlhoz. Használhatod a következő parancsot: ssh-copy-id -i ~/.ssh/my_public_key droplet_username@droplet_ipaddress
.
Engedélyezés SSH-jelszóval (kevésbé biztonságos és nem ajánlott)
Másik, kevésbé biztonságos megoldásként használhatsz jelszavas hitelesítést is. A hitelesítési mód megváltoztatásához módosítsd
az sshd_PasswordAuthentication
változó értékét a ./group_vars/main/vars
fájlban, és töröld a // karaktereket az ansible_connection
változó elől a repo mappa gyökérkönyvtárában található host
fájlban. Ha nem akarod
az Ansible playbookod minden egyes futtatásánál beírni az SSH-jelszavadat, akkor hozzáadhatod azt az ansible_ssh_pass=”your_droplet_ssh_password”
változóhoz a ./group_vars/main/vault
fájlban.
Saját SSL-tanúsítvány vs Let’s Encrypt tanúsítvány
Az SSL-tanúsítvány kiadására kétféle opciód van. Vehetsz egyet az egyik SSL-tanúsítványszolgáltatótól, vagy ingyen kibocsáthatsz egyet a Let’s Encrypt segítségével. A két opció között a fő különbség az, hogy a Let’s Encrypt tanúsítványa csak 3 hónapig érvényes, és meg kell hosszabbítani. Azonban az Idena Sibling elkészít egy speciális szkriptet a feladat elvégzéséhez, és teljesen automatikussá teszi a folyamatot. Ha semmilyen speciális szintű validálást nem igényelsz, és megfelel neked, hogy háromhavonta automatikusan meghosszabbítsd a tanúsítványodat, akkor
a Let’s Encrypt tanúsítvány tökéletesen megfelel a megosztott csomópont működtetéséhez. A megvásárolható és az ACME-kibocsátású tanúsítványok közötti különbségekről bővebben itt olvashatsz. Felhívom a figyelmed, hogy a Let’s Encrypt már támogatja a wildcard tanúsítványokat is,
de a mi esetünkben a playbook normál tanúsítványt bocsátana ki,
amelyet droplet_domain: “shared.node.domain.com”
változónál adunk meg a ./group_vars/main/vault
fájlban.
Ha a Let’s Encrypt SSL-tanúsítványszolgáltatót használod (vagyis a letsencrypt változó értéke: “yes”)
Győződj meg arról, hogy helyesen állítottad be a megosztottcsomópont-domained címadatait (A records). Ha a domained IP-címe rossz rendeltetési helyhez van linkelve, akkor nem tudod majd teljesíteni
az SSL-tanúsítvány megszerzéséhez kapcsolódó kihívást.
A Let’s Encrypt szolgáltatás korlátozza, hogy hány alkalommal tudsz tanúsítványt igényelni. A lehetséges korlátokról itt olvashatsz.
Ahhoz, hogy elkerüld az érvényes korlátozások átlépését és hogy tanúsítvány nélkül maradj, el fogsz helyezni egy másolatot a helyi repód./node/remote_ssl_clone
mappájában, miután sikeresen kibocsátottál egy SSL-tanúsítványt.
Ha saját egyéni SSL-tanúsítványt használsz (vagyis a letsencrypt
változó értéke: “no”
)
A saját SSL-tanúsítványodat a ./node/domain_pem
fájlból veszi a rendszer.
Egy Privacy Enhanced Mail (PEM) fájl generálásához általában össze kell fűznöd a két fájlt. Ezt a következő paranccsal teheted meg, amelyet a crt
és a key fájlok mappájából kell futtatnod:
cat server.crt server.key > domain_pem
A végső PEM fájl — domain_pem
– létrehozása után át kell azt másolnod
a repód./idena-sibling/node/
mappájába (felülírva a már meglévő fájlt), és titkosítanod kell az ansible-vault encrypt domain_pem
paranccsal.
Ha a jövőben módosítani szeretnéd a tanúsítványtároló széfed (ansible-vault) tartalmát, azt a következő paranccsal teheted meg: ansible-vault edit domain_pem
.
Klónozott repo előkészítése a csomópontod felállításához és kezeléséhez
Mielőtt használni kezdenéd a playbookokat, módosítanod kell néhány változót a fájlokon belül:
A ./hosts
a rendeltetési dropletedhez kapcsolódó olyan változókat tartalmaz, amelyeket a csomópontod felállításához használsz majd.
[main]
1.2.3.4
[all:vars]
ansible_ssh_private_key_file = ~/.ssh/id_rsa
ansible_user = root
idena_group = Olga
username = Olga
public_key_file = ~/.ssh/id_rsa.pub
#ansible_connection=ssh
#ansible_ssh_port=10222
1.2.3.4
– A dropleted IP-címe
ansible_ssh_private_key_file = ~/.ssh/id_rsa
– A privát SSH-kulcsod elérési útvonala kell abban az esetben, ha hajlandó vagy egy privát SSH-kulcson keresztül a dropletedhez kapcsolódni
ansible_user = root
– normál esetben ez így marad, ám ha a gyökérszintű (root) felhasználódnak ettől eltérő, nem szabványos felhasználóneve van, akkor ezt a változót módosítanod kell
idena_group = Olga
és username = Olga
– ez a két változó adja az Idena-go daemon és az Idena-node-proxy példány telepítéséhez használt felhasználónevet és felhasználócsoportot. Normál esetben
a felhasználócsoport megegyezik a felhasználónévvel
public_key_file = ~/.ssh/id_rsa.pub
– a nyilvános SSH-kulcsod elérési útvonala abban az esetben, ha a dropletedet SSH-jelszóval állítod be,
és importálni szeretnéd a nyilvános kulcsodat a dropleted authorized_keys fájljába a privát SSH-kulcson keresztül végzett jövőbeni kapcsolódásokhoz.
Ha az SSH-kulcs helyett a root jelszóval történő hitelesítést részesíted előnyben, akkor a vault data storage (adattároló széf) fájl ansible_ssh_pass
változójánál a korábban leírtak szerint be kell állítanod a root jelszavad,
és ki kell törölnöd a // karaktereket az ansible_connection=ssh
változó elől
a hosts
fájlban.
#ansible_ssh_port=10222
– ha nem szabványos SSH-portot használsz,
akkor ki kell törölnöd a // karaktereket, és ezt az értéket kell beállítanod.
A ./group_vars/main/vars
az idena-go és idena-node-proxy klienseid nyilvános változóit, a domained, a szükséges csomagverziókat stb. tartalmazza. Most csak a fontos változókra térek ki, amelyek ahhoz szükségesek, hogy a szkript tegye
a dolgát. Ha egyik-másik változó jelentése ismeretlen számodra, akkor hagyd meg az alapértelmezett értékét. Csak a legkritikusabb változókat módosítsd. Ezek a következők:
---
idena_go_ver: "1.0.3"
sshd_PasswordAuthentication: "no"
letsencrypt: "yes"
api_keys_path: "./group_vars/main/api_keys.yaml"
blockpinthreshold: 0.3
flippinthreshold: 0.5
shared: true
idena_go_ver: “1.0.3”
– az az idena-go verzió, amelyet a dropleteden használni szeretnél. A legfrissebb változat telepítéséhez ezt az értéket
add meg: latest
.
sshd_PasswordAuthentication: “no”
– ha privát SSH-kulcsot szeretnél használni, akkor megteheted, hogy a dropleted kapcsolatfelvételi lehetőségét a privát SSH-kulcsra korlátozod
letsencrypt: “yes”
– ha megosztott csomópontot telepítesz,
akkor választanod kell, hogy Let’s Encrypt SSL-tanúsítványt használsz (yes
) vagy saját egyéni SSL-tanúsítványt (no
)
idenachain_bootstrap: “yes”
– ha inkább nem szeretnéd letölteni
az Idena blockchain bootstrap archív fáljt (idenachain.db),
akkor az idenachain_bootstrap
változó értékéhez add meg ezt: no
– a dropleted Idena-node-proxy kliensébe importálandó API-kulcsokat tartalmazó fájl elérési útvonala
api_keys_path: “./group_vars/main/api_keys.yaml”
blockpinthreshold: 0.3
– az alapértelmezett értéke 0.3
. Azonban ha egy megosztott Idena-csomópontot állítasz fel, akkor ezt a paramétert át kell állítanod 1
-re
flippinthreshold: 0.5
az alapértelmezett értéke 0.5
. Azonban ha egy megosztott Idena-csomópontot állítasz fel, akkor ezt a paramétert át kell állítanod1
-re
shared: true
– add meg, hogy az idena-go klienst a --profile=shared
flaggel vagy anélkül akarod futtatni. Ha megosztott csomópontot hozol létre, akkor állítsd az értéket true
-ra, ha normál csomópontot állítasz fel, akkor pedig false
-ra.
A ./group_vars/main/vault
privát változókat tartalmaz, például a következőket:
---
vault_api_key: e288dab99a8357371f527b41fe0439ba
vault_node_key: 6XCh2EqlfhHjOmb82Z386XhyJ8abeeKORBTi9r2joVhz9594y2138H9xqv8PS2cXts1bYTDaBlu
userpass: "eo4fejVM5jpA9Z"
letsencrypt_email: "email@for_lets_encrypt.com"
droplet_domain: "shared.node.domain.com"
#ansible_ssh_pass="your_droplet_ssh_password"
#ansible_sudo_pass: "your_droplet_sudo_pass"
vault_api_key: e288dab99a8357371f527b41fe0439ba
– a kívánt API-kulcs
a csomópontodhoz
vault_node_key: 6XCh2EqlfhHjOmb82Z386X
– ha a vault_node_key
(a privát kulcs) változó nincs beállítva, akkor a rendszer automatikusan generál egyet a csomópontodhoz
userpass: “eo4fejVM5jpA9Z”
– az idena-go daemon és az idena-node-proxy példányod futtatásához szükséges jelszó
letsencrypt_email: “email@for_lets_encrypt.com”
– ezt az e-mail-címet használod majd, ha a Let’s Encrypt segítségével generálod
a tanúsítványodat
droplet_domain: “shared.node.domain.com”
– a megosztott csomópontod domaincíme. Amennyiben hajlandó vagy a Let’s Encrypt SSL-tanúsítványszolgáltatót használni, akkor a domained A DNS rekordját erre az IP-címre kell beállítanod, mielőtt futtatnád a playbookot. Ne feledd, hogy a DNS-rekordok frissítése eltarthat egy ideig.
ansible_ssh_pass=”your_droplet_ssh_password”
– ha SSH-jelszót szeretnél
a hitelesítéshez használni, akkor itt beállíthatod a dropleted SSH-jelszavát, ha nem akarod, hogy az Ansible a playbook minden egyes futtatásánál kérje azt tőled.
ansible_sudo_pass: “your_droplet_sudo_pass”
– az ansible_sudo_pass
jelszava legtöbbször megegyezik az ansible_ssh_pass
változó értékével.
A jelszó csak akkor lenne eltérő, ha az SSH-kapcsolathoz használt sudo felhasználónév eltérne a playbook futtatása során használt sudo jogosultságokhoz alkalmazott felhasználónévtől. Ennél a playbooknál
a jelszónak meg kell egyeznie az ansible_ssh_pass
változóhoz beállított jelszóval.
Ne feledd, hogy a titkosított széffájlt (./group_vars/main/vault
) felül kell írnod a./node/ex/vault
titkosítatlan másolatával. Az összes szükséges változó beállítása után titkosítanod kell a fájlt az ansible-vault encrypt ./group_vars/main/vault
paranccsal (amelyet a repo root mappájából futtatsz). A fájl jövőbeni szerkesztéséhez használhatod
az ansible-vault edit ./group_vars/main/vault
parancsot a repo root mappájából futtatva.
Hogy ne kelljen minden alkalommal újra beírnod a vault storage jelszavadat, amikor szerkeszteni akarod, elmentheted azt a .vault_pass
szövegfájlba
a repo root könyvtárában.
A titkosítani kívánt összes fájlhoz ugyanazt a jelszót kell használnod.
A repónk esetében 2 titkosított fájlunk van:
1. ./group_vars/main/vault
– a privát változók tárhelye.
2. ./node/domain_pem
– Privacy Enhanced Mail (PEM) fájl, amely a saját SSL-tanúsítványodat tartalmazza.
./group_vars/main/api_keys.yaml
azon API-kulcsok listáját tartalmazza, amelyeket a felállított megosztott csomópontra kell importálni az idena_shared.yaml
playbookon keresztül.
---
api_keys: ["key1", "key2", "key3"]
./group_vars/main/api_mgmt.yaml
azokat az API-kulcsokat tartalmazza, amelyeket az idena_node_mgmt.yaml
playbookon ( IdenaApiKeysUpdate
. címke) keresztül hozzá kell adnunk
a már felállított megosztott csomóponthoz, vagy el kell távolítanunk onnan. A kulcsok megosztott csomóponthoz adása vagy onnan való eltávolítása után a kulcsduplikátokat a rendszer automatikusan eltávolítja, és a végső kimeneti adatok felülírják a helyi repo könyvtáradban található eredeti adatokat (./group_vars/main/api_keys.yaml
).
---
api_keys_add: ["key_to_add1", "key_to_add2", "key_to_add3"]
api_keys_remove: ["key_to_remove1", "key_to_remove2", "key_to_remove3"]
./.vault_pass
Ha nem akarod minden egyes alkalommal beírni a széfjelszavad, amikor szerkeszteni akarod a korábban létrehozott, titkosított vault variable storage tárhelyedet, akkor létrehozhatod ezt a fájlt, és hozzáadhatod
a jelszavadat.
Két titkosított széftárhelyet (vault storage) használunk: az egyiket a privát változókat tartalmazó fájlhoz – ./group_vars/main/vault
– a másikat
a Privacy Enhanced Mail (PEM) fájlhoz – ./node/domain_pem
. Mindenképpen pontosan ugyanazt a jelszót használd a két fájl titkosításához.
Néhány potenciálisan hasznos opcionális előkészület, és néhány potenciális probléma, amely felmerülhet.
Az SSH-jelszókérés megelőzése a távoli állomáson
Ha jelszóvédett privát SSH-kulcsot használsz, akkor a rendszer minden alkalommal kéri majd, hogy írd be a privát kulcsod SSH-jelszavát, amikor futtatni akarod a playbookodat. Ennek elkerülésére használhatod az ssh-agent
programot, és az ssh-add
paranccsal hozzáadhatod a privát kulcsodat, az alábbiak szerint:
SSH agent indítása:
$ eval `ssh-agent -s`
A privát kulcsod hozzáadásához használd az ssh-add
parancsot a privát SSH-kulcsod elérési útvonalával (pl. ~/.ssh/id_rsa_key
):
$ ssh-add ~/.ssh/id_rsa_key
Enter passphrase for /home/user/.ssh/id_rsa_key:
Identity added: /home/user/.ssh/id_rsa_key
(/home/user/.ssh/id_rsa_key)
A csomópontod felállítása és kezelése az Idena Sibling Playbooks segítségével
A szükséges változók konfigurálása után háromféle playbookot használhatsz attól függően, hogy milyen – megosztott vagy normál – csomópontot szeretnél felállítani. Emellett van egy speciális playbook, amellyel egy már felállított csomópontot igazgathatsz.
Normál Idena-csomópont felállítása az idena_node.yaml segítségével
ansible-playbook -i hosts idena_node.yaml
Megosztott Idena-csomópont felállítása az idena_shared.yaml segítségével
ansible-playbook -i hosts idena_shared.yaml
Egy már felállított normál vagy megosztott csomópont igazgatása az idena_node_mgmt.yaml segítségével
ansible-playbook -i hosts idena_node_mgmt.yaml --tags operation_tag_name
Az operation_tag_name lehetséges értékei:
· IdenaNodekeyUpdate
: Ez a feladat kivesz egy új csomópontkulcs (privát kulcs) értéket a vault_node_key
változóból, és felülírja a dropleteden meglévő nodekey
fájlt.
· IdenaNodeStart
: Elindítja az Idena-csomópontot.
· IdenaNodeStop
: Leállítja az Idena-csomópontot.
· IdenaMiningOn
: A bányászstátust ON (BE) állapotra állítja.
· IdenaMiningOff
: A bányászstátust OFF (BE) állapotra állítja.
· IdenaApiKeysUpdate
: Frissíti a megosztott csomópont API-kulcsait, miután megváltoztatta a változókat a ./group_vars/main/api_mgmt.yaml
fájlban, amellyel az API-kulcsok hozzáadását és eltávolítását végzed a dropleteden.
Ne feledd, hogy a végleges kulcslista a módosítások elvégzése után
a helyi ./group_vars/main/api_keys.yaml
fájlodat is felülírja.
Ennek eredményeképpen a helyi api_keys.yaml
fájl mindig az API-kulcsaid frissített listáját tartalmazza majd.
· IdenaGoUpdate
: az idena_go_ver
változónál megadott verzióra frissíti
a csomópontkliensedet.Ha az idena_go_ver
értéke latest
, akkor az idena-go csomópontklienst a legfrissebb verzióra frissíti.
· IdenaProxyUpdate
: a legfrissebb verzióra frissíti az idena-node-proxy kliensedet.
· IdenaChainRefresh
: teljes újraszinkronizálást indít el az Idena blokkláncról.
· IPFSRefresh
: teljes újraszinkronizálást indít el az IPFS-ről.
A végeredmény
Miután elkészültél a konfigurációval, már könnyedén felállíthatod
és menedzselheted a normál/megosztott Idena-csomópontodat.
Kérdés esetén fordulj hozzám bizalommal a Telegramon keresztül, vagy írj egy bejelentést a Idena Sibling GitHub repo oldalon.
Ez a projekt a közösségi tárcán keresztül kapott finanszírozást.
A javaslat teljes szövegét itt találod.