Пользовательское расширение в VMSS

После запуска VMSS я хотел запустить сценарий оболочки как часть расширения VMSS. Это то, что я пробовал, но скрипт не сработал.

Мой первоначальный анализ показывает, что сценарий недоступен для VMSS; в этом случае, как скопировать сценарий вместе со сборкой tf, я не хочу загружать в хранилище BLOB-объектов и указывать здесь путь. В случае с виртуальной машиной я могу добиться того же, используя средство подготовки файлов и удаленный запуск.

..................................
extension {
    name = "StartupScript"
    publisher = "Microsoft.OSTCExtensions"
    type = "CustomScriptForLinux"
    type_handler_version = "1.5"
    settings = <<-SETTINGS
    {
        "commandToExecute": "${var.startup_command}",
        #Script path from where my TF is running
        "script": "${base64encode("/bin/sh ./path_to_custom_scripts/my_script.sh script_param")}",
        "enableInternalDNSCheck": "false"
    }
    SETTINGS
  }
  ..................................

Не нашел много информации в extension.log, любая помощь очень заметна.


person lambodar    schedule 30.11.2018    source источник


Ответы (1)


Нет, вы не можете использовать средство подготовки файлов, по крайней мере, я не вижу четкого пути вперед с этим подходом, поскольку это не одна виртуальная машина, а скорее объединение виртуальных машин.

Что касается вашего исходного вопроса, реального способа сделать это нет, если вам нужно расширение скрипта, вы должны загрузить его куда-нибудь, чтобы узлы его вытащили.

Вы можете попробовать и использовать свойство customData. Это позволяет вам хранить что-то на узле vm \ vmss, чтобы оно было добавлено к нему во время подготовки.

person 4c74356b41    schedule 30.11.2018
comment
Спасибо за информацию. Будет ли полезен подход customData при увеличении и уменьшении масштаба? - person lambodar; 30.11.2018
comment
определить полезно? он будет присутствовать на всех узлах vmss, когда они будут созданы, независимо от того, каким образом. поэтому он будет присутствовать во время операций масштабирования (не поможет вам при масштабировании) - person 4c74356b41; 30.11.2018
comment
На самом деле, для ресурса масштабируемого набора виртуальных машин четкий путь вперед будет для того, чтобы принять средство подготовки файлов, так что один и тот же файл будет размещен на каждом узле набора. Это позволит обойти customData, которые могут быть недоступны в корпоративной среде, где команда инженеров компании, возможно, уже эффективно использовала их. - person volvox; 04.10.2019
comment
вы можете создать для этого элемент uservoice. Я обычно использую Powershell DSC для настройки узлов VMSS при подготовке - person 4c74356b41; 04.10.2019