Учитывая, что вам нужна сохраняемость, вам нужно использовать виртуальные машины, а не масштабируемые наборы виртуальных машин, что может упростить обновление.
Подход, который вы используете в настоящее время, будет работать для первоначального создания виртуальной машины, но, как вы указали, обновления будут болезненными. После создания виртуальной машины она фактически не зависит от моментального снимка, и вам потребуется обновлять каждую виртуальную машину отдельно. Если это просто обновления ОС, это не так уж плохо, но если вы хотите делать обновления программного обеспечения и конфигурации, это может стать болезненным.
Чтобы справиться с этим, есть несколько вариантов:
- Вместо использования снимков создайте собственные образы. Вы можете автоматизировать это, используя Конструктор образов ВМ. Если вы хотите выполнить обновление, создайте обновленный образ, а затем разверните его на своих виртуальных машинах.
- Создайте виртуальные машины отдельно от моментального снимка, а затем перенесите управление обновлениями за пределы виртуальной машины, используя такие инструменты, как Azure Update Management для исправлений ОС, и инструменты управления конфигурацией, такие как Puppet, Chef, Ansible для управления программным обеспечением.
- Сохраняйте пользовательские данные на отдельных дисках виртуальной машины, а не на диске ОС или данных. Если вы хотите обновить, создайте новый снимок, уничтожьте старую виртуальную машину, создайте новую и подключите диск.