A Tulip konfigurálása az Ansible segítségével

Prev Next

Az Ansible egy nyílt forráskódú, parancssori IT-eszköz az Edge-eszközök tömeges kezeléséhez.

További információk az Ansible-ről itt találhatók.

Kiknek szól ez az útmutató

  • Azok a felhasználók, akik teljes körű hozzáféréssel rendelkeznek az Edge-eszközökhöz Permission
  • Az Ansible-lel ismerős felhasználók
  • Az Edge-eszközök beállításával már ismerős felhasználók

Hogyan működik

Az Ansible egy olyan IT-kezelő szoftver, amely lehetővé teszi az eszközkonfigurációk másolását és beillesztését. Ez úgy valósul meg, hogy egy „arany eszközt” használunk hitelesített, alapkonfigurációként, amely alapján a célkészülék konfigurálásra kerül.

Például egyszerre több új Edge-eszközt (a célkészülékeket) is beállíthat úgy, hogy az eszközt egy olyan csoporthoz rendeli, amely automatikusan alkalmazza a meglévő referenciaeszköz (a „golden device”) hitelesítő adatait. A „golden device”-t további fejlesztésekkel frissítheti, majd ezeket a frissítéseket továbbíthatja.

Edge device bulk configuration workflow

Ez a módszer automatizált és skálázható IT-kezelést biztosít, valamint csökkenti a kézi konfigurálás során előforduló hibák kockázatát.

Peremkészülékek és Ansible integráció

Ezek az eljárások leírják, hogyan integrálhatja a Tulip Edge gyűjtési funkcióit a meglévő Ansible munkafolyamatokba.

A Tulip Edge gyűjtemény telepítése

  1. Futtassa a következő parancsot a terminálon:ansible-galaxy collection install git+https://github.com/tulip/tulip-ansible-library.git#/collections/ansible_collections/tulip/edge
  2. Az edge eszközökhöz tartozó tároló telepítéséhez futtassa a következő parancsot:ansible-galaxy collection install tulip.edge

Inventory konfiguráció

Adja hozzá a következő kódot a meglévő leltárhoz, és töltse ki a változókat.

  1. Az alábbi kódban adjon nevet az eszközcsoportnak, és hitelesítse az instanciáját az instancia URL-jével, e-mail címével és e-mail jelszavával.

[your_device_group:vars]tulip_factory_url=https://your-factory.tulip.cotulip_admin_email=admin@yourcompany.comtulip_admin_password_sha256=your_sha256_hash

  1. Az alábbi kódban adja meg a cég nevét.

tulip_client_name=YourCompanyNametulip_client_version=1.0.0tulip_client_description=Production Gateway

Jelszó-hash generálása

A jelszó-hash egy olyan biztonsági intézkedés, amely a jelszót egy fix hosszúságú, összevissza kevert karakterekből álló karakterlánccá alakítja át, amelyet nem lehet könnyen visszafejteni vagy megfejteni. Ez a lépés elkerüli a fájlban tárolt sima szöveges jelszavakkal kapcsolatos biztonsági kockázatokat.

Biztonságos jelszó-hash generálásához írja be a következőt:

echo -n "your_password" | sha256sum | cut -d' ' -f1

Alapvető playbook-integráció

A következő kóddal adja hozzá a szükséges playbookokat a meglévő munkafolyamatokhoz:


* import\_playbook: tulip.edge.register when: register\_devices | default(false) ```

### Az integráció tesztelése

A következő kóddal adjon hozzá egy teszt playbookot a munkafolyamataihoz:

```- name: Tulip Gateway hitelesítés tesztelése hosts: test\_devices tasks: - name: Tesztkészülék hitelesítése import\_playbook: collections/ansible\_collections/tulip/edge/playbooks/gateway\_tulip\_auth.yml

  • név: A hitelesítés működésének ellenőrzése import_playbook: collections/ansible_collections/tulip/edge/playbooks/gateway_device_info.yml- name: Kapcsolat ellenőrzése import_playbook: collections/ansible_collections/tulip/edge/playbooks/gateway_check_internet.yml

