Installatie van Mobility Service automatiseren

Let op

In dit artikel wordt verwezen naar CentOS, een Linux-distributie die de status End Of Life (EOL) nadert. Houd rekening met uw gebruik en plan dienovereenkomstig. Zie de Richtlijnen voor het einde van de levensduur van CentOS voor meer informatie.

In dit artikel wordt beschreven hoe u de installatie en updates voor de Mobility Service-agent in Azure Site Recovery automatiseert.

Wanneer u Site Recovery implementeert voor herstel na noodgevallen van on-premises VMware-VM's en fysieke servers naar Azure, installeert u de Mobility Service-agent op elke computer die u wilt repliceren. De Mobility Service legt gegevens op de computer vast en stuurt deze door naar de Site Recovery-processerver voor replicatie. U kunt de Mobility-service op een aantal manieren implementeren:

  • Push-installatie: Laat Site Recovery de Mobility-service-agent installeren wanneer u replicatie inschakelt voor een machine in Azure Portal.
  • Handmatige installatie: installeer de Mobility-service handmatig op elke computer. Meer informatie over push en handmatige installatie.
  • Geautomatiseerde implementatie: Automatiseer de installatie met hulpprogramma's voor software-implementatie, zoals Microsoft Configuration Manager of hulpprogramma's van derden, zoals JetPatch. Meer informatie

Automatische installatie en bijwerken biedt een oplossing als:

  • Uw organisatie staat geen push-installatie toe op beveiligde servers.
  • Voor uw bedrijfsbeleid moeten wachtwoorden periodiek worden gewijzigd. U moet een wachtwoord opgeven voor de push-installatie.
  • Uw beveiligingsbeleid staat het toevoegen van firewall-uitzonderingen voor specifieke computers niet toe.
  • U fungeert als hostingserviceprovider en wilt geen referenties voor klantencomputers opgeven die nodig zijn voor push-installatie met Site Recovery.
  • U moet agentinstallaties tegelijkertijd schalen naar veel servers.
  • U wilt installaties en upgrades plannen tijdens geplande onderhoudsvensters.

Vereisten

U hebt het volgende nodig om de installatie te automatiseren:

Voorbereiden op geautomatiseerde implementatie

De volgende tabel bevat een overzicht van hulpprogramma's en processen voor het automatiseren van de implementatie van Mobility Service.

Tool DETAILS Instructies
Configuratiebeheer 1. Controleer of u de bovenstaande vereisten hebt.

2. Implementeer herstel na noodgevallen door de bronomgeving in te stellen, inclusief het downloaden van een OVA-bestand om de Site Recovery-configuratieserver te implementeren als een VMware-VM met behulp van een OVF-sjabloon.

3. U registreert de configuratieserver bij de Site Recovery-service, stelt de Azure-doelomgeving in en configureert een replicatiebeleid.

4. Voor geautomatiseerde implementatie van Mobility Service maakt u een netwerkshare met de wachtwoordzin voor de configuratieserver en installatiebestanden van Mobility Service.

5. U maakt een Configuration Manager-pakket met de installatie of updates en bereidt u voor op de implementatie van Mobility Service.

6. Vervolgens kunt u replicatie naar Azure inschakelen voor de machines waarop de Mobility Service is geïnstalleerd.
Automatiseren met Configuration Manager
JetPatch 1. Controleer of u de bovenstaande vereisten hebt.

2. Implementeer herstel na noodgevallen door de bronomgeving in te stellen, waaronder het downloaden en implementeren van JetPatch Agent Manager voor Azure Site Recovery in uw Site Recovery-omgeving met behulp van een OVF-sjabloon.

3. U registreert de configuratieserver bij Site Recovery, stelt de Azure-doelomgeving in en configureert een replicatiebeleid.

4. Initialiseer en voltooi de JetPatch Agent Manager-configuratie voor geautomatiseerde implementatie.

5. In JetPatch kunt u een Site Recovery-beleid maken om de implementatie en upgrade van de Mobility Service-agent te automatiseren.

6. Vervolgens kunt u replicatie naar Azure inschakelen voor de machines waarop de Mobility Service is geïnstalleerd.
Automatiseren met JetPatch Agent Manager

Problemen met agentinstallatie in JetPatch oplossen

Automatiseren met Configuration Manager

