Одновременное автоматическое обновление нескольких приложений с помощью Microsoft Application Virtualization Sequencer (App-V Sequencer)

Относится к:

  • Windows 10
  • Windows 11

Одновременное обновление нескольких приложений аналогично процессу, используемому для автоматического одновременного виртуализации нескольких приложений. Однако при обновлении также потребуется передать ранее созданные файлы пакета приложения командлету App-V Sequencer.

Начиная с Windows 10 версии 1703, выполнение командлета New-BatchAppVSequencerPackages или интерфейса App-V Sequencer записывает и сохраняет все настройки в качестве шаблона проекта App-V. Если вы хотите внести изменения в этот пакет позже, настройки автоматически загружаются из этого файла шаблона.

Примечание.

Если вы пытаетесь выполнить последовательность нескольких приложений одновременно, см. статью Автоматическая последовательность нескольких приложений одновременно с помощью Microsoft Application Virtualization Sequencer (App-V Sequencer).

Обновление нескольких приложений с помощью командлета PowerShell

Для одновременного обновления нескольких приложений необходимо создать файл ConfigFile со сведениями, связанными с каждым раундом обновления. Затем этот файл используется командлетом для запуска виртуальной машины в "чистой" контрольной точке, для копирования установщика с хост-устройства на виртуальную машину, а затем для запуска App-V Sequencer для отслеживания установленных приложений.

Создание файла ConfigFile для использования командлетом PowerShell

  1. Определите приложения, которые должны быть включены в пакет приложения, а затем откройте текстовый редактор, например Блокнот.

  2. Добавьте следующие XML-данные для каждого приложения:

    • <AppName>. Имя приложения, добавляемого в пакет.

    • <InstallerFolder>. Путь к папке с установщиком приложений.

    • <Installer>. Имя файла исполняемого файла приложения. Этот файл обычно является .exe или .msi файлом.

    • <InstallerOptions>. Параметры командной строки, необходимые для установки приложения.

    • <Package>. Путь к файлу к расположению пакетов App-V. Эти пакеты были созданы при виртуализации приложений.

    • <TimeoutInMinutes>. Максимальное время (в минутах), в течение которой командлет должен ожидать завершения обновления. Вы можете ввести разное значение для каждого приложения в зависимости от размера и сложности самого приложения.

    • <Cmdlet>. Определяет, использует ли секвенатор командлет или интерфейс Sequencer App-V. Значение True указывает секвенатору использовать обновление на основе командлетов, в то время как false указывает секвенатору использовать интерфейс Sequencer App-V. Командлет и интерфейс можно использовать вместе в одном файле ConfigFile для разных приложений.

    • <Enabled>. Указывает, следует ли упорядочение приложения. Значение True включает приложение, а false игнорирует его. Вы можете включить в пакетный файл любое количество приложений, но при необходимости включите только несколько из них.

      Пример.

      <?xml version="1.0"?>
      <Applications>
          <Application>
              <AppName>Skype for Windows Update</AppName>
              <InstallerFolder>D:\Install\Update\SkypeforWindows</InstallerFolder>
              <Installer>SkypeSetup.exe</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\Microsoft_Apps\skypeupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>true</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
          <Application>
              <AppName>Microsoft Power BI Update</AppName>
              <InstallerFolder>D:\Install\Update\PowerBI</InstallerFolder>
              <Installer>PBIDesktop.msi</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\MS_Apps\powerbiupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>true</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
      </Applications>
      
  3. Сохраните готовый файл под именем ConfigFile.

Запуск интерфейса Sequencer App-V и процесса установки приложения

  • Откройте PowerShell от имени администратора на хост-компьютере и выполните следующие команды, чтобы запустить пакетное обновление:

    New-BatchAppVSequencerPackages –ConfigFile <path_to_configfile> –VMName <name_of_vm> -OutputPath <path_to_your_output>
    

    Где <name_of_vm> — имя виртуальной машины с установленным app-V Sequencer, на котором будет выполняться пакетное обновление, и <path_to_your_output> полный путь к месту копирования обновленных пакетов.

    Командлет создает "чистую" контрольную точку на виртуальной машине. После создания контрольной точки командлет копирует первый установщик приложения, указанный в файле ConfigFile, с главного компьютера на виртуальную машину. Эта операция копирования открывает новый сеанс виртуальной машины (через VMConnect), что позволяет обновлять приложения из командной строки. После завершения обновления и создания пакета для первого приложения на виртуальной машине пакет копируется с виртуальной машины на главный компьютер, указанный в параметре OutputPath. Затем командлет переходит ко второму приложению в списке, возвращая виртуальную машину обратно в "чистую" контрольную точку и снова выполняя все шаги, пока второй пакет приложения не будет скопирован в папку выходных данных. Этот процесс продолжается до тех пор, пока не будут завершены все приложения, включенные в список. После последнего приложения виртуальная машина возвращается к "чистой" контрольной точке и отключается.

Обновление нескольких приложений с помощью интерфейса App-V Sequencer