Integrációs bevált gyakorlatok

  1. Változók kezelése

    • A közös beállításokhoz használja a group_vars-t
    • Az eszközspecifikus felülírásokhoz használja a host\_vars-t
    • Az érzékeny adatokat tárolja az Ansible Vaultban
  2. Hibakezelés


* name: Hitelesítési hiba kezelése debug: msg: "A hitelesítés sikertelen, ellenőrizze a hitelesítő adatokat" when: auth\_result.failed | default(false) ```
* **Biztonsági mentés kezelése**
* Használjon következetes elnevezést a biztonsági másolatoknál, például: `eszköz-alkatrész-időbélyeg`
* A biztonsági másolatok nevét változókban tárolja az újrafelhasználás érdekében
* Végrehajtja a biztonsági mentések megőrzési szabályait
* **Az idempotencia fenntartása**: Minden playbook idempotens, ezért többször is biztonságosan futtatható.

A hibák felderítéséhez, a logika végrehajtásának megértéséhez vagy a végrehajtás előtti ellenőrzéshez elvégezhet egy próba futtatást, amely során a szoftver nem fut le ténylegesen. A próba futtatáshoz használja a --check módot, ahogyan az alábbi példában látható.

`ansible-playbook gateway_tulip_auth.yml --limit test_device --check`

## Aranyeszköz-beállítás

A „golden **device**” provisioning munkafolyamat segítségével a következőket teheti: 1. **Válasszon ki egy „golden device”-t**: Válasszon ki egy megfelelően konfigurált referenciaeszközt. 2. **Készítsen biztonsági másolatot a „golden device” konfigurációjáról**: Rögzítse az összes komponens konfigurációját. 3. **Telepítse az új eszközökre**: Alkalmazza a „golden device” beállításait az új vagy cserélt eszközökre. 4. **Hitelesítsen és ellenőrizzen**: Regisztrálja az eszközöket, és ellenőrizze a telepítést.

### Leltárkonfiguráció

Konfigurálja a készletét a referenciaeszköz és a célkészülékek alapján.

Írja be a következőket a terminálba:

```[tulip\_edge\_devices]golden-device ansible\_host=172.16.15.130EIO-01-BCDEFA ansible\_host=172.16.15.140EIO-01-CDEFAB ansible\_host=172.16.15.141EIO-01-DEFABCansible\_host=172.16.15.150

[golden\_devices]EIO-01-ABCDEF

[newly\_provisioned]EIO-01-BCDEFAEIO-01-CDEFABEIO-01-DEFABC

[tulip\_edge\_devices:vars]

# Gyári hitelesítés

tulip\_factory\_url=https://your-factory.tulip.cotulip\_admin\_email=admin@yourcompany.comtulip\_admin\_password\_sha256=your\_sha256\_hash

# Ügyféladatok

tulip\_client\_name=YourCompanyNametulip\_client\_version=1.0.0tulip\_client\_description=Production Gateway```

### Jelszó-hash generálása

A jelszó-hash egy olyan biztonsági intézkedés, amely a jelszót egy fix hosszúságú, összekevert karakterekből álló karakterlánccá alakítja át, amelyet nem lehet könnyen visszafejteni vagy megfejteni. Ez a lépés elkerüli a fájlban tárolt egyszerű szöveges jelszavakkal kapcsolatos biztonsági kockázatokat.

A jelszavak biztonságos tárolásához szükséges [SHA256-hash](https://www.movable-type.co.uk/scripts/sha256.html) létrehozásához írja be a következőt:

`echo -n "your_password" | sha256sum | cut -d' ' -f1`

### Alapvető „golden device” beállítás

Írja be a következő kódot minden lépésnél.

1. Jelentkezzen be a golden eszközre:`ansible-playbook tulip.edge.login --limit golden-device`
2. Készítsen biztonsági másolatot a golden eszköz`konfigurációiról: ansible-playbook tulip.edge.backup_mqtt_broker --limit golden-device ansible-playbook tulip.edge.backup_mqtt_bridge --limit golden-device ansible-playbook tulip.edge.backup_drivers --limit golden-device ansible-playbook tulip.edge.backup_root_certs --limit golden-device`
3. Jelentkezzen be a célkészülékre:`ansible-playbook tulip.edge.login --limit newly_provisioned`
4. Telepítse a golden konfigurációkat a célkészülékekre```ansible-playbook tulip.edge.restore\_mqtt\_broker \ --limit newly\_provisioned \ -e mqtt\_broker\_backup\_name="golden-device-mqtt-broker-20241219-143022"

