Как проверить, является ли устройство Bare Metal или VSI в скрипте postinstall - PullRequest
0 голосов
/ 16 декабря 2018

У меня есть скрипт постинсталляции для CentOS, RedHat, Debian и Ubuntu.Как отличить, если устройство VSI или Bare Metal.

1 Ответ

0 голосов
/ 18 декабря 2018

Я предлагаю вам использовать «пользовательские метаданные» для обоих устройств, чтобы различать друг друга, просто устанавливая его с помощью имени устройства.

Вы можете установить пользовательские метаданные, например, для VSI, как показано ниже:

Метод: POST

https://[username]:[apiKey]@api.softlayer.com/rest/v3/SoftLayer_Virtual_Guest/[virtualGuestId]/setUserMetadata

Тело: Json

{
    "parameters": [
        [
                   "Virtual Guest"
           ]
      ]
}

Ссылка:

https://softlayer.github.io/reference/services/SoftLayer_Virtual_Guest/setUserMetadata/

Для аппаратного сервера этото же самое:

Метод: POST

https://[username]:[apiKey]@api.softlayer.com/rest/v3/SoftLayer_Hardware_Server/[hardwareId]/setUserMetadata

Тело: Json

{
    "parameters": [
        [
               "Hardware Server"
         ]
    ]
}

Ссылка:

https://softlayer.github.io/reference/services/SoftLayer_Hardware_Server/setUserMetadata/

Как только метаданные установлены, вы можете использовать метод «getUserMetadata» в своем «сценарии после установки», следующую команду curl можно выполнить на устройстве, не требуя имени пользователя и apiKey.

curl https://api.service.softlayer.com/rest/v3.1/SoftLayer_Resource_Metadata/getUserMetadata

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

https://softlayer.github.io/article/AutomatingStorage/

...