App-V 5 Infrastruktur Silent Setup

Im folgenden Beitrag installiere ich ein App-V 5.1 Infrastruktur in zwei Szenarien als Single Server Deployment und Multi Server Deployment per Command Line, bzw. Script.

Single Server Deployment

App-V ermöglicht es für kleine Umgebungen, alle Server Komponenten (Management Server, Publishing Server, Reporting Server, Package File Share und Datenbanken) auf einem Server zu betreiben. In den folgenden Zeilen erstelle ich ein solches Deployment.
Vorausgesetzt ist, dass Microsoft SQL Server 2008 R2 oder höher (supported bis SQL Server 2017) bereits auf dem Server installiert ist. Unterstützt werden alle Editionen, inkl. Express Edition. Zudem muss ein Service Account für App-V konfiguriert und entsprechend auf dem SQL Server berechtigt sein.
Weiterhin konfiguriere ich im folgenden Beispiel vom Standard abweichende Ports, um einen Port-Konflikt zu vermeiden.

Theoretisch ist es möglich, alle Funktionen mit einem Setup-Befehl ausführen, aus Gründen der Übersichtlichkeit teile ich das aber auf ein Setup pro Funktion auf.

Package File Share

Im ersten Schritt lege ich einen Ordner für die AppV-Packages an, konfiguriere die ACLs (AppV-Admins: Edit, AppV-Server: Read/Execute, Domain Users: Read/Execute) und lege ein File Share mit Full Access für die EVERYONE Gruppe an.

New-Item -ItemType Directory -Path 'C:\AppV-Packages'
icacls C:\AppV-Packages /grant "<AppV-Admin-Group>:(OI)(CI)(M)"    
icacls C:\AppV-Packages /grant "<AppV-Server-Group>:(OI)(CI)(RX)"
icacls C:\AppV-Packages /grant ""Domain Users:(OI)(CI)(RX)"
New-SmbShare -Name 'AppV-Packages' -Path 'C:\AppV-Packages' -FullAccess 'EVERYONE'

Management Server

Im zweiten Schritt wird der Management Server und die Management Server Datenbank installiert.

"<Drive>\App-V\App-V 5.1\Server\appv_server_setup.exe" /MANAGEMENT_SERVER /DB_PREDEPLOY_MANAGEMENT /MANAGEMENT_WEBSITE_NAME="Microsoft App-V Management Service" /MANAGEMENT_WEBSITE_PORT=8080 /MANAGEMENT_ADMINACCOUNT="<Domain>\<AppV-Admin>" /MANAGEMENT_SERVER_MACHINE_USE_LOCAL /MANAGEMENT_DB_SQLINSTANCE_USE_DEFAULT /MANAGEMENT_DB_NAME="AppV_Management" /MANAGEMENT_SERVER_INSTALL_ADMIN_ACCOUNT="<Domain>\<AppV-Service-Account>" /ACCEPTEULA=1 /QUIET

Publishing Server

Im dritten Schritt wird der Publishing Server zur Bereitstellung der App-V Pakete installiert.

"<Drive>\App-V\App-V 5.1\Server\appv_server_setup.exe" /PUBLISHING_SERVER /PUBLISHING_WEBSITE_NAME="Microsoft App-V Publishing Service" /PUBLISHING_WEBSITE_PORT=8081 /PUBLISHING_MGT_SERVER="http://localhost:8080 /ACCEPTEULA=1 /QUIET

Reporting Server (optional)

Optional installiert man im vierten Schritt noch den Reporting Server und die Reporting Server Datenbank.

"<Drive>\App-V\App-V 5.1\Server\appv_server_setup.exe" /REPORTING_SERVER /DB_PREDEPLOY_REPORTING /REPORTING_WEBSITE_NAME="Microsoft App-V Reporting Service" /REPORTING_WEBSITE_PORT=8082 /REPORTING_SERVER_MACHINE_USE_LOCAL /REPORTING_DB_SQLINSTANCE_USE_DEFAULT /REPORTING_DB_NAME="AppV_Reporting" /REPORTING_SERVER_INSTALL_ADMIN_ACCOUNT="<Domain>\<AppV-Service-Account>" /ACCEPTEULA=1 /QUIET
Multi Server Deployment

