Idena Sibling: Megosztott és normál Idena-csomópont felállítása és kezelése

IllusionMayhem
Idena
Published in
12 min readMay 23, 2023

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.

A WSL2 Ubuntu Linux disztribúció ikonja a telepítés után

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:

A WSL-ben (bal oldalon) és a standard Windows Parancssorban (jobb oldalon) a konzolkimenet eltér egymástól.

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
api_keys_path: “./group_vars/main/api_keys.yaml”
– a dropleted Idena-node-proxy kliensébe importálandó API-kulcsokat tartalmazó fájl elérési útvonala
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.

--

--