ansible-playbook tulip.edge.restore\_mqtt\_bridge \ --limit newly\_provisioned \ -e mqtt\_bridge\_backup\_name="golden-device-mqtt-bridge-20241219-143025"

ansible-playbook tulip.edge.restore\_drivers \ --limit newly\_provisioned \ -e drivers\_backup\_name="golden-device-drivers-20241219-143028"

ansible-playbook tulip.edge.restore\_root\_certs \ --limit newly\_provisioned \ -e root\_certs\_backup\_name="golden-device-root-certs-20241219-143030"```

1. Hitelesítés a`gyárbanansible-playbook tulip.edge.gateway_tulip_auth --limit newly_provisioned`
2. Regisztráció külső rendszerekben (opcionális)`ansible-playbook tulip.edge.register --limit newly_provisioned`
3. Ellenőrizze`` a telepítést: `ansible-playbook tulip.edge.gateway_device_info --limit newly_provisioned` `ansible-playbook tulip.edge.gateway_check_internet --limit newly_provisioned ```

### A „Golden Device” bevált gyakorlatok

A következő „aranykészülék” megközelítés biztosítja a Tulip Edge-készülékpark következetes, megbízható provisioningját, miközben teljes nyomonkövethetőséget és ellenőrzést biztosít a konfigurációs szabványok felett.

1. **A „golden device” karbantartása**: Tartsa naprakészen és gondosan karbantartva a „golden device”-t
2. **Készítsen rendszeres biztonsági másolatokat**: Készítsen rendszeres biztonsági másolatokat az aranykészülék konfigurációjáról
3. **Biztosítsa a verziókezelést**: Tárolja az aranykészülék biztonsági másolatait verziókezelésben, értelmes nevekkel
4. **Alkosson tesztelési folyamatot**: Mindig tesztelje az aranykészülék-konfigurációkat a staging környezetben, mielőtt azokat élesben használná
5. **Dokumentálja a „golden device” konfigurációját**: Dokumentálja a „golden device” konfigurációs szabványait és eljárásait
6. **Biztosítsa a hozzáférés-ellenőrzést**: Korlátozza a hozzáférést a referenciaeszközökhöz, és külön hitelesítő adatokat használjon
7. **Figyelje az állapotot és a folyamatokat**: Figyelje a referenciaeszközök állapotát és a biztonsági mentések létrehozásának folyamatait

### Hibaelhárítás

Így oldhatja meg a „golden device”-ekkel kapcsolatos gyakori problémákat:

#### A „golden device” nem érhető el

Először ellenőrizze a kapcsolatot a „golden” eszközzel. Futtassa a következő parancsot:`ansible golden-device -m ping`

Ellenőrizze a golden device állapotát. Futtassa:`ansible-playbook tulip.edge.gateway_device_info --limit golden-device`

#### A biztonsági mentés telepítése sikertelen

Először ellenőrizze, hogy létezik-e a biztonsági mentési fájl. Futtassa a következő parancsot:`ls backups/golden-device-mqtt-broker-*.json`

Használja a kiterjesztéssel ellátott biztonsági mentési elnevezést:`ansible-playbook tulip.edge.restore_mqtt_broker \ --limit target-device \ -e mqtt_broker_backup_name="golden-device-mqtt-broker-20241219-143022" \ -vv`

#### Hitelesítési problémák

A golden device újbóli hitelesítéséhez futtassa a következő parancsot:`ansible-playbook tulip.edge.login --limit golden-device`

A golden eszköz hitelesítő adatainak ellenőrzéséhez az inventory-ban futtassa a következő parancsot:`ansible-inventory --host golden-device`

{{snippet.Megtalálta, amit keresett?}}