In einem Multi Server Deployment sind im optimalen Fall alle Rollen auf einem eigenen Server und die Datenbanken auf einem dedizierten SQL Server/Cluster. Wie beim Single Server Deployment muss ein Microsoft SQL Server 2008 R2 oder höher bereits installiert und ein Service Account für App-V konfiguriert und entsprechend auf dem SQL Server berechtigt sein. Im folgenden Beispiel gehe ich von diesem optimalen Fall aus und möchte zusätzlich den Publishing Server redundant auslegen. Zudem verwende ich für die Services jeweils Port 8080, da in diesem Szenario kein Port-Konflikt auftreten kann.

Package File Share

Analog zum Single Server Deployment lege ich auch hier im ersten Schritt einen Ordner für die AppV-Packages (diesmal auf einem dedizierten File Server) an und ein File Share an.

New-Item -ItemType Directory -Path 'C:\AppV-Packages'
icacls C:\AppV-Packages /grant "<AppV-Admin-Group>:(OI)(CI)(M)"    
icacls C:\AppV-Packages /grant "<AppV-Server-Group>:(OI)(CI)(RX)"
icacls C:\AppV-Packages /grant ""Domain Users:(OI)(CI)(RX)"
New-SmbShare -Name 'AppV-Packages' -Path 'C:\AppV-Packages' -FullAccess 'EVERYONE'

Management Server

Im zweiten Schritt wird der Management Server lokal und die Management Server Datenbank remote auf dem dedizierten SQL Server installiert.

"<Drive>\App-V\App-V 5.1\Server\appv_server_setup.exe" /MANAGEMENT_SERVER /DB_PREDEPLOY_MANAGEMENT /MANAGEMENT_WEBSITE_NAME="Microsoft App-V Management Service" /MANAGEMENT_WEBSITE_PORT=8080 /MANAGEMENT_ADMINACCOUNT="<Domain>\<AppV-Admin/-Group>" /MANAGEMENT_REMOTE_SERVER_MACHINE_ACCOUNT="<Domain>\<SQL-Server-Name>" /MANAGEMENT_DB_SQLINSTANCE_USE_DEFAULT /MANAGEMENT_DB_NAME="AppV_Management" /MANAGEMENT_SERVER_INSTALL_ADMIN_ACCOUNT="<Domain>\<AppV-Service-Account>" /ACCEPTEULA=1 /QUIET

Publishing Server 1/2

Im dritten Schritt installiere ich den Publishing Server zweimal auf zwei unterschiedlichen Servern.

"<Drive>\App-V\App-V 5.1\Server\appv_server_setup.exe" /PUBLISHING_SERVER /PUBLISHING_WEBSITE_NAME="Microsoft App-V Publishing Service" /PUBLISHING_WEBSITE_PORT=8080 /PUBLISHING_MGT_SERVER="http://<Management-Server-FQDN>:8080 /ACCEPTEULA=1 /QUIET

Reporting Server (optional)

Optional installiert man im vierten Schritt noch den Reporting Server lokal und die Reporting Server Datenbank remote auf dem dedizierten SQL Server.

"<Drive>\App-V\App-V 5.1\Server\appv_server_setup.exe" /REPORTING_SERVER /DB_PREDEPLOY_REPORTING /REPORTING_WEBSITE_NAME="Microsoft App-V Reporting Service" /REPORTING_WEBSITE_PORT=8080 /REPORTING_REMOTE_SERVER_MACHINE_ACCOUNT="<Domain>\<SQL-Server-Name>" /REPORTING_DB_SQLINSTANCE_USE_DEFAULT /REPORTING_DB_NAME="AppV_Reporting" /REPORTING_SERVER_INSTALL_ADMIN_ACCOUNT="<Domain>\<AppV-Service-Account>" /ACCEPTEULA=1 /QUIET

 

Quellen:
https://docs.microsoft.com/en-us/microsoft-desktop-optimization-pack/appv-v5/how-to-deploy-the-app-v-50-server-using-a-script
https://docs.microsoft.com/en-us/microsoft-desktop-optimization-pack/appv-v5/how-to-deploy-the-app-v-51-server-using-a-script

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.