Для одновременного обновления нескольких приложений необходимо создать файл ConfigFile для сбора всех сведений, связанных с каждым циклом обновления. Затем этот файл используется интерфейсом App-V Sequencer после создания "чистой" контрольной точки на виртуальной машине.

Создание файла ConfigFile для использования интерфейсом App-V Sequencer

  1. Определите приложения, которые необходимо обновить, а затем откройте текстовый редактор, например Блокнот.

  2. Добавьте следующие XML-данные для каждого приложения:

    • <AppName>. Имя приложения, добавляемого в пакет.

    • <InstallerFolder>. Путь к папке с установщиком приложений.

    • <Installer>. Имя файла исполняемого файла приложения. Этот файл обычно является .exe или .msi файлом.

    • <Package>. Путь к файлу к расположению пакетов App-V. Эти пакеты были созданы при виртуализации приложений.

    • <TimeoutInMinutes>. Максимальное время (в минутах) командлет должен ожидать завершения обновления. Вы можете ввести разное значение для каждого приложения в зависимости от размера и сложности самого приложения.

    • <Cmdlet>. Определяет, использует ли секвенатор командлет или интерфейс Sequencer App-V. Значение True указывает секвенатору использовать обновление на основе командлетов, в то время как false указывает секвенатору использовать интерфейс Sequencer App-V. Командлет и интерфейс можно использовать вместе в одном файле ConfigFile для разных приложений.

    • <Enabled>. Указывает, следует ли упорядочение приложения. Значение True включает приложение, а false игнорирует его. Вы можете включить в пакетный файл любое количество приложений, но при необходимости включите только несколько из них.

      Пример.

      <?xml version="1.0"?>
      <Applications>
          <Application>
              <AppName>Skype for Windows Update</AppName>
              <InstallerFolder>D:\Install\Update\SkypeforWindows</InstallerFolder>
              <Installer>SkypeSetup.exe</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\Microsoft_Apps\skypeupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>false</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
          <Application>
              <AppName>Microsoft Power BI Update</AppName>
              <InstallerFolder>D:\Install\Update\PowerBI</InstallerFolder>
              <Installer>PBIDesktop.msi</Installer>
              <InstallerOptions>/S</InstallerOptions>
              <Package>C:\App-V_Package\MS_Apps\powerbiupdate.appv</Package>
              <TimeoutInMinutes>20</TimeoutInMinutes>
              <Cmdlet>false</Cmdlet>
              <Enabled>true</Enabled>
          </Application>
      </Applications>
      

Запуск интерфейса Sequencer App-V и процесса установки приложения

  • Откройте PowerShell от имени администратора на хост-компьютере и выполните следующие команды, чтобы запустить пакетное обновление:

    New-BatchAppVSequencerPackages –ConfigFile <path_to_configfile> –VMName <name_of_vm> -OutputPath <path_to_your_output>
    

    Где <name_of_vm> — имя виртуальной машины с установленным приложением App-V Sequencer, на котором выполняется пакетное обновление, а <path_to_your_output> также полный путь к месту копирования обновленных пакетов.

    Этот командлет создает "чистую" контрольную точку на виртуальной машине. После создания контрольной точки командлет копирует первый установщик приложения, указанный в файле ConfigFile, с главного компьютера на виртуальную машину. Откроется новый сеанс виртуальной машины (через VMConnect), и обновление приложения начинается из командной строки. После завершения обновления и создания пакета для первого приложения на виртуальной машине пакет копируется с виртуальной машины на главный компьютер, указанный в параметре OutputPath . Затем командлет переходит ко второму приложению в списке, возвращая виртуальную машину обратно в "чистую" контрольную точку и снова выполняя все шаги, пока второй пакет приложения не будет скопирован в папку выходных данных. Этот процесс продолжается до тех пор, пока не будут завершены все приложения, включенные в список. После последнего приложения виртуальная машина возвращается к "чистой" контрольной точке и отключается.

Просмотр файлов журнала

Существует три типа файлов журналов, которые возникают при одновременной последовательности нескольких приложений:

  • New-BatchAppVSequencerPackages-time_stamp<>.txt. Находится в каталоге %temp%\AutoSequencer\Logs. Этот журнал содержит сведения о действиях обновления для каждого приложения, например "Копирование установщика на виртуальную машину", "Планирование задачи обновления" и т. д. Кроме того, если время ожидания приложения истекает, этот журнал содержит сбой вместе с контрольной точкой для устранения проблемы.
  • New-BatchAppVSequencerPackages-report-time_stamp<>.txt. Находится в папке OutputPath , указанной ранее. Этот журнал содержит сведения о соединениях, выполненных с виртуальной машиной, с указанием наличия каких-либо сбоев. Кроме того, в нем кратко содержатся сведения об успешном выполнении или неудаче для всех приложений.
  • Log.txt файл. Находится в папке Выходной пакет . Этот файл содержит весь код, включенный в командлет NewAppVSequencerPackage , включая разрешенные параметры.