Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

Brug af tags med MAAS og Juju i Ubuntu Server 14.04 LTS

Summary: MAAS implementerer et system af tags baseret på nodernes fysiske egenskaber. MAAS-dokumentationen på tags diskuterer dette

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Symptoms

Denne artikel blev skrevet Mark Wenning, kanonisk feltingeniør.

Tags til finere kontrol af MAAS- og Juju-klynger

MAAS implementerer et system af tags baseret på nodernes fysiske egenskaber. MAAS-dokumentationen på tags diskuterer dette, for det meste ud fra synspunktet om at bruge eksisterende hardwaretags med beskrivelsesindstillingen for –begrænsninger. 

Nye tags kan også oprettes manuelt for at gøre det nemmere at udrulle og administrere MAAS- og Juju-klynger.    

Hvis du f.eks. vil bootstrap Juju på en MAAS-klynge og tvinge bootstrap-noden til at være på en bestemt maskine, kan du tagge noden først og derefter bootstrap ved hjælp af tagget som en begrænsning.

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

Bemærk, at når du har angivet en tagbegrænsning som denne, vil følgende juju-kommandoer forsøge at bruge begrænsningen, indtil du annullerer den:

$ juju set-constraints "tags="

En anden brug af tags er at markere flere noder med det samme tag og derefter kun udrulle til disse noder:

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

Log på MAAS-kommandolinjegrænsefladen

Før du kan bruge disse kommandoer, skal du logge på MAAS-områdeserveren:

$ maas login <profile-name> <host-url> <apikey>
  • <profilnavn> kan være hvad du vil, normalt er dette "maas"
  • <host-url> er URL'en til MAAS' regionale controller plus API og version (dvs.https://192.168.0.2/MAAS/api/1.0).
  • <apikey er den MAAS api-> eller oauth-nøgle, der blev oprettet, da den regionale MAAS-controller blev bygget.

Se https://maas.io/docs/Dette hyperlink fører dig til et websted uden for Dell Technologies. for yderligere oplysninger.

Når du er færdig, skal du køre for at logge af MAAS cli-miljøet

$ maas logout maas

Oprettelse af tags ved hjælp af indstillingen "beskrivelse"

Som beskrevet i MAAS-dokumentationen om tags kan tags oprettes og tildeles ved hjælp af XPath-udtryk baseret på de "lshw"-oplysninger (formateret som XML), der er knyttet til noden.   Du kan få adgang til disse oplysninger nederst på hver nodewebside ved at klikke på linket "Vis registrerede detaljer" under "Rå registreringsdata".   En del af "lshw"-oplysningerne for en af mine noder følger:

...

<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>
...

Hvis du vil føje flere beskrivende tags til noder i systemet, kan du udføre:

$ 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"'

Disse vil tagge kompatible noder med taggene Dell_Machine, Intel_Machine, Virtual_Machine, Rack_Mount, System, Desktop, Laptop, Rack_Mount, Multi-system, 64bit og/eller 32bit, og anvendes også på alle noder, der tilføjes senere.

Oprettelse af tags manuelt

Der oprettes et nyt raw-tag med MAAS cli-kommandoen

$ maas <profile> tag new name="<tag-name>" [comment="<comment>"]
  • <Profil> er det profilnavn, der blev konfigureret med login-kommandoen, normalt "Maas"
  • <tag-name> er navnet på tagget
  • <Kommentar> er valgfri, men en god idé.

Bemærk, at vi ikke bruger beskrivelsesindstillingen her.   Så:

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

Denne kode kan tildeles manuelt til en eller flere noder i systemet.

Tildeling af tags

Hvis du vil tildele et mærke til en eller flere noder, skal du køre kommandoen:

$ maas <profile> tag update-nodes <raw-tag-name> add="<system-id>"
  • <Profil> er det profilnavn, der blev oprettet under login
  • <raw-tag-name> er navnet på det tidligere oprettede tag
  • <System-id> er nodens system-id.

<System-id>?  Hvad er det?

Hvordan finder du system-id'et for en node?   En måde er at liste nodeoplysningerne og vælge dem ud af strukturen.  Maas cli-kommandoen

$ maas <profile> nodes list
  • <Profil> er det profilnavn, der blev oprettet under login

vil dumpe et JSON-formateret objekt (liste over strukturer), der indeholder alle oplysninger om noderne.  F.eks.:

$ 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/"
},
]

Afkodning af output

Den første node på listen har attributten "hostname" på "T110ii.maas". Vi er også interesserede i system-id-attributten for denne node: "system_id": "Node-2349C038-D792-11E3-8DF4-0C54A5F0CE34"

Vi kan nu tildele det nye tag til denne node:

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

Attributten "tag-names" i figur 1 viser alle de tags, der er tildelt denne node, herunder den nye.

Scripts, der hjælper dig med at tilføje tags

Indstillinger:

  • --login : Log ind, før du tildeler tags til noderne. Denne mulighed kræver også
    • –oauth : API / OAuth-nøglen, der bruges til at logge ind ovenfor og muligvis afhængigt af din opsætning,
    • –host_url : værts-URL, der bruges til at logge ind ovenfor
    • –profil : profilnavn, der bruges til at logge ind ovenfor
  • --remove_tags : Fjern de tags, der tidligere blev tildelt af dette script.
  • --add_tags: Tilføj et tag til hver node baseret på dens navn

Referencer

Kommandolinjegrænseflade MAAS 1.6 Dokumentation:

https://maas.io/docs/maas-cliDette hyperlink fører dig til et websted uden for Dell Technologies.

Juju-dokumentation (begrænsninger) 

https://juju.ubuntu.com/docs/charms-constraints.htmlDette hyperlink fører dig til et websted uden for Dell Technologies.

https://juju.ubuntu.com/docs/reference-constraints.htmlDette hyperlink fører dig til et websted uden for Dell Technologies.

Cause

Resolution

Article Properties


Affected Product

Ubuntu Server LTS

Last Published Date

23 Jul 2024

Version

4

Article Type

Solution