メイン コンテンツに進む
  • すばやく簡単にご注文が可能
  • 注文内容の表示、配送状況をトラック
  • 会員限定の特典や割引のご利用
  • 製品リストの作成とアクセスが可能
  • 「Company Administration(会社情報の管理)」では、お使いのDell EMCのサイトや製品、製品レベルでのコンタクト先に関する情報を管理できます。

Использование меток с MAAS и Juju в Ubuntu Server 14.04 LTS

概要: В MAAS реализована система тегов, основанная на физических свойствах узлов. Это обсуждается в документации MAAS по тегам

この記事は自動翻訳されたものである可能性があります。品質に関するフィードバックがある場合は、このページの下部にあるフォームを使用してお知らせください。

文書の内容


現象

Эта статья была написана Марком Веннингом (Mark Wenning), каноническим инженером по эксплуатации на местах.

Теги для более точного управления кластерами MAAS и Juju

В MAAS реализована система тегов, основанная на физических свойствах узлов. В документации MAAS по тегам это обсуждается, в основном с точки зрения использования существующих аппаратных тегов с опцией описания для –constraints. 

Новые метки также можно создавать вручную, чтобы упростить развертывание кластеров MAAS и Juju и управление ими.    

Например, если вы хотите выполнить начальную загрузку Juju в кластере MAAS и принудительно разместить узел начальной загрузки на определенном компьютере, вы можете сначала пометить узел, а затем выполнить начальную загрузку, используя тег в качестве ограничения.

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

Обратите внимание, что после того, как вы установили подобное ограничение тега, следующие команды juju будут пытаться использовать ограничение до тех пор, пока вы его не отмените:

$ juju set-constraints "tags="

Теги также используются для маркировки нескольких узлов одним и тем же тегом, а затем развертывания только на этих узлах:

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

Войдите в интерфейс командной строки MAAS

Перед использованием этих команд необходимо выполнить вход на сервер региона MAAS:

$ maas login <profile-name> <host-url> <apikey>
  • <profile-name> может быть любым, обычно это "maaS"
  • <host-url> — это URL-адрес регионального контроллера MAAS, а также api и версия (т.е.https://192.168.0.2/MAAS/api/1.0).
  • <apikey> - это MAAS api или ключ oauth, созданный при построении регионального контроллера MAAS.

Подробные сведения см. в https://maas.io/docs/Эта гиперссылка позволяет перейти на сайт за пределами Dell Technologies. .

После этого для выхода из среды интерфейса командной строки MAAS выполните команду

$ maas logout maas

Создание тегов с помощью опции "description"

Как описано в документации MAAS по тегам, теги могут быть созданы и назначены с помощью выражений XPath на основе информации «lshw» (в формате XML), связанной с узлом.   Вы можете получить доступ к этой информации в нижней части веб-страницы каждого узла, нажав на ссылку «Show discovered details» в разделе «Raw discovery data».   Часть информации «lshw» для одного из моих узлов выглядит следующим образом:

...

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

Чтобы добавить более информативные теги к узлам в системе, можно выполнить:

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

Они будут помечать соответствующие узлы тегами Dell_Machine, Intel_Machine, Virtual_Machine, Rack_Mount, System, Desktop, Laptop, Rack_Mount, Multi-system, 64-bit и/или 32bit, а также применяются ко всем узлам, которые будут добавлены позже.

Создание тегов вручную

Новый необработанный тег создается с помощью команды MAAS cli

$ maas <profile> tag new name="<tag-name>" [comment="<comment>"]
  • <Profile> — это имя профиля, которое было задано с помощью команды login, обычно «maaS»
  • <tag-name> - это имя тега
  • <Комментарий> необязателен, но это хорошая идея.

Обратите внимание, что здесь мы не используем опцию description.   Так:

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

Этот код можно вручную присвоить одному или нескольким узлам в системе.

Назначение тегов

Чтобы назначить тег узлу или узлам, выполните команду:

$ maas <profile> tag update-nodes <raw-tag-name> add="<system-id>"
  • <profile> — имя профиля, заданное при входе в систему
  • <raw-tag-name> — это имя ранее созданного тега
  • <system-id> — системный идентификатор узла.

<Идентификатор> системы?  Что это?

Как узнать системный идентификатор узла?   Один из способов — вывести список информации об узле и выбрать ее из структуры.  Команда maas cli

$ maas <profile> nodes list
  • <profile> — имя профиля, заданное при входе в систему

выгрузит объект в формате JSON (список структур), содержащий всю информацию об узлах.  Пример.

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

Расшифровка выходных данных

Первый узел в списке имеет атрибут «hostname» «T110ii.maas». Нас также интересует атрибут system-id для этого узла: "system_id": «узел-2349c038-d792-11e3-8df4-0c54a5f0ce34»

Теперь мы можем присвоить новый тег этому узлу:

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

Атрибут "tag-names" на рисунке 1 перечисляет все теги, назначенные этому узлу, включая новый.

Скрипты, помогающие добавлять теги

Параметры:

  • --login : вход в систему перед назначением тегов узлам. Для этого варианта также требуется
    • –oauth : ключ api / oauth, используемый для входа в систему выше и, возможно, в зависимости от ваших настроек,
    • –host_url : URL-адрес хоста, используемый для входа в систему выше
    • –profile : имя профиля, используемое для входа в систему выше
  • --remove_tags : удалить теги, которые были назначены ранее этим скриптом.
  • --add_tags: добавить тег к каждому узлу на основе его имени

Справочные материалы

Документация по интерфейсу командной строки MAAS 1.6:

https://maas.io/docs/maas-cliЭта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.

Документация Juju (ограничения) 

https://juju.ubuntu.com/docs/charms-constraints.htmlЭта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.

https://juju.ubuntu.com/docs/reference-constraints.htmlЭта гиперссылка позволяет перейти на сайт за пределами Dell Technologies.

原因

-

解決方法

-

文書のプロパティ


影響を受ける製品

Ubuntu Server LTS

最後に公開された日付

23 7月 2024

バージョン

4

文書の種類

Solution