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.

Bruke merker med MAAS og Juju i Ubuntu-server 14.04 LTS

Summary: MAAS implementerer et system med tagger basert på de fysiske egenskapene til nodene. MAAS-dokumentasjonen om tagger drøfter 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 artikkelen ble skrevet Wenning, Canonical Field Engineer.

Koder for bedre kontroll over MAAS- og Juju-klynger

MAAS implementerer et system med tagger basert på de fysiske egenskapene til nodene. MAAS-dokumentasjonen om tagger diskuterer dette, hovedsakelig med tanke på å bruke eksisterende maskinvarekoder med beskrivelsesalternativet for –constraints. 

Nye koder kan også opprettes manuelt for å gjøre det enklere å distribuere og administrere MAAS- og Juju-klynger.    

Hvis du for eksempel vil starte Juju på en MAAS-klynge og tvinge oppstartsstrap-noden til å være på en bestemt maskin, kan du kode noden først og deretter starte opp med koden som en begrensning.

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

Vær oppmerksom på at når du har angitt en taggbegrensning som denne, vil følgende juju-kommandoer forsøke å bruke begrensningen til du avbryter den:

$ juju set-constraints "tags="

En annen bruk av tagger er å merke flere noder med samme tag og deretter distribuere til bare disse nodene:

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

Logg på MAAS-kommandolinjegrensesnittet

Før du kan bruke disse kommandoene, må du logge på MAAS-regionserveren:

$ maas login <profile-name> <host-url> <apikey>
  • <Profilnavn> kan være hva du vil, normalt er dette "Maas"
  • <host-url> er URL-adressen til den regionale MAAS-kontrolleren, pluss API og versjon (dvs.https://192.168.0.2/MAAS/api/1.0).
  • <apikey> er MAAS-api- eller oauth-nøkkelen som ble opprettet da den regionale MAAS-kontrolleren ble bygget.

Se https://maas.io/docs/Denne hyperkoblingen tar deg til et nettsted utenfor Dell Technologies. for mer informasjon.

Når du er ferdig, logger du av MAAS CLI-miljøet ved å kjøre

$ maas logout maas

Opprette tagger ved hjelp av alternativet "beskrivelse"

Som beskrevet i MAAS-dokumentasjonen om koder, kan koder opprettes og tilordnes ved hjelp av XPath-uttrykk, basert på "lshw"-informasjonen (formatert som XML) som er knyttet til noden.   Du får tilgang til denne informasjonen nederst på hver nodenettside ved å klikke på koblingen "Vis oppdagede detaljer" under "Rå oppdagelsesdata".   En del av "lshw"-informasjonen for en av nodene mine 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 legge til flere beskrivende koder for noder i systemet, kan du utføre følgende:

$ 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 merke kompatible noder med kodene Dell_Machine, Intel_Machine, Virtual_Machine, Rack_Mount, System, stasjonær, bærbar PC, Rack_Mount, Multisystem, 64bit og / eller 32bit, og brukes også på noder som legges til senere.

Opprette koder manuelt

En ny råkode opprettes med kommandoen MAAS cli

$ maas <profile> tag new name="<tag-name>" [comment="<comment>"]
  • <Profile> er profilnavnet som ble satt opp med påloggingskommandoen, vanligvis "Maas"
  • <Tag-name> er navnet på taggen
  • <> Kommentar er valgfritt, men en god idé.

Vær oppmerksom på at vi ikke bruker beskrivelsesalternativet her.   Så:

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

Denne taggen kan tilordnes manuelt til én eller flere noder i systemet.

Tilordne tagger

Hvis du vil tilordne en tagg til en node eller noder, kjører du kommandoen:

$ maas <profile> tag update-nodes <raw-tag-name> add="<system-id>"
  • <Profil> er profilnavnet som settes opp under pålogging
  • <Raw-tag-name> er navnet på den tidligere opprettede taggen
  • <System-ID> er system-ID-en til noden.

<System-ID>?  Hva er det?

Hvordan finner du system-ID-en til en node?   En måte er å liste opp nodeinformasjonen og plukke den ut av strukturen.  Maas cli-kommandoen

$ maas <profile> nodes list
  • <Profil> er profilnavnet som settes opp under pålogging

vil dumpe ut et JSON-formatert objekt (liste over strukturer) som inneholder all informasjon om nodene.  Eksempel:

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

Dekoding av utdataene

Den første noden i listen har et "hostname"-attributt på "T110ii.maas". Vi er også interessert i system-id-attributtet for denne noden: "system_id": "node-2349c038-d792-11e3-8df4-0c54a5f0ce34"

Vi kan nå tilordne den nye taggen til denne noden:

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

"tag-names"-attributtet i figur 1 viser alle taggene som er tilordnet denne noden, inkludert den nye.

Skript som hjelper deg med å legge til koder

Alternativer:

  • --login: logg inn før du tilordner kodene til nodene. Dette alternativet krever også
    • –oauth : API / OAuth-nøkkelen som brukes til å logge inn over og muligens, avhengig av oppsettet ditt,
    • –host_url: verts-URL brukt til å logge inn ovenfor
    • –profil: profilnavn brukt til å logge inn ovenfor
  • --remove_tags : Fjern kodene som ble tildelt tidligere av dette skriptet.
  • --add_tags: Legg til en tag til hver node basert på navnet

Referanser

Kommandolinjegrensesnitt MAAS 1.6 dokumentasjon:

https://maas.io/docs/maas-cliDenne hyperkoblingen tar deg til et nettsted utenfor Dell Technologies.

Juju-dokumentasjon (begrensninger) 

https://juju.ubuntu.com/docs/charms-constraints.htmlDenne hyperkoblingen tar deg til et nettsted utenfor Dell Technologies.

https://juju.ubuntu.com/docs/reference-constraints.htmlDenne hyperkoblingen tar deg til et nettsted utenfor Dell Technologies.

Cause

-

Resolution

-

Article Properties


Affected Product

Ubuntu Server LTS

Last Published Date

23 Jul 2024

Version

4

Article Type

Solution