De installatiebestanden voorbereiden

  1. Zorg ervoor dat u aan de vereisten voldoet.

  2. Maak een beveiligde SMB-share (Network File Share) die toegankelijk is voor de computer waarop de configuratieserver wordt uitgevoerd.

  3. Categoriseer in Configuration Manager de servers waarop u de Mobility-service wilt installeren of bijwerken. De ene verzameling moet alle Windows-servers bevatten, de andere alle Linux-servers.

  4. Maak op de netwerkshare een map:

    • Maak voor installatie op Windows-computers een map met de naam MobSvcWindows.
    • Maak voor installatie op Linux-machines een map met de naam MobSvcLinux.
  5. Meld u aan bij de configuratieservercomputer.

  6. Open een beheeropdrachtprompt op de configuratieservercomputer.

  7. Voer deze opdracht uit om het wachtwoordzinbestand te genereren:

    cd %ProgramData%\ASR\home\svsystems\bin
    genpassphrase.exe -v > MobSvc.passphrase
    
  8. Kopieer het bestand MobSvc.passphrase naar de Windows-map en de Linux-map.

  9. Als u naar de map met de installatiebestanden wilt bladeren, voert u deze opdracht uit:

    cd %ProgramData%\ASR\home\svsystems\pushinstallsvc\repository
    
  10. Kopieer deze installatiebestanden naar de netwerkshare:

    • Kopieer voor Windows Microsoft-ASR_UA_version_Windows_GA_date_Release.exe naar MobSvcWindows.
    • Kopieer voor Linux de volgende bestanden naar MobSvcLinux:
      • Microsoft-ASR_UARHEL6-64release.tar.gz
      • Microsoft-ASR_UARHEL7-64release.tar.gz
      • Microsoft-ASR_UASLES11-SP3-64release.tar.gz
      • Microsoft-ASR_UASLES11-SP4-64release.tar.gz
      • Microsoft-ASR_UAOL6-64release.tar.gz
      • Microsoft-ASR_UAUBUNTU-14.04-64release.tar.gz
  11. Zoals beschreven in de volgende procedures kopieert u de code naar de Windows- of Linux-mappen. We gaan ervan uit dat:

    • Het IP-adres van de configuratieserver is 192.168.3.121.
    • De beveiligde netwerkbestandsshare is \\ContosoSecureFS\MobilityServiceInstallers.

Code kopiëren naar de Windows-map

Kopieer de volgende code:

  • Sla de code op in de map MobSvcWindows als install.bat.
  • Vervang de [CSIP] tijdelijke aanduidingen in dit script door de werkelijke waarden van het IP-adres van uw configuratieserver.
  • Het script ondersteunt nieuwe installaties van de Mobility Service-agent en updates voor agents die al zijn geïnstalleerd.
Time /t >> C:\Temp\logfile.log
REM ==================================================
REM ==== Clean up the folders ========================
RMDIR /S /q %temp%\MobSvc
MKDIR %Temp%\MobSvc
MKDIR C:\Temp
REM ==================================================

REM ==== Copy new files ==============================
COPY M*.* %Temp%\MobSvc
CD %Temp%\MobSvc
REN Micro*.exe MobSvcInstaller.exe
REM ==================================================

REM ==== Extract the installer =======================
MobSvcInstaller.exe /q /x:%Temp%\MobSvc\Extracted
REM ==== Wait 10s for extraction to complete =========
TIMEOUT /t 10
REM =================================================

REM ==== Perform installation =======================
REM =================================================

CD %Temp%\MobSvc\Extracted
whoami >> C:\Temp\logfile.log
SET PRODKEY=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
REG QUERY %PRODKEY%\{275197FC-14FD-4560-A5EB-38217F80CBD1}
IF NOT %ERRORLEVEL% EQU 0 (
	echo "Product is not installed. Goto INSTALL." >> C:\Temp\logfile.log
	GOTO :INSTALL
) ELSE (
	echo "Product is installed." >> C:\Temp\logfile.log

	echo "Checking for Post-install action status." >> C:\Temp\logfile.log
	GOTO :POSTINSTALLCHECK
)

:POSTINSTALLCHECK
	REG QUERY "HKLM\SOFTWARE\Wow6432Node\InMage Systems\Installed Products\5" /v "PostInstallActions" | Find "Succeeded"
	If %ERRORLEVEL% EQU 0 (
		echo "Post-install actions succeeded. Checking for Configuration status." >> C:\Temp\logfile.log
		GOTO :CONFIGURATIONCHECK
	) ELSE (
		echo "Post-install actions didn't succeed. Goto INSTALL." >> C:\Temp\logfile.log
		GOTO :INSTALL
	)

