Archiv

Posts Tagged ‘PowerShell’

File Server to OneDrive for Business Migration

15. November 2015 Hinterlasse einen Kommentar

OneDrive for Business, Microsoft migrationwiz

OneDrive for Business is gaining recognition and traction among SMBs and enterprises. In particular, replacing user home drives, commonly stored on on-premises file shares, with OneDrive is becoming a common request to Office 365 system integrators and MSPs. As our partners have started to do more of these projects, some common roadblocks have become apparent:

More and more enterprise customers want to migrate their users’ Home drive, most often stored on File Servers, to the users’ One Drive for Business. But there are several hurdles:

  • he structure of the File Servers is not in harmony with user names in Office 365.
  • They do not want to migrate the complete File Servers structure.
  • They are not aware of the limits in OneDrive for Business.

With MigrationWiz, you are able to migrate, but the migration process is different:

Step 1 Upload the files into an Azure Blob storage.
Step 2 Create a Project in MigrationWiz: Source is Azure, Destination is OneDrive for Business
Step 3 Filter the different Folders to migrate only the relevant data to the users’ OneDrive for Business.

Before you begin to upload, you must check all documents, determine if any limitation prevents these documents from being stored in OneDrive for Business. There are several articles about these limitations:

Restrictions and limitations …. sync SharePoint lib. to your computer through ODFB
Migrating File Shares to OneDrive for Business
SharePoint Online and OneDrive for Business: software boundaries and limits

So then you are able to identify the folders:

In the following example we only want to upload only 3002 and 3003 == User A and User B

File Server structure

Azure Blob container (after uploading)

FS\3001

 

FS\3001\doc1.docx

 

FS\3002\

FS\3002\

FS\3002\Doc21.docx

FS\3002\Doc21.docx

FS\3002\Doc22.docx

FS\3002\Doc22.docx

FS\3003\

FS\3003\

FS\3003\Subfolder1

FS\3003\Subfolder1

FS\3003\Subfolder1\Doc31.docx

FS\3003\Subfolder1\Doc31.docx

FS\3003\doc32.docx

FS\3003\doc32.docx

FS\3003\doc33.docx

FS\3003\doc33.docx

FS\3004

 

FS\3004\doc41.docx

 

FS\3005

 

Directory.metadata

 

File.metadata

Only the folders and files (these are highlighted in yellow) should be uploaded to the Azure blob in the named container.

The Second part is the migration with MigrationWiz

The table below indicates what will be migrated into the OneDrive for Business document library destination:

User A

User B

Doc21.docx

doc32.docx

Doc22.docx

doc33.docx

 

Subfolder1

 

Subfolder1\Doc31.docx

So this can be done, using two CSV files and also two PowerShell cmdlets.

The first CSV file is the configuration file where several kinds of information will be stored:

FSConfig.csv

ProjectName

The Project Name in MigrationWiz.

 

ContainerName

The container name of the blob storage in Azure. The container in this Azure blob storage must exist. (Only lowercase names are allowed)

 

RootPath

The root path of the File Server.

 

AccessKey

The name of the Azure Blob storage.

 

SecretKey

The Security Key to access the Blob storage.

 

ODFBAdmin

The email of the Office 365 Global administrator.

 

Password

The Password of the Office 365 Global administrator.

In the second CSV file are stored users’ name and the corresponding File Server folder. Additionally, the Filter Folder and Folder Mapping must be saved.

Users.csv

DestinationEMail

Email address of the user, in which the ODFB data is stored.

 

SourceFolder

The Subfolder of the File Server, which is mapped with the email address (User)

 

FilterFolder

The RegEx for the User, which filters only the Subfolder and for the given user.

 

FolderMapping

Filters the Folder.

If all data are saved in both CSV files, then we may execute the first PowerShell cmdlet with Migration Preparation, FileServer to OneDrive for Business the name Uploader.ps1.

Now only the selected folders, subfolders and files are uploaded to the Azure Blob storage in the named container.

Upload to Azure,FileServer to OneDRive for Business

The second PowerShell cmdlet ProjectImport.ps1 creates the complete Project in MigrationWiz. You do not have to set any information. All information about the project (Source, Destination, container) and all users are inserted.

Migration, Azure to Onedrive for Business

