Share via


Mobility Hizmeti yüklemesini otomatikleştirme

Dikkat

Bu makalede, Kullanım Süresi Sonu (EOL) durumuna yakın bir Linux dağıtımı olan CentOS'a başvuruda bulunur. Lütfen kullanımınızı göz önünde bulundurun ve uygun şekilde planlayın. Daha fazla bilgi için bkz . CentOS Kullanım Süresi Sonu kılavuzu.

Bu makalede, Azure Site Recovery'de Mobility Service aracısı için yükleme ve güncelleştirmeleri otomatikleştirme işlemi açıklanmaktadır.

Şirket içi VMware VM'lerinin ve fiziksel sunucuların olağanüstü durum kurtarması için Site Recovery'yi Azure'a dağıttığınızda, çoğaltmak istediğiniz her makineye Mobility Service aracısını yüklersiniz. Mobility Hizmeti makinedeki veri yazma işlemlerini yakalar ve çoğaltma için Site Recovery işlem sunucusuna iletir. Mobility Hizmetini birkaç yolla dağıtabilirsiniz:

  • Anında yükleme: Azure portalında bir makine için çoğaltmayı etkinleştirdiğinizde Site Recovery'nin Ulaşım hizmeti aracısını yüklemesine izin verin.
  • El ile yükleme: Ulaşım hizmeti her makineye el ile yükleyin. Gönderme ve el ile yükleme hakkında daha fazla bilgi edinin.
  • Otomatik dağıtım: Microsoft Configuration Manager gibi yazılım dağıtım araçları veya JetPatch gibi üçüncü taraf araçlarla yüklemeyi otomatikleştirin. Daha fazla bilgi edinin

Otomatik yükleme ve güncelleştirme aşağıdakiler için bir çözüm sağlar:

  • Kuruluşunuz korumalı sunucularda anında yükleme işlemine izin vermiyor.
  • Şirket ilkeniz, parolaların düzenli aralıklarla değiştirilmesini gerektirir. Gönderme yüklemesi için bir parola belirtmeniz gerekir.
  • Güvenlik ilkeniz belirli makineler için güvenlik duvarı özel durumlarının eklenmesine izin vermiyor.
  • Barındırma hizmeti sağlayıcısı olarak görev yapıyor ve Site Recovery ile anında yükleme için gereken müşteri makine kimlik bilgilerini sağlamak istemiyorsunuz.
  • Aracı yüklemelerini aynı anda birçok sunucuya ölçeklendirmeniz gerekir.
  • Planlı bakım pencereleri sırasında yüklemeleri ve yükseltmeleri zamanlamak istiyorsunuz.

Önkoşullar

Yüklemeyi otomatikleştirmek için aşağıdaki öğelere ihtiyacınız vardır:

Otomatik dağıtıma hazırlanma

Aşağıdaki tabloda Mobility Hizmeti dağıtımını otomatikleştirmeye yönelik araçlar ve işlemler özetlemektedir.

Araç Ayrıntılar Talimat -ları
Configuration Manager 1. Yukarıda listelenen önkoşullara sahip olduğunuzu doğrulayın.

2. Site Recovery yapılandırma sunucusunu OVF şablonu kullanarak VMware VM olarak dağıtmak için bir OVA dosyası indirmek de dahil olmak üzere kaynak ortamı ayarlayarak olağanüstü durum kurtarmayı dağıtın.

3. Yapılandırma sunucusunu Site Recovery hizmetine kaydeder, hedef Azure ortamını ayarlar ve bir çoğaltma ilkesi yapılandırabilirsiniz.

4. Otomatik Mobility Hizmeti dağıtımı için yapılandırma sunucusu parolasını ve Mobility Hizmeti yükleme dosyalarını içeren bir ağ paylaşımı oluşturursunuz.

5. Yükleme veya güncelleştirmeleri içeren bir Configuration Manager paketi oluşturur ve Mobility Service dağıtımına hazırlanırsınız.

6. Daha sonra Mobility Hizmeti'nin yüklü olduğu makineler için Azure'a çoğaltmayı etkinleştirebilirsiniz.
Configuration Manager ile otomatikleştirme
JetPatch 1. Yukarıda listelenen önkoşullara sahip olduğunuzu doğrulayın.

2. Bir OVF şablonu kullanarak Site Recovery ortamınızda Azure Site Recovery için JetPatch Aracı Yöneticisi'ni indirip dağıtma da dahil olmak üzere kaynak ortamı ayarlayarak olağanüstü durum kurtarmayı dağıtın.

3. Yapılandırma sunucusunu Site Recovery'ye kaydeder, hedef Azure ortamını ayarlar ve bir çoğaltma ilkesi yapılandırabilirsiniz.

4. Otomatik dağıtım için JetPatch Aracı Yöneticisi yapılandırmasını başlatın ve tamamlayın.

5. JetPatch'te Mobility Service aracısının dağıtımını ve yükseltmesini otomatikleştirmek için bir Site Recovery ilkesi oluşturabilirsiniz.

6. Daha sonra Mobility Hizmeti'nin yüklü olduğu makineler için Azure'a çoğaltmayı etkinleştirebilirsiniz.
JetPatch Aracı Yöneticisi ile otomatikleştirme

JetPatch'te aracı yükleme sorunlarını giderme

Configuration Manager ile otomatikleştirme

Yükleme dosyalarını hazırlama

  1. Önkoşulların karşıladığınızdan emin olun.

  2. Yapılandırma sunucusunu çalıştıran makine tarafından erişilebilen güvenli bir ağ dosya paylaşımı (SMB paylaşımı) oluşturun.

  3. Configuration Manager'da Mobility Hizmetini yüklemek veya güncelleştirmek istediğiniz sunucuları kategorilere ayırın. Bir koleksiyon tüm Windows sunucularını, diğer tüm Linux sunucularını içermelidir.

  4. Ağ paylaşımında bir klasör oluşturun:

    • Windows makinelerine yükleme için MobSvcWindows adlı bir klasör oluşturun.
    • Linux makinelerine yükleme için MobSvcLinux adlı bir klasör oluşturun.
  5. Yapılandırma sunucusu makinesinde oturum açın.

  6. Yapılandırma sunucusu makinesinde bir yönetim komut istemi açın.

  7. Parola dosyasını oluşturmak için şu komutu çalıştırın:

    cd %ProgramData%\ASR\home\svsystems\bin
    genpassphrase.exe -v > MobSvc.passphrase
    
  8. MobSvc.passphrase dosyasını Windows klasörüne ve Linux klasörüne kopyalayın.

  9. Yükleme dosyalarını içeren klasöre göz atmak için şu komutu çalıştırın:

    cd %ProgramData%\ASR\home\svsystems\pushinstallsvc\repository
    
  10. Bu yükleme dosyalarını ağ paylaşımına kopyalayın:

    • Windows için Microsoft-ASR_UA_version_Windows_GA_date_Release.exe MobSvcWindows'a kopyalayın.
    • Linux için aşağıdaki dosyaları MobSvcLinux'a kopyalayın:
      • 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. Aşağıdaki yordamlarda açıklandığı gibi, kodu Windows veya Linux klasörlerine kopyalayın. Bunu varsayıyoruz:

    • Yapılandırma sunucusunun IP adresi şeklindedir 192.168.3.121.
    • Güvenli ağ dosya paylaşımı şeklindedir \\ContosoSecureFS\MobilityServiceInstallers.

Windows klasörüne kod kopyalama

Aşağıdaki kodu kopyalayın:

  • Kodu MobSvcWindows klasörüne install.bat olarak kaydedin.
  • [CSIP] Bu betikteki yer tutucuları yapılandırma sunucunuzun IP adresinin gerçek değerleriyle değiştirin.
  • Betik, Mobility Service aracısının yeni yüklemelerini ve zaten yüklü olan aracıların güncelleştirmelerini destekler.
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

Linux klasörüne kod kopyalama

Aşağıdaki kodu kopyalayın:

  • Kodu MobSvcLinux klasörüne install_linux.sh olarak kaydedin.
  • [CSIP] Bu betikteki yer tutucuları yapılandırma sunucunuzun IP adresinin gerçek değerleriyle değiştirin.
  • Betik, Mobility Service aracısının yeni yüklemelerini ve zaten yüklü olan aracıların güncelleştirmelerini destekler.
#!/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

Paket oluşturma

  1. Configuration Manager konsolunda oturum açın ve Yazılım Kitaplığı>Uygulama Yönetimi>Paketleri'ne gidin.

  2. Paketler>Paket Oluştur'a sağ tıklayın.

  3. Ad, açıklama, üretici, dil ve sürüm gibi paket ayrıntılarını sağlayın.

  4. Bu paket kaynak dosyaları içeriyor'ı seçin.

  5. Gözat'a tıklayın ve ilgili yükleyiciyi (MobSvcWindows veya MobSvcLinux) içeren ağ paylaşımını ve klasörü seçin. Ardından İleri'yi seçin.

    Paket ve Program Oluşturma sihirbazının ekran görüntüsü

  6. Oluşturmak istediğiniz program türünü seçin sayfasında Standart Program>İleri'yi seçin.

    Standart Program seçeneğini gösteren Paket ve Program Oluştur sihirbazının ekran görüntüsü.

  7. Bu standart program hakkında bilgi belirtin sayfasında aşağıdaki değerleri belirtin:

    Parametre Windows değeri Linux değeri
    Ad Microsoft Azure Mobility Service'i (Windows) yükleme Microsoft Azure Mobility Service'i (Linux) yükleyin.
    Komut satırı Install.bat ./install_linux.sh
    Program çalıştırılabilir Kullanıcının oturum açıp açmadığı Kullanıcının oturum açıp açmadığı
    Diğer parametreler Varsayılan ayarı kullan Varsayılan ayarı kullan

    Standart program için belirtebileceğiniz bilgileri gösteren ekran görüntüsü.

  8. Bu standart programın gereksinimlerini belirtin bölümünde aşağıdaki görevleri gerçekleştirin:

    • Windows makineleri için Bu program yalnızca belirtilen platformlarda çalıştırılabilir'i seçin. Ardından desteklenen Windows işletim sistemlerini seçin ve İleri'yi seçin.
    • Linux makineleri için Bu program herhangi bir platformda çalıştırılabilir'i seçin. Sonra İleri'yi seçin.
  9. Sihirbazı tamamlayın.

Paketi dağıtma

  1. Configuration Manager konsolunda pakete sağ tıklayın ve İçeriği Dağıt'ı seçin.

    Configuration Manager konsolunun ekran görüntüsü

  2. Paketlerin kopyalanması gereken dağıtım noktalarını seçin. Daha fazla bilgi edinin.

  3. Sihirbazı tamamlayın. Paket daha sonra belirtilen dağıtım noktalarına çoğaltmaya başlar.

  4. Paket dağıtımı tamamlandıktan sonra Paketi >dağıt'a sağ tıklayın.

    Dağıt menü seçeneğini gösteren Configuration Manager konsolunun ekran görüntüsü.

  5. Daha önce oluşturduğunuz Windows veya Linux cihaz koleksiyonunu seçin.

  6. İçerik hedefini belirtin sayfasında Dağıtım Noktaları'nı seçin.

  7. Bu yazılımın nasıl dağıtılacağını denetlemek için ayarları belirtin sayfasında Amaç'ı Gerekli olarak ayarlayın.

    Yazılım Dağıtma sihirbazının ekran görüntüsü

  8. Bu dağıtım için zamanlamayı belirtin bölümünde bir zamanlama ayarlayın. Daha fazla bilgi edinin.

    • Mobility Hizmeti, belirttiğiniz zamanlamaya uygun olarak yüklenir.
    • Gereksiz yeniden başlatmaları önlemek için, aylık bakım pencereniz veya yazılım güncelleştirmeleri pencereniz sırasında paket yüklemesini zamanlayın.
  9. Dağıtım Noktaları sayfasında ayarları yapılandırın ve sihirbazı tamamlayın.

  10. Configuration Manager konsolunda dağıtım ilerleme durumunu izleyin. Paket adınızı> İzleme>Dağıtımları'na<> gidin.

Mobility Hizmetini kaldırma

Mobility Hizmetini kaldırmak için Configuration Manager paketleri oluşturabilirsiniz. Örneğin, aşağıdaki betik Mobility Hizmetini kaldırır:

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

Sonraki adımlar

VM'ler için çoğaltmayı etkinleştirin.