:CONFIGURATIONCHECK
	REG QUERY "HKLM\SOFTWARE\Wow6432Node\InMage Systems\Installed Products\5" /v "AgentConfigurationStatus" | Find "Succeeded"
	If %ERRORLEVEL% EQU 0 (
		echo "Configuration has succeeded. Goto UPGRADE." >> C:\Temp\logfile.log
		GOTO :UPGRADE
	) ELSE (
		echo "Configuration didn't succeed. Goto CONFIGURE." >> C:\Temp\logfile.log
		GOTO :CONFIGURE
	)


:INSTALL
	echo "Perform installation." >> C:\Temp\logfile.log
	UnifiedAgent.exe /Role MS /InstallLocation "C:\Program Files (x86)\Microsoft Azure Site Recovery" /Platform "VmWare" /Silent
	IF %ERRORLEVEL% EQU 0 (
	    echo "Installation has succeeded." >> C:\Temp\logfile.log
		(GOTO :CONFIGURE)
    ) ELSE (
		echo "Installation has failed." >> C:\Temp\logfile.log
		GOTO :ENDSCRIPT
	)

:CONFIGURE
	echo "Perform configuration." >> C:\Temp\logfile.log
	cd "C:\Program Files (x86)\Microsoft Azure Site Recovery\agent"
	UnifiedAgentConfigurator.exe  /CSEndPoint "[CSIP]" /PassphraseFilePath %Temp%\MobSvc\MobSvc.passphrase
	IF %ERRORLEVEL% EQU 0 (
	    echo "Configuration has succeeded." >> C:\Temp\logfile.log
    ) ELSE (
		echo "Configuration has failed." >> C:\Temp\logfile.log
	)
	GOTO :ENDSCRIPT

:UPGRADE
	echo "Perform upgrade." >> C:\Temp\logfile.log
	UnifiedAgent.exe /Platform "VmWare" /Silent
	IF %ERRORLEVEL% EQU 0 (
	    echo "Upgrade has succeeded." >> C:\Temp\logfile.log
    ) ELSE (
		echo "Upgrade has failed." >> C:\Temp\logfile.log
	)
	GOTO :ENDSCRIPT

:ENDSCRIPT
	echo "End of script." >> C:\Temp\logfile.log

Code kopiëren naar de Linux-map

Kopieer de volgende code:

  • Sla de code op in de map MobSvcLinux als install_linux.sh.
  • Vervang de [CSIP] tijdelijke aanduidingen in dit script door de werkelijke waarden van het IP-adres van uw configuratieserver.
  • Het script ondersteunt nieuwe installaties van de Mobility Service-agent en updates voor agents die al zijn geïnstalleerd.
#!/usr/bin/env bash

rm -rf /tmp/MobSvc
mkdir -p /tmp/MobSvc
INSTALL_DIR='/usr/local/ASR'
VX_VERSION_FILE='/usr/local/.vx_version'

echo "=============================" >> /tmp/MobSvc/sccm.log
echo `date` >> /tmp/MobSvc/sccm.log
echo "=============================" >> /tmp/MobSvc/sccm.log

if [ -f /etc/oracle-release ] && [ -f /etc/redhat-release ]; then
    if grep -q 'Oracle Linux Server release 6.*' /etc/oracle-release; then
        if uname -a | grep -q x86_64; then
            OS="OL6-64"
            echo $OS >> /tmp/MobSvc/sccm.log
            cp *OL6*.tar.gz /tmp/MobSvc
        fi
    fi
elif [ -f /etc/redhat-release ]; then
    if grep -q 'Red Hat Enterprise Linux Server release 6.* (Santiago)' /etc/redhat-release || \
        grep -q 'CentOS Linux release 6.* (Final)' /etc/redhat-release || \
        grep -q 'CentOS release 6.* (Final)' /etc/redhat-release; then
        if uname -a | grep -q x86_64; then
            OS="RHEL6-64"
            echo $OS >> /tmp/MobSvc/sccm.log
            cp *RHEL6*.tar.gz /tmp/MobSvc
        fi
    elif grep -q 'Red Hat Enterprise Linux Server release 7.* (Maipo)' /etc/redhat-release || \
        grep -q 'CentOS Linux release 7.* (Core)' /etc/redhat-release; then
        if uname -a | grep -q x86_64; then
            OS="RHEL7-64"
            echo $OS >> /tmp/MobSvc/sccm.log
            cp *RHEL7*.tar.gz /tmp/MobSvc
                fi
    fi
elif [ -f /etc/SuSE-release ] && grep -q 'VERSION = 11' /etc/SuSE-release; then
    if grep -q "SUSE Linux Enterprise Server 11" /etc/SuSE-release && grep -q 'PATCHLEVEL = 3' /etc/SuSE-release; then
        if uname -a | grep -q x86_64; then
            OS="SLES11-SP3-64"
            echo $OS >> /tmp/MobSvc/sccm.log
            cp *SLES11-SP3*.tar.gz /tmp/MobSvc
        fi
    elif grep -q "SUSE Linux Enterprise Server 11" /etc/SuSE-release && grep -q 'PATCHLEVEL = 4' /etc/SuSE-release; then
        if uname -a | grep -q x86_64; then
            OS="SLES11-SP4-64"
            echo $OS >> /tmp/MobSvc/sccm.log
            cp *SLES11-SP4*.tar.gz /tmp/MobSvc
        fi
    fi
elif [ -f /etc/lsb-release ] ; then
    if grep -q 'DISTRIB_RELEASE=14.04' /etc/lsb-release ; then
       if uname -a | grep -q x86_64; then
           OS="UBUNTU-14.04-64"
           echo $OS >> /tmp/MobSvc/sccm.log
           cp *UBUNTU-14*.tar.gz /tmp/MobSvc
       fi
    fi
else
    exit 1
fi

if [ -z "$OS" ]; then
    exit 1
fi

Install()
{
    echo "Perform Installation." >> /tmp/MobSvc/sccm.log
    ./install -q -d ${INSTALL_DIR} -r Agent -v VmWare
    RET_VAL=$?
    echo "Installation Returncode: $RET_VAL" >> /tmp/MobSvc/sccm.log
    if [ $RET_VAL -eq 0 ]; then
        echo "Installation has succeeded. Proceed to configuration." >> /tmp/MobSvc/sccm.log
        Configure
    else
        echo "Installation has failed." >> /tmp/MobSvc/sccm.log
        exit $RET_VAL
    fi
}

Configure()
{
    echo "Perform configuration." >> /tmp/MobSvc/sccm.log
    ${INSTALL_DIR}/Vx/bin/UnifiedAgentConfigurator.sh -i [CSIP] -P MobSvc.passphrase
    RET_VAL=$?
    echo "Configuration Returncode: $RET_VAL" >> /tmp/MobSvc/sccm.log
    if [ $RET_VAL -eq 0 ]; then
        echo "Configuration has succeeded." >> /tmp/MobSvc/sccm.log
    else
        echo "Configuration has failed." >> /tmp/MobSvc/sccm.log
        exit $RET_VAL
    fi
}

Upgrade()
{
    echo "Perform Upgrade." >> /tmp/MobSvc/sccm.log
    ./install -q -v VmWare
    RET_VAL=$?
    echo "Upgrade Returncode: $RET_VAL" >> /tmp/MobSvc/sccm.log
    if [ $RET_VAL -eq 0 ]; then
        echo "Upgrade has succeeded." >> /tmp/MobSvc/sccm.log
    else
        echo "Upgrade has failed." >> /tmp/MobSvc/sccm.log
        exit $RET_VAL
    fi
}

cp MobSvc.passphrase /tmp/MobSvc
cd /tmp/MobSvc

tar -zxvf *.tar.gz

if [ -e ${VX_VERSION_FILE} ]; then
    echo "${VX_VERSION_FILE} exists. Checking for configuration status." >> /tmp/MobSvc/sccm.log
    agent_configuration=$(grep ^AGENT_CONFIGURATION_STATUS "${VX_VERSION_FILE}" | cut -d"=" -f2 | tr -d " ")
    echo "agent_configuration=$agent_configuration" >> /tmp/MobSvc/sccm.log
     if [ "$agent_configuration" == "Succeeded" ]; then
        echo "Agent is already configured. Proceed to Upgrade." >> /tmp/MobSvc/sccm.log
        Upgrade
    else
        echo "Agent is not configured. Proceed to Configure." >> /tmp/MobSvc/sccm.log
        Configure
    fi
else
    Install
fi

cd /tmp

Een pakket maken

  1. Meld u aan bij de Configuration Manager-console en ga naar Software Library>Application Management>Packages.

  2. Klik met de rechtermuisknop op Packages>Create Package.

  3. Geef pakketdetails op, waaronder een naam, beschrijving, fabrikant, taal en versie.

  4. Selecteer Dit pakket bevat bronbestanden.

  5. Klik op Bladeren en selecteer de netwerkshare en map die het relevante installatieprogramma bevat (MobSvcWindows of MobSvcLinux). Selecteer vervolgens Volgende.

    Schermopname van de wizard Pakket en Programma maken

  6. Selecteer in Kies het programmatype dat u wilt maken de pagina Standard Program>Next.

    Schermopname van de wizard Pakket en Programma maken waarin de optie Standard Program wordt weergegeven.

  7. Geef in Geef informatie over deze standaardprogrammapagina de volgende waarden op:

    Parameter Windows-waarde Linux-waarde
    Naam Microsoft Azure Mobility Service (Windows) installeren Installeer Microsoft Azure Mobility Service (Linux).
    Opdrachtregel Install.bat ./install_linux.sh
    Programma kan worden uitgevoerd Of een gebruiker al dan niet is aangemeld Of een gebruiker al dan niet is aangemeld
    Andere parameters Standaardinstelling gebruiken Standaardinstelling gebruiken

    Schermopname van de informatie die u kunt opgeven voor het standaardprogramma.

  8. Voer in Geef de vereisten voor dit standaardprogramma de volgende taken uit:

    • Voor Windows-computers selecteert u Dit programma kan alleen worden uitgevoerd op opgegeven platforms. Selecteer vervolgens de ondersteunde Windows-besturingssystemen en selecteer Volgende.
    • Voor Linux-machines selecteert u Dit programma kan worden uitgevoerd op elk platform. Selecteer Volgende.
  9. Voltooi de wizard.

Het pakket implementeren

  1. Klik in de Configuration Manager-console met de rechtermuisknop op het pakket en selecteer Inhoud distribueren.

    Schermopname van Configuration Manager-console

  2. Selecteer de distributiepunten waarop de pakketten moeten worden gekopieerd. Meer informatie.

  3. Voltooi de wizard. Het pakket wordt vervolgens gerepliceerd naar de opgegeven distributiepunten.

  4. Nadat de pakketdistributie is voltooid, klikt u met de rechtermuisknop op het pakket >implementeren.

    Schermopname van de Configuration Manager-console met de menuoptie Implementeren.

  5. Selecteer de Windows- of Linux-apparaatverzameling die u eerder hebt gemaakt.

  6. Selecteer distributiepunten op de pagina De bestemming van de inhoud opgeven.

  7. Stel in Instellingen opgeven in om te bepalen hoe deze software wordt geïmplementeerd, doel in op Vereist.

    Schermopname van de wizard Software implementeren

  8. Stel in Het schema voor deze implementatie opgeven een planning in. Meer informatie.

    • De Mobility-service wordt geïnstalleerd volgens de planning die u opgeeft.
    • Als u onnodig opnieuw opstarten wilt voorkomen, plant u de pakketinstallatie tijdens uw maandelijkse onderhoudsvenster of software-updatesvenster.
  9. Configureer op de pagina Distributiepunten de instellingen en voltooi de wizard.

  10. Controleer de voortgang van de implementatie in de Configuration Manager-console. Ga naar Bewakingsimplementaties<>>voor uw pakketnaam.>

De Mobility-service verwijderen

U kunt Configuration Manager-pakketten maken om de Mobility-service te verwijderen. Met het volgende script wordt bijvoorbeeld de Mobility-service verwijderd:

Time /t >> C:\logfile.log
REM ==================================================
REM ==== Check if Mob Svc is already installed =======
REM ==== If not installed no operation required ========
REM ==== Else run uninstall command =====================
REM ==== {275197FC-14FD-4560-A5EB-38217F80CBD1} is ====
REM ==== guid for Mob Svc Installer ====================
whoami >> C:\logfile.log
NET START | FIND "InMage Scout Application Service"
IF  %ERRORLEVEL% EQU 1 (GOTO :INSTALL) ELSE GOTO :UNINSTALL
:NOOPERATION
                echo "No Operation Required." >> c:\logfile.log
                GOTO :ENDSCRIPT
:UNINSTALL
                echo "Uninstall" >> C:\logfile.log
                MsiExec.exe /qn /x {275197FC-14FD-4560-A5EB-38217F80CBD1} /L+*V "C:\ProgramData\ASRSetupLogs\UnifiedAgentMSIUninstall.log"
:ENDSCRIPT

Volgende stappen

Schakel replicatie in voor VM's.