Назад | Перейти на главную страницу

Как обновить существующий образ упаковщика управления в Azure?

Я создал образ Ubuntu, выполнив следующий код

{
  "builders": [{
    "type": "azure-arm",

    "subscription_id": "XXXXXX",XXXXXXXX
     "client_id":  "XXXXXXX",
     "client_secret": "06XXXXXXX",
     "tenant_id":  "41X",XXXXXX

    "managed_image_resource_group_name": "myResourceGroup",
    "managed_image_name": "myubuntuPackerImage1234",

    "os_type": "Linux",
    "image_publisher": "Canonical",
    "image_offer": "UbuntuServer",
    "image_sku": "16.04-LTS",


    "location": "East US",
    "vm_size": "Standard_DS2_v2"
  }],
  "provisioners": [{
    "execute_command": "chmod +x {{ .Path }}; {{ .Vars }} sudo -E sh '{{ .Path }}'",
    "inline": [
      "apt-get update",
      "apt-get upgrade -y",
      "apt-get -y install nginx",

      "/usr/sbin/waagent -force -deprovision+user && export HISTSIZE=0 && sync"
    ],
    "inline_shebang": "/bin/sh -x",
    "type": "shell"
  }]
}

сборка упаковщика ubuntu.json

он будет успешно построен, и результат будет

OSType: Linux
ManagedImageResourceGroupName: myResourceGroup
ManagedImageName: packerimagewin2019up
ManagedImageId: /subscriptions/XXXXXXXXXX/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myubuntuPackerImage1234
ManagedImageLocation: eastus

Нашел один пиар - https://github.com/hashicorp/packer/issues/3785 но в случае управления диском, как получить URL?

если я бегу az image list он не покажет вам URL-адрес большого двоичного объекта .vdf, как я могу использовать приведенный выше вывод для создания нового обновления существующего изображения myubuntuPackerImage1234?

Насколько я понимаю, вы хотите использовать образ, который вы ранее создали с помощью Packer, в качестве исходного образа для повторного запуска Packer, верно?

Пример, на который вы ссылаетесь, не будет работать, потому что в этом примере используется упаковщик для создания образа диска на основе VHD (это более старый метод), тогда как вы используете управляемые образы / диски и поэтому не имеете URL-адреса так же, как VHD .

Насколько я могу судить, единственный способ использовать существующее управляемое изображение с упаковщиком - это опубликовать это изображение в общей галерее изображений (вы можете сделать это вручную или как часть сборки упаковщика). Затем вы можете ссылаться на это изображение из галереи, используя теги и параметр shared_image_gallery.

В качестве альтернативы вы можете создать исходный образ как VHD, а затем использовать URL-адрес, но тогда вы вернетесь к более старому методу.