And now you ready to start the Migration with checking your credentials and then with a full migration.

clip_image008

Fore more information go to our community site at BitTitan

SkyDrive Pro | PowerShell Script checks and moves folders and files

26. August 2013 52 Kommentare

SkyDrive Pro, PowerShell script, checks and moves folder and files

SkyDrive Pro and PowerShell?

Yes, no discrepancy. I used PowerShell because the script should be customizable. But in turn. Again and again, users have problems with files that do not synchronize with SharePoint (online) or SharePoint on premise.  And the users do not know, how they should solve the problem. sometimes users want to move complex folder structures into a SharePoint library(see remarks on the end of this blog post). And Andre Kieft, Microsoft partner technical consultant from the Netherlands has brought me with his little script on the right track.

If you are looking for a german description, here it is

Appended [09.09.13] Andre Kieft wrote an excellent Blog post on technet

Appended [03.10.13] Due to changes from Microsoft on SharePoint Online, it is now allowed, to sync Files with the extension *.exe und *.dll. I have made these changes also on the Powershell-Script.

Most problems with folders and files that are added in the SkyDrive Pro folder and then cause a synchronization error, are the restrictions on the SharePoint Server 2013:

However, we must distinguish

SharePoint Online (Office 365) blocked file extensions  (19)
f.e:  .ashx, .asmx… .xamlx
SharePoint Server 2013 and SharePoint Foundation blocked file extensions (104)
f.e.. .bas,  .bat,… .wsh
File- und Folder restrictions not allowed characters and extensions (9+20)
f.e.: “&”,”%”, or “#”, …
length of folder or filename folder< 256 , file < 128

Depending of the SharePoint Server a user must look between 48 and 133 restrictions on each folder and filename.

  • Simple copying a file into the SkyDrive Pro folder
  • Or copy entire folder with subfolders and files contained therein.
    SkyDrive Pro synchronizes only.  But the user see sync errors. Microsoft is working on this problem on SharePoint (online), may be you will see in the near future , that it will be allowed to use the “&” character in a filename. But not right now

    Solution

    The PowerShell Script SDPMove.ps1 

    The parameters:

    InputPath the source-folder
    f.e: C:\Test
    OutPutPath the destination folder 
    f.e: “C:\Users\hb\SkyDrive @ myCompany”
    -SPOnline optional parameter
    if it is not specified the script will check against SharePoint Server on premise.
    if specified, the script will check against SharePoint Online
    f.e: –SPOnline
    -Fix optional parameter
    if not specified, the script will only check and make no change
    (but you may see some errors)
    if specified, the script will check, change and

    a) folders will be copied to the destination folder
    b) files will be moved to the destination folder. 

    f.e: -Fix

    -Show optional  parameter

    if not specified, the script will give you minimal messages in the PowerShell console.
    if specified, the script will give you all messages

    f.e:  -Show

    -Language optional  parameter

    if not specified, the script will give messages in german language.
    This time 2 languages implemented: German and English
    Parameter: German, English

    SDPMove, start without parameters

    When it is called, the source directory is processed hierarchically. Here the flow chart

     

     

    image_thumb[2] After the script has been started, the parameters will be checked and then all not allowed extensions will be loaded.
    image_thumb[3] First run: The folder structure will be checked
    image_thumb[4] In the Check Folders & Files part ,all not allowed extensions and characters will be checked and replaced.
    image_thumb[7] the checked folder Structure is written into the destination folder.
    image_thumb[8] Second run: all files are checked.
    image_thumb[9] the individual files are written into the destination folder.

    Special features:

    folder

    Invalid characters are replaced.
    Invalid extensions are replaced with the addition of – HBx. The x stands for a numerical value.
    Folder remain left in the source directory.

    files

    Invalid characters are replaced.
    Invalid file extensions are not replaced, the file will remain in the source directory.

    folder and files Is determined by a change, that a folder or file with the same name exits, the script add –HBx  to the folder or filename. The x stands for a numerical value.
    the script cuts too long folder and filenames.

    You may notice and the Script name SDPMove says: the files will be moved to the destination directory. You may do a copy of the source directory in advance.

     

    Here a small selection, which changes SDPMove does:

    Original Change
    Order&Bill.docx OrderandBilldocx
    Offer&Version&1.docx OfferandVersionand1.docx
    request#1.xlsx request1.xlsx
    report~.docx report-.docx
    Test.dll.txt no change, remains left
    try.asmx no change, remains left

    Download

    Here you can download the zip file with the script

    Unpack you the zip file and place SDPMove. ps1 for example in the folder C:\PowershellScripts

    Start PowerShell and navigate to the path C:\PowershellScripts

     

    Call

    InputPath

    We assume you have a folder containing a complex structure with additional folders and files: "C:\Test"

    OutputPath

    You want to bring the "C:\Test" folder and all subfolders contained in it and all files on SkyDrive Pro: "C:\Users\Benutzer\SkyDrive @ myCompany"

    Then the command is:

    .\SDPMove.ps1 C:\Test “C:\Users\Benutzer\SkyDrive @ myCompany” –SPOnline –Fix –Show –Language English

    Problems when you run? (Execution policy)
    look here and run Set-ExecutionPolicy RemoteSigned   (as adnministrator)

    Script-Changes

    You may do script changes. If you run it against a Sharepoint Server On Premise you have to it. Check the file-extensions with you SharePoint administrator. If he has some more blocked file-extensions, than you have to adjust Init_SPOnPremiseIllegal. The same procedure, if he has allowed some file extensions.

    Remarks

    SDPMove is suitable also for moving complex folder structures. Whether it makes sense to bring a previously existing file folder structure 1:1 for SharePoint, this is question, SharePoint consultants should get here first of all their consulting skills in the game

     

    Feedback and comments welcome

    PowerShellPlus – 32Bit & 64 Bit Snapin’s

    21. August 2008 Hinterlasse einen Kommentar

    PowerShellPlus – 32Bit & 64 Bit Snapin’sPowerShellPlus, eine Powershell-Erweiterung mit grafischer Oberfläche wird an Montag, 25.August als Download zur Verfügung stehen.PowerShellPlusWas PowerShellPlus ist, will ich hier nicht beschreiben, vielleicht nur eines: die perfekte Integration der Konsolen Oberfläche von PowerShell, einem Code-Editor mit Intellisense und einer fantastische Hilfe. Hinter dem Programm steht der in der Scripting Welt nicht ganz unbekannte Dr. Tobias Weltner. Einfach ausprobieren.Für mich stellte sich gestern die Frage, wie sich Powershell mit der Problematik: „Powershell-SnapIn’s auf 64 Bit Systemen“ verhält und wie sich diese Probleme umgehen lassen. PowerShellPlus ist ein 32Bit Programm. Es läuft natürlich auch in Umgebungen wie Exchange Server 2007 oder System Center Virtual Machine Manger 2008. Aber das sind reinrassige 64 Bit Systeme. Installieren wir PowerShellPlus, dann werden alle SnapIn’s ausgelesen und in PowerShell eingeklinkt. Mit allem was dazugehört, einschließlich Hilfe. Vollautomatisch.Nach dem Download und der Installation auf dem System Center Virtual Machine Manager 2008 und dem ersten Aufruf liest er die vorhandenen SnapIn‘s ein. Nochmal: Basis für den SCCM 2008 ist Windows Server 2008, 64 Bit Edition. Im Learning Center der PowerShellPlus finden wir unter „PSSnapin Reference“ alle SnapIn’s aufgelistet, die PowerShellPlus gefunden hat. 5 SnapIn’s sind immer vorhanden:PowerShellPlus Learning CenterWo aber sind die SCVMM 2008 SnapIn’s?Die Informationen der SnapIn’s werden in der Registry angelegt. OK, starten wir Regedit über „Run“ – Regedit und springen zu [HKEY_LOCAL_MACHINESOFTWAREMicrosoftPowerShell1PowerShellSnapIns] dann finden wir dort das PowerShellSnappIn „Microsoft.SystemCenter.VirtualMachineManager“Registry: PowerShell SnapIn'sWarum also findet PowerShellPlus dieses SnapIn nicht? Schauen wir uns doch einmal im Task Manager an, was für ein Regedit wir aufgerufen haben.Taskmanager: Regedit 64 BitRegedit ohne *32, also die 64BIT Version . PowerShellPlus ist eine 32 Bit Programm. Also kann es die 64-Bit Registry nicht auslesen.
    Wir brauchen Regedit in der 32 Bit Variante. Dies finden wir unter C:WindowsSysWOW64. Starten wir diesen Registrations-Editor:Taskmanager: Regedit 32 BitOk, also haben wir jetzt die 32 Bit Version. Und suchen uns dort die Stelle, wo sich die PowerShell SnapIn’s befinden müssen:Registry: PowerShell SnapIn'sNichts vorhanden, deshalb kann auch PowerShellPlus nichts finden. Die gleiche Problematik finden wir unter Exchange Server 2007 vor, weil auch hier das Betriebssystem eine 64 Bit Variante sein muss.Was nicht funktioniert:Die relevanten DLL ‚s in der 32 BIT Registry zu referenzieren. Es handelt sich ja um 64 BIT DLL’s. Wir brauchen aber die 32 Bit DLL’s und die sind nicht auf dem System vorhanden. Aber der Lösungsansatz ist richtig.Wo bekommen wir jetzt die 32-BIT DLL’s her? Step 1: Download der 32 Bit VersionenFür Exchange gilt zu beachten, dass Sie die Sprach-Variante downloaden (943 MB), für die Sie später in PowerShellPlus auch die Erklärungen und Hilfe angezeigt bekomme, auch auswählen. Wir benötigen die 32BIT EditionSystem-Center Virtual Machine Manager 2008 ist derzeit noch im Beta-Status. Es ist derzeit nur über Microsoft Connect nach Anmeldung zu beziehen.Als Basis für die Installation dient eine 32BIT-Variante von Windows Vista. Dort installieren wir ausschließlich die Management Funktionen von Exchange 2007 bzw. die Verwaltungs-Konsole von SCVMM 2008. SCVMM 2008 installiert sich übrigens in der Sprachversion, die dem Betriebssystem zu Grunde liegt.Step 2: Identifizieren der DLLsWir starten unter Vista Regedit.Registry: PowerShell SnapIn'sIch habe hier sowohl Exchange 2007 als auch SCVMM 2008 installiert. Deshalb werden jetzt 3 SnapIn’s angezeigt. Mit einem Doppelklick auf den Modulnamen erhalten wir Pfad und Datei.

    SnapIn DLL Pfad
    Virtual Machine Manager Microsoft.SystemCenter.VirtualMachineManager.dll Program FilesMicrosoft System Center Virtual Machine Manager 2008bin
    Exchange…. Admin Microsoft.Exchange.PowerShell.Configuration.dll Program FilesMicrosoftExchange Serverbin
    Exchange… Support Microsoft.Exchange.Management.Powershell.Support.dll Program FilesMicrosoftExchange Serverbin

      Step 3: Kopieren der 32-Bit Dateien Jetzt müssen wir di relevanten Dateien kopieren. Tobias Weltner und ich haben uns gestern Nacht nicht die Mühe gemacht, alle Abhängigkeiten der verschiedenen DLL’s zu testen.Für SCCVM 2008 sind es:

    about_Changes_in_VMM_2008.help.txt
    about_VMM.help.txt
    about_VMM_Scripting.help.txt
    about_VMM_Tutorial.help.txt
    AxInterop.QuickMksAxLib30.dll
    AxInterop.QuickMksAxLib35.dll
    AxVMRCActiveXClient.dll
    cli.psc1
    DundasWinChart.dll
    Errors.dll
    GroupingListView.dll
    Interop.QuickMksAxLib30.dll
    Interop.QuickMksAxLib35.dll
    Microsoft.EnterpriseManagement.UI.ConsoleFramework.dll
    Microsoft.ReportViewer.Common.dll
    Microsoft.ReportViewer.Winforms.dll
    Microsoft.SystemCenter.VirtualMachineManager.dll
    Microsoft.SystemCenter.VirtualMachineManager.dll-Help.xml
    Microsoft.Virtualization.Client.RdpClientAxHost.dll
    Microsoft.Virtualization.Client.RdpClientInterop.dll
    NativeMethods.dll
    Remoting.dll
    SQMapi.dll
    SQMWrapper.dll
    TraceWrapper.dll
    UI.AddHostWizard.dll
    UI.Bitbos.dll
    UI.CommonControls.dll
    UI.GlobalSettingsDialog.dll
    UI.HardwareConfig.dll
    UI.HardwareProperties.dll
    UI.HostPropertiesDialog.dll
    UI.Images.dll
    UI.Library.dll
    UI.MmcContainer.dll
    UI.NewVmWizard.dll
    UI.OSProperties.dll
    UI.Reporting.dll
    UI.SelfService.dll
    Utils.dll
    virtualmachinemanager.types.ps1xml
    VMRCActiveXClient.dll
    VMRCClientControlLib.dll
    WizardFramework.dll
     

    Für Exchange Server 2007 sind es:

    AirSyncTiStateParser.dll
    BPA.Common.dll
    BPA.ConfigCollector.dll
    BPA.NetworkCollector.dll
    BPA.UserInterface.dll
    BPA.WizardEngine.dll
    chksgfiles.dll
    dsaccessperf.dll
    e12pidgen.dll
    epoxy.dll
    escprint.dll
    ese.dll
    eseback2.dll
    esebcli2.dll
    ExBPA.ESECollector.dll
    ExBPA.ExchangeCollector.dll
    ExBPA.Shared.dll
    ExBPAMdb.dll
    ExBPAMon.dll
    exchange.format.ps1xml
    Exchange.Support.format.ps1xml
    exchmem.dll
    exchsetupmsg.dll
    exrpc32.dll
    exrw.dll
    exsetdata.dll
    extrace.dll
    ExTraceMan.dll
    Interop.ActiveDS.dll
    Interop.adsiis.dll
    Interop.CertEnroll.dll
    Interop.Migbase.dll
    Interop.MSClusterLib.dll
    Interop.stdole2.dll
    Interop.XEnroll.dll
    MapiProtocolHandlerStub.dll
    Microsoft.Exchange.AirSync.AirSyncMsg.dll
    Microsoft.Exchange.AirSync.dll
    Microsoft.Exchange.AirSync.SyncStateConverter.dll
    Microsoft.Exchange.Cluster.Replay.dll
    Microsoft.Exchange.Cluster.ReplicaSeeder.dll
    Microsoft.Exchange.Common.dll
    Microsoft.Exchange.Common.IL.dll
    Microsoft.Exchange.Common.ProcessManagerMsg.dll
    Microsoft.Exchange.CommonMsg.dll
    Microsoft.Exchange.Configuration.ObjectModel.dll
    Microsoft.Exchange.ContentIndexing.Tasks.dll
    Microsoft.Exchange.Core.Strings.dll
    Microsoft.Exchange.Data.Directory.dll
    Microsoft.Exchange.Data.dll
    Microsoft.Exchange.Data.Mapi.dll
    Microsoft.Exchange.Data.Storage.ClientStrings.dll
    Microsoft.Exchange.Data.Storage.dll
    Microsoft.Exchange.Diagnostics.dll
    microsoft.exchange.edgesync.common.dll
    Microsoft.Exchange.Extensibility.Internal.dll
    Microsoft.Exchange.Infoworker.CalendarSettings.dll
    Microsoft.Exchange.InfoWorker.Common.dll
    Microsoft.Exchange.Isam.Interop.dll
    Microsoft.Exchange.Management-Help.xml
    Microsoft.Exchange.Management.DetailsTemplates.dll
    Microsoft.Exchange.Management.dll
    Microsoft.Exchange.Management.Edge.SystemManager.dll
    Microsoft.Exchange.Management.NativeResources.dll
    Microsoft.Exchange.Management.Powershell.Support.dll
    Microsoft.Exchange.Management.PublicFolders.dll
    Microsoft.Exchange.Management.SnapIn.Esm.dll
    Microsoft.Exchange.Management.SystemManager.dll
    Microsoft.Exchange.ManagementMsg.dll
    Microsoft.Exchange.MessageSecurity.dll
    Microsoft.Exchange.MessagingPolicies.Rules.dll
    Microsoft.Exchange.Net.dll
    Microsoft.Exchange.PowerShell.Configuration.dll
    Microsoft.Exchange.RoutingTableLogParser.dll
    Microsoft.Exchange.Rpc.dll
    Microsoft.Exchange.RPCOverHTTPAutoconfig.dll
    Microsoft.Exchange.Search.exSearchMsg.dll
    Microsoft.Exchange.Setup.Common.dll
    Microsoft.Exchange.StoreProvider.dll
    Microsoft.Exchange.SystemAttendantMailboxServicelet.dll
    Microsoft.Exchange.Transport.Agent.AntiSpam.Common.dll
    Microsoft.Exchange.Transport.Agent.SenderId.Core.dll
    Microsoft.Exchange.Transport.dll
    Microsoft.Exchange.Transport.Logging.Search.dll
    Microsoft.Exchange.UM.ClientStrings.dll
    Microsoft.Exchange.UM.Management.dll
    Microsoft.Exchange.UM.UMCommon.dll
    Microsoft.Exchange.UM.UmDiagnostics.Common.dll
    Microsoft.Rtc.Collaboration.dll
    Microsoft.Rtc.Media.dll
    migbase.dll
    migmsg.dll
    RulesAuditMsg.dll
    ScheduleEditor.dll
    SIPEPS.dll
    sqmapi.dll 

    Step 4: Registry-Schlüssel exportierenExportieren Sie die einzelnen SnapIn‘s aus der Registry (2 Dateien für Exchange 2007, 1 Datei für SCVMM 2008).Für Exchange 2007:Klicken Sie mit der rechten Maustaste auf Microsoft.Exchange.Management.PowerShell.Admin und exportieren sie diesen Registry-Zweig.
    Klicken Sie mit der rechten Maustaste auf Microsoft.Exchange.Management.PowerShell.Support und exportieren sie diesen Registry-ZweigFür System Center Virtual Machine Manager 2008:Klicken Sie mit der rechten Maustaste auf Microsoft.SystemCenter.VirtualMachineManager und exportieren sie diesen Registry-Zweig.Step 5: Dateien ins Zielsystem kopierenAuf dem Zielsystem (Exchange Server 2007 bzw. SCVMM) erstellen wir unter “Program Files (x86)“ ein neues Verzeichnis: „ PowerShell_SnapIn“In dieses Verzeichnis erstellen wir für Exchange ein weiteres Subdirectory: „EX2K7“ und „SCVMM“ für System Center Virtual Machine Manager.In diese Unterverzeichnisse kopieren Sie die jeweiligen o.a. Dateien und die exportierten Reg-Dateien

    PowerShell_SnapIn EX2K7 Dateien für Exchange
      SCVMM Dateien für SCVMM

    Sollten Sie sowohl Exchange Server 2007 als auch SCVMM (auf getrennten Servern) einsetzen, können Sie hierdurch mit PowerShellPlus beide Systeme von einem Server aus managen!PowerShell SnapIn Struktur 32 BitStep 6: Exportierte Reg-Datei anpassenÖffnen Sie die reg-Datei zum Bearbeiten (hier als Beispiel SCVMM). Die rot gekennzeichneten Teile müssen angepasst werden

    Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINESOFTWAREMicrosoftPowerShell1PowerShellSnapInsMicrosoft.SystemCenter.VirtualMachineManager]
    „PowerShellVersion“=“1.0“
    „Vendor“=“Microsoft Corp.“
    „Description“=“Dieses Windows PowerShell-Snap-In enthält Cmdlets für Microsoft System Center Virtual Machine Manager 2008 zum Verwalten des Virtual Machine Manager-Servers sowie der Bibliothekserver, Hosts und virtuellen Maschinen.“
    „Version“=“1.0.523.0“
    „ApplicationBase“=“C:\Program Files\Microsoft System Center Virtual Machine Manager 2008\bin
    „AssemblyName“=“Microsoft.SystemCenter.VirtualMachineManager, Version=1.0.523.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35“
    „ModuleName“=“C:\Program Files\Microsoft System Center Virtual Machine Manager 2008\bin\Microsoft.SystemCenter.VirtualMachineManager.dll
    „Types“=hex(7):76,00,69,00,72,00,74,00,75,00,61,00,6c,00,6d,00,61,00,63,00,68,
      00,69,00,6e,00,65,00,6d,00,61,00,6e,00,61,00,67,00,65,00,72,00,2e,00,74,00,
      79,00,70,00,65,00,73,00,2e,00,70,00,73,00,31,00,78,00,6d,00,6c,00,00,00,00,
      00 

     Achten Sie beim ersetzen der Programmpfade auf korrekte Syntax: (\)

    Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINESOFTWAREMicrosoftPowerShell1PowerShellSnapInsMicrosoft.SystemCenter.VirtualMachineManager]
    „PowerShellVersion“=“1.0“
    „Vendor“=“Microsoft Corp.“
    „Description“=“Dieses Windows PowerShell-Snap-In enthält Cmdlets für Microsoft System Center Virtual Machine Manager 2008 zum Verwalten des Virtual Machine Manager-Servers sowie der Bibliothekserver, Hosts und virtuellen Maschinen.“
    „Version“=“1.0.523.0“
    „ApplicationBase“=“C:\Program Files (x86)\PowerShell_SnapIn\SCVMM
    „AssemblyName“=“Microsoft.SystemCenter.VirtualMachineManager, Version=1.0.523.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35“
    „ModuleName“=“C:\Program Files (x86)\PowerShell_SnapIn\SCVMM\Microsoft.SystemCenter.VirtualMachineManager.dll
    „Types“=hex(7):76,00,69,00,72,00,74,00,75,00,61,00,6c,00,6d,00,61,00,63,00,68,
      00,69,00,6e,00,65,00,6d,00,61,00,6e,00,61,00,67,00,65,00,72,00,2e,00,74,00,
      79,00,70,00,65,00,73,00,2e,00,70,00,73,00,31,00,78,00,6d,00,6c,00,00,00,00,
      00 

    Das gleiche führen Sie für die 2 Reg-Dateien von Exchange Server 2007 aus. 

    Step 7: geänderte Registry Datei(en) importieren (Regedit 32 Bit) Bitte keinen Doppelklick auf die Reg-Datei. Sie wird sonst in die 64-Bit Registry eingetragen! Wechseln Sie ins Verzeichnis WindowsSysWow64 und rufen Sie dort die 32-Bit Variante Regedit auf. Importieren Sie die soeben geänderten Reg-Dateien (2x für Exchange bzw. 1x für SCVMM)Step 8: PowerShellPlus IntegrationStarten Sie PowerShellPlus. Wechseln Sie in das PowerShell Learning Center. Unter den PSSnapin.Reference finden sich jetzt weitere ReferenzenBeispiel 1:Virtual Machine ManagerPowerShellPlus Learning CenterBeispiel 2: Exchange und Virtual Machine ManagerPowerShellPlus Learning CenterStep 9: SnapIn zur PowerShell Umgebung hinzufügenDamit wir mit PowerShellPlus auch mit den neuen Befehlen des SnapIn‘s arbeiten können, müssen wir noch 2 Befehle in der Powershell eingeben:für System Center Virtual Machine Manager: 

    Add-PSSnapin Microsoft.SystemCenter.VirtualMachineManager
    Set-ExecutionPolicy remotesigned 

    für Exchange Server: Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Admin
    Set-ExecutionPolicy remotesignedPowerShellPlus Add-PSSnapinZusammenfassung:

    • PowershellPlus ist ein 32 BIT Programm und kann nur auf 32 BIT Snap-Ins zugreifen.
    • Hilfskostruktion: Installation von Exchange Server 2007 auf einem 32Bit-Betriebssystem
    • Hilfskonstruktion: Installation der Verwaltungskonsole des SCVMM 2008)
    • Über die Registry exportieren wir die Schlüssel
    • Über die Registry extrahieren wir die benötigten DLLs
    • Die Dateien werden auf das Zielsystem kopiert
    • Die Registry-Dateien werden angepasst
    • Über Regedit (32 Bit) werden die bearbeiteten Dateien importiert
    • In PowerShellPlus werden die SnapIns hinzugefügt

    Tobias Weltner hat versprochen, diesen Vorgang mittels mehreren Powershell-Scripts zu automatisieren. 

     

    Microsoft Virtualisierung – Planung als erster Schritt (I)


    Virtualisierung, mit diesem Begriff wird sich die IT-Welt die nächsten Jahre noch intensiv auseinander setzen. Mit den Produkten von Microsoft ist das schon heute machbar, wobei wir hier mit einigen Produkten konfrontiert werden, die gerade  in den Markt gebracht werden oder in naher Zukunft gebracht werden.VirtualisierungstechnologienHier möchte ich hauptsächlich über Server-Virtualisierung schreiben. In der Vergangenheit haben wir es hier mit dem Microsoft Produkt Virtual Server 2005 R2 zu tun gehabt. Dieses Produkt hat als wesentlichen Nachteil, dass es nur 32 BIT Gast-Betriebssysteme aufnehmen kann. Als nicht der richtige Kandidat für z.B. Microsoft Exchange Server 2007, welcher ausschließlich in der 64-Bit Version lieferbar ist. Mit dem seit Februar erhältlichen Betriebssystem Windows Server 2008 wird jetzt auch Hyper-V ausgeliefert. Hyper-V wird dabei als Rolle installiert. Und dann wäre für größere Umgebungen noch ein Produkt aus der System-Center Familie: System Center Virtual Machine Manager 2007  oder jetzt in der Beta-Version System Center Virtual Machine Manager 2008 Beta (SCVMM). Mit diesem Produkt kann ich viele Hosts und darauf laufende virtuelle Maschinen (VMM) verwalten. Dabei spielt es keine Rolle, ob das Virtualisierungssystem „Virtual Server 2005“, „Hyper-V“ oder „VMWare“  lautet. Verwalten heißt auch Konvertieren von physikalischen Maschinen in virtuelle Maschinen (P2V). Oder aber das Umwandeln von virtuellen Maschinen in virtuelle Maschinen (V2V).Bevor wir also die unterschiedlichen Produkte unter die Lupe nehmen, erst einmal die Planung. Das Ganze an einem Beispiel:bestehende Umgebung

    Name Betriebssystem Produkte P / V Kandidat
    ISA Windows Server 2003, 32 ISA Server 2006 P Nein
    web-hbsoft (DMZ) Windows Server 2003, 32 SQL 2005 P JA   (P2V)
    web-sqtm (DMZ) Windows Server 2003, 32   P JA   (P2V)
    HBDC10 Windows Server 2003, 32 Domain Controller
    Virtual Server 2005 R2
    DFS
    P NEIN
    sqtm-TS2 Windows Server 2008, 32 Terminal Server
    Office 2007
    V JA   (V2V)
    Mail01 Windows Server 2003, 64 Exchange Server 2007 P NEIN
    HBSM1 Windows Server 2003, 32 SQL Server 2005
    SCOM 2007
    MOSS 2007
    DFS
    P JA   (P2V)
    Fileserver2 Windows Server 2003, 32 Virtual Server 2005 R2
    WSUS
    DFS
    P JA   (P2V)
    HBDC3 Windows Server 2003 Domain Controller V JA   (P2V)

    Ziel in diesem Beispiel ist die Umwandlung von 4 physikalischen  Maschinen (2 davon in der DMZ) und 2 virtuellen Maschinen (derzeit unter Virtual Server 2005 R2 virtualisiert) auf eine neue physikalische Maschine mit entsprechender Leistung und Speicher zu bringen. Dazu sollen möglichst wenig externe Tools zum Einsatz kommen.Ich habe mich für eine leistungsstarke Intel Variante eines Server mit 2 Quad Xeon Prozessoren entschieden. Ich möchte Strom sparen. Deshalb drehen hier Green-IT Spindeln . Hier geht es nicht um Geschwindigkeit. Also kein SAN, kein NAS. Ausfallsicher mit Raid 10 Technologie.Meine Hoffnung, und das muss ich noch in 1,5 Jahren beweisen, ist: Durch den Wegfall von 4 physikalischen Maschinen ersetzt durch eine Neue möchte ich allein durch Reduzierung des Stromverbrauchs die Investition wieder hereinbekommen. (ROI)Nun, mitten in der Phase der Planung ist auch Hyper-V fertig geworden. Und für den System Center Virtual Machine Manager SCVMM 2007 gibt es die Variante 2008 . In der Beta-Phase . Und damit fangen die Probleme an. Dies soll nämlich das einzige Tool für die Virtualisierung werden.Anfangen möchte ich nämlich mit den beiden bereits virtualisierten Maschinen „sqtm-TS“ und „HBDC3″Wie ? den nächsten Blog lesen. 

     

    %d Bloggern gefällt das: