Pular para o conteúdo principal
  • Faça pedidos de forma rápida e simples
  • Visualize os pedidos e acompanhe o status de envio
  • Crie e acesse uma lista dos seus produtos

Używanie tagów z MAAS i Juju w systemie Ubuntu Server 14.04 LTS

Resumo: MAAS wdraża system znaczników w oparciu o fizyczne właściwości węzłów. Dokumentacja MAAS dotycząca znaczników omawia tę kwestię

Este artigo aplica-se a Este artigo não se aplica a Este artigo não está vinculado a nenhum produto específico. Nem todas as versões do produto estão identificadas neste artigo.

Sintomas

Autorem tego artykułu jest Mark Wenning, inżynier terenowy firmy Canonical.

Tagi do dokładniejszej kontroli klastrów MAAS i Juju

MAAS wdraża system znaczników w oparciu o fizyczne właściwości węzłów. Dokumentacja MAAS dotycząca znaczników omawia tę kwestię, głównie z punktu widzenia używania istniejących znaczników sprzętowych z opcją opisu dla –constraints. 

Nowe tagi można również tworzyć ręcznie, aby ułatwić wdrażanie klastrów MAAS i Juju oraz zarządzanie nimi.    

Na przykład, jeśli chcesz uruchomić Juju w klastrze MAAS i wymusić, aby węzeł bootstrap znajdował się na określonej maszynie, możesz najpierw oznaczyć węzeł, a następnie uruchomić bootstrap używając tagu jako ograniczenia.

$ juju bootstrap --constraints "tags=my-juju-bootstrap-node" –debug

Zauważ, że po ustawieniu takiego ograniczenia znacznika, następujące polecenia juju będą próbowały użyć tego ograniczenia, dopóki go nie anulujesz:

$ juju set-constraints "tags="

Innym zastosowaniem tagów jest oznaczenie kilku węzłów tym samym tagiem, a następnie wdrożenie tylko w tych węzłach:

$ juju deploy mysql –constraints "tags=my-juju-Dell-nodes" --debug

Zaloguj się do interfejsu wiersza poleceń MAAS

Aby można było korzystać z tych poleceń, należy zalogować się do serwera regionu MAAS:

$ maas login <profile-name> <host-url> <apikey>
  • <nazwa-profilu> moze byc dowolna, normalnie jest to "maas"
  • <host-url> to adres URL kontrolera regionalnego MAAS oraz interfejs API i wersja (tj.https://192.168.0.2/MAAS/api/1.0).
  • <apikey> to interfejs API MAAS lub klucz OAUTH utworzony podczas kompilacji kontrolera regionalnego MAAS.

Szczegółowe informacje można znaleźć w https://maas.io/docs/Kliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies. .

Po zakończeniu, aby wylogować się ze środowiska wiersza poleceń MAAS, uruchom polecenie

$ maas logout maas

Tworzenie tagów za pomocą opcji "description"

Jak omówiono w dokumentacji MAAS dotyczącej znaczników, znaczniki mogą być tworzone i przypisywane przy użyciu wyrażeń XPath na podstawie informacji "lshw" (sformatowanych jako XML) skojarzonych z węzłem.   Informacje te można uzyskać w dolnej części strony internetowej każdego węzła, klikając łącze "Show discovered details" w sekcji "Raw discovery data".   Część informacji "lshw" dla jednego z moich węzłów jest następująca:

...

<lshw:node id="t410" claimed="true" class="system" handle="DMI:0100">
<lshw:description>System</lshw:description>
<lshw:product>PowerEdge T410 ()</lshw:product>
<lshw:vendor>Dell Inc.</lshw:vendor>
<lshw:serial>RHXT410</lshw:serial>
<lshw:width units="bits">64</lshw:width>
<lshw:configuration>
<lshw:setting id="boot" value="normal"/>
<lshw:setting id="chassis" value="server"/>
<lshw:setting id="uuid" value="44454C4C-4800-1058-8054-D2C04F343130"/>
</lshw:configuration>
<lshw:capabilities>
...

Aby dodać więcej znaczników opisowych do węzłów w systemie, można wykonać:

$ maas maas tags new name="Dell_Machine" definition='//node[@class="system"]/vendor = "Dell Inc."'
$ maas maas tags new name="Intel_Machine" definition='//node[@class="system"]/vendor = "Intel Corp."'
$ maas maas tags new name="Virtual_Machine" definition='//node[@class="system"]/vendor = "QEMU"'
$ maas maas tags new name="Laptop" definition='//node[@class="system"]/description = "Laptop"'
$ maas maas tags new name="Rack_Mount" definition='//node[@class="system"]/description = "Rack Mount Chassis"'
$ maas maas tags new name="Mini_Tower" definition='//node[@class="system"]/description = "Mini Tower Computer"'
$ maas maas tags new name="System" definition='//node[@class="system"]/description = "System"'
$ maas maas tags new name="Desktop" definition='//node[@class="system"]/description = "Desktop Computer"'
$ maas maas tags new name="Blade" definition='//node[@class="system"]/description = "Multi-system"'
$ maas maas tags new name="Intel_CPU" definition='//node[@class="processor"]/vendor = "Intel Corp."'
$ maas maas tags new name="AMD_CPU" definition='//node[@class="processor"]/vendor = "Advanced Micro Devices [AMD]"'
$ maas maas tags new name="64bit" definition='//node[@class="system"]/width="64"'
$ maas maas tags new name="32bit" definition='//node[@class="system"]/width="32"'

Będą one oznaczać zgodne węzły znacznikami Dell_Machine, Intel_Machine, Virtual_Machine, Rack_Mount, System, Desktop, Laptop, Rack_Mount, Multi-system, 64-bit i/lub 32bit i będą również stosowane do wszystkich węzłów, które zostaną dodane później.

Ręczne tworzenie znaczników

Nowy znacznik raw jest tworzony za pomocą komendy CLI MAAS

$ maas <profile> tag new name="<tag-name>" [comment="<comment>"]
  • <profile> to nazwa profilu, która została skonfigurowana za pomocą polecenia login, zwykle "maas"
  • <nazwa-tagu> jest nazwą tagu
  • <Komentarz> jest opcjonalny, ale dobry pomysł.

Pamiętaj, że nie używamy tutaj opcji opisu.   Więc:

$ maas maas tag new name="my-juju-node" comment="my new juju node"

Ten znacznik można ręcznie przypisać do jednego lub większej liczby węzłów w systemie.

Przypisywanie znaczników

Aby przypisać tag do węzła lub węzłów, uruchom polecenie:

$ maas <profile> tag update-nodes <raw-tag-name> add="<system-id>"
  • <profile> to nazwa profilu skonfigurowana podczas logowania
  • <raw-tag-name> jest nazwą poprzednio utworzonego tagu
  • <System-ID> jest identyfikatorem systemowym węzła.

<Identyfikator> systemu?  Co to jest?

Jak znaleźć identyfikator systemowy węzła?   Jednym ze sposobów jest wyświetlenie informacji o węźle i wybranie ich ze struktury.  Polecenie interfejsu wiersza polecenia maaS

$ maas <profile> nodes list
  • <profile> to nazwa profilu skonfigurowana podczas logowania

zrzuci obiekt w formacie JSON (listę struktur) zawierający wszystkie informacje o węzłach.  Na przykład:

$ maas maas nodes list

[
{
"status": 4,
"macaddress_set": [
{
"resource_uri": "/MAAS/api/1.0/nodes/node-2349c038-d792-11e3-8df4-0c54a5f0ce34/macs/bc%3A30%3A5b%3Ae3%3A21%3A15/",
"mac_address": "bc:30:5b:e3:21:15"
}
],
"hostname": "T110ii.maas",
"zone": {
"resource_uri": "/MAAS/api/1.0/zones/default/",
"name": "default",
"description": ""
},
"routers": [],
"netboot": true,
"cpu_count": 8,
"storage": 239825,
"owner": null,
"system_id": "node-2349c038-d792-11e3-8df4-0c54a5f0ce34",
"architecture": "amd64/generic",
"memory": 8192,
"power_type": "ipmi",
"tag_names": [
"use-fastpath-installer",
"my-juju-boostrap-node"
],
"ip_addresses": [
"192.168.0.53"
],
"resource_uri": "/MAAS/api/1.0/nodes/node-2349c038-d792-11e3-8df4-0c54a5f0ce34/"
},
]

Dekodowanie danych wyjściowych

Pierwszy węzeł na liście ma atrybut "hostname" "T110ii.maas". Interesuje nas również atrybut system-id dla tego węzła: "system_id": "Node-2349C038-D792-11E3-8DF4-0C54A5F0CE34"

Możemy teraz przypisać nowy tag do tego węzła:

$ maas maas tag update-nodes my-juju-bootstap-node add=node-2349c038-d792-11e3-8df4-0c54a5f0ce34

Atrybut "tag-names" na rysunku 1 zawiera listę wszystkich tagów przypisanych do tego węzła, w tym nowego.

Skrypty ułatwiające dodawanie tagów

Opcje:

  • --login : zaloguj się przed przypisaniem tagów do węzłów. Ta opcja wymaga również
    • –OAuth : klucz API / OAuth używany do logowania się powyżej i ewentualnie, w zależności od konfiguracji,
    • –host_url : adres URL hosta używany do logowania powyżej
    • –profil: nazwa profilu używana do logowania się powyżej
  • --remove_tags : usuń tagi, które zostały wcześniej przypisane przez ten skrypt.
  • --add_tags: dodaj tag do każdego węzła na podstawie jego nazwy

Odniesienia

Interfejs wiersza poleceń Dokumentacja MAAS 1.6:

https://maas.io/docs/maas-cliKliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies.

Dokumentacja Juju (Ograniczenia) 

https://juju.ubuntu.com/docs/charms-constraints.htmlKliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies.

https://juju.ubuntu.com/docs/reference-constraints.htmlKliknięcie tego hiperłącza powoduje wyświetlenie strony spoza witryny Dell Technologies.

Causa

-

Resolução

-

Produtos afetados

Ubuntu Server LTS
Propriedades do artigo
Número do artigo: 000129999
Tipo de artigo: Solution
Último modificado: 23 jul. 2024
Versão:  4
Encontre as respostas de outros usuários da Dell para suas perguntas.
Serviços de suporte
Verifique se o dispositivo está coberto pelos serviços de suporte.