| Author |
Topic  |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/10/2011 : 11:14:00 AM
|
Trying to use the MigrateDatasourceDataFromDPM.ps1 to migrate the protected data from a smaller disk array to a larger disk array and getting an error, that I cannot understand.
PS D:\Program Files\DPM 2007 DPM\bin> .\MigrateDatasourceDataFromDPM.ps1 -dpmser ver dpm-server.xxx.local -Source $disk[3] -Destination $disk[4] D:\Program Files\DPM 2007\DPM\bin\MigrateDatasourceDataFromDPM.ps1 : The sourc e can either be a disk or a datasource and destination can either be a DiskPool or a pair of custom volumes At line:1 char:35 + .\MigrateDatasourceDataFromDPM.ps1 <<<< -dpmserver dpm-server.xxx.local -Sour ce $disk 3 -Destination $disk 4 + CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorExcep tion + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,MigrateDatasourceDataFromDPM.ps1
Using info from here for the power shell script; http://blogs.technet.com/b/askcore/archive/2009/06/22/how-to-use-the-migratedatasourcedatafromdpm-ps1-dpm-powershell-script-to-move-data.aspx
|
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/10/2011 : 12:02:46 PM
|
Being trying several and all to no avail
.\MigrateDatasourceDataFromDPM.ps1 -dpmservername dpm-server.xxx.local -Source $disk[3] -Destination $disk[4]
give the same error
PS D:\Program Files\DPM 2007\DPM\bin> ./MigrateDatasourceDataFromDPM.ps1 -DPMSer verName dpm-server -Source $disk[3] -Destination $disk[4] D:\Program Files\DPM 2007\DPM\bin\MigrateDatasourceDataFromDPM.ps1 : Invalid in put parameter specified At line:1 char:35 + ./MigrateDatasourceDataFromDPM.ps1 <<<< -DPMServerName dpm-server -Source $d isk[3] -Destination $disk[4] + CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorExcep tion + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorExceptio n,MigrateDatasourceDataFromDPM.ps1
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,MigrateDatasourceDataFromDPM.ps1
This was a migration from DPM 2007 to DPM 2010, if that is of any use/ info. |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
Edited by - wobble_wobble on 05/10/2011 12:05:13 PM |
 |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/10/2011 : 2:49:19 PM
|
I get the disk arrays listed as per Get-DPMDisk -DPMServerName dpm-server command.
I tried just using the MigrateDatasourceDataFromDPM.ps1 command, it asks for the DPM server name, then automatic or manual, then the PServer. I've tried several servers that we are protecting, by fqdn, but then it returns an error satting it cannot find a disk or volume that is being protected.
|
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
Rambler
Major Contributor
   
Czech Republic
949 Posts
Status: offline |
Posted - 05/10/2011 : 3:29:39 PM
|
Sorry to ask the blunt question, but are you sure your referring to the correct drives by those array indices? I've used that blog entry to migrate DPM storage in the past and it worked fine - the only confusion was the different sorting of get-dpmdisk (compared to the NtDiskId).
|
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/10/2011 : 3:40:52 PM
|
disk[3] is one of 3 small disks, 1 to 3 and the new one is disk[4] a 8TB array.
So hopefully I have it in the right order. DPM see's it as a 6TB approx dynamic but unformatted disk. |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
Edited by - wobble_wobble on 05/10/2011 3:42:02 PM |
 |
|
|
Rambler
Major Contributor
   
Czech Republic
949 Posts
Status: offline |
Posted - 05/10/2011 : 4:00:37 PM
|
Can't say I recall the details, but doesn't have the disk in the pool be formatted?
Btw. I'm sure the command let doesn't want FQDN, just plain NetBIOS computer name. |
Edited by - Rambler on 05/10/2011 4:03:44 PM |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/10/2011 : 4:15:58 PM
|
I tried both FQDN and Netbios in case I was missing something. In the manual version it looks for the FQDN.
When you add a disk resource to DPM, it looks after the formatting for you. I'll try adding a small partition and see what happens. |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
NMDANGE
Honorable But Hopeless Addict
    
USA
2054 Posts
Status: offline |
Posted - 05/10/2011 : 6:57:03 PM
|
| Before running the script did you run Get-DPMDisk to see that you are using the correct index? The index does *not* match the NT Disk ID you see in Disk Management. |
Michael D'Angelo (former)MVP-MIIS, Pace University Senior Systems Administrator (Windows) (MS)NMDANGE PhoeniX WorX Systems Administrator. If you play Total Annihilation, please join us. http://www.phoenixworx.org |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/10/2011 : 7:06:47 PM
|
Welcome to the DPM Management Shell!
Full list of cmdle Welcome to the DPM Management Shell!
Full list of cmdlets: Get-Command Only DPM cmdlets: Get-DPMCommand Get general help: help Get help for a cmdlet: help <cmdlet-name> or <cmdlet-name> -? Get definition of a cmdlet: Get-Command <cmdlet-name> -Syntax Sample DPM scripts: Get-DPMSampleScript
PS D:\Program Files\DPM 2007\DPM\bin> Get-DPMDisk -DPMServerName dpm-server
Name Status NtDiskId Total Capaci Unallocated Type ty Space ---- ------ -------- ------------ ------------ ---- NETAPP LUN... Healthy 3 697 GB 12 GB Dynamic IET VIRTUA... Healthy 4 5545 GB 5545 GB Dynamic NETAPP LUN... Healthy 2 600 GB 0 GB Dynamic NETAPP LUN... Healthy 1 1176 GB 2 GB Dynamic
PS D:\Program Files\DPM 2007\DPM\bin> $disk = Get-DPMDisk -DPMServerName dpm-server PS D:\Program Files\DPM 2007\DPM\bin> $disk
Name Status NtDiskId Total Capaci Unallocated Type ty Space ---- ------ -------- ------------ ------------ ---- NETAPP LUN... Healthy 3 697 GB 12 GB Dynamic IET VIRTUA... Healthy 4 5545 GB 5545 GB Dynamic NETAPP LUN... Healthy 2 600 GB 0 GB Dynamic NETAPP LUN... Healthy 1 1176 GB 2 GB Dynamic
PS D:\Program Files\DPM 2007\DPM\bin> ./MigrateDatasourceDataFromDPM.ps1 -DPMSer verName dpm-server -Source $disk[3] -Destination $disk[4] D:\Program Files\DPM 2007\DPM\bin\MigrateDatasourceDataFromDPM.ps1 : Invalid input parameter specified At line:1 char:35 + ./MigrateDatasourceDataFromDPM.ps1 <<<< -DPMServerName dpm-server -Source $d isk[3] -Destination $disk[4] + CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,MigrateDatasourceDataFromDPM.ps1
Usage Option1: MigrateDatasourceDataFromDPM.ps1 [-DPMServerName] <string> [-Source] <Disk> [-De stination] <Disk[]> -Migrates the replica volumes and recovery point volumes from the source disk to the set of destination disks. The destination could either be a single disk or a set of disks. DPM will not use the source disk for newer protection. Use this option when migrating disks managed by DPM.
Option2: MigrateDatasourceDataFromDPM.ps1 [-DPMServerName] <string> [-Source] <Datasource > [-Destination] <Disk[]> -Migrates the replica volumes and recovery point volumes of the specified data source to the set of destination disks. The destination could be either a single disk or a set of disks. Use this option to migrate data protected on a custom volume to a disk managed by DPM.
Option3: MigrateDatasourceDataFromDPM.ps1 [-DPMServerName] <string> [-Source] <Datasource > [-Destination] <DpmServerVolume[]> -Migrates the replica volume and recover point volume for the specified data source to the specified pair of replica and recovery point volumes. The first element of the volume array should be the destination replica volume and second element should be the recovery point volume. Use this option to migrate any DPM data source to a custom volume.
|
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
Edited by - wobble_wobble on 05/10/2011 7:11:10 PM |
 |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
Posted - 05/11/2011 : 06:12:08 AM
|
Okay, I see the problem. The 4 disks are stored in the array in the order you see them on the screen. They're numbered starting with zero, so if you'd pick one you don't choose the number under 'NtDiskId' but the position in the list.
So, the list is presented like this: NETAPP LUN... Healthy 3 697 GB 12 GB Dynamic IET VIRTUA... Healthy 4 5545 GB 5545 GB Dynamic NETAPP LUN... Healthy 2 600 GB 0 GB Dynamic NETAPP LUN... Healthy 1 1176 GB 2 GB Dynamic
If the first one is the source and the second the target, your line woule be like this: ./MigrateDatasourceDataFromDPM.ps1 -DPMServerName dpm-server -Source $disk[0] -Destination $disk[1]
Does this make sense? |
Jetze Mellema
Exchange specialist Former MVP (2005-2012) My blog: http://jetzemellema.blogspot.com (Dutch) My company: http://www.imara-ict.nl/ |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/11/2011 : 06:57:04 AM
|
Jetze,
you got beaten by 20 minutes by Claus.
The correct line is; ./MigrateDatasourceDataFromDPM.ps1 -DPMServerName dpm-server -Source $disk[3] -Destination $disk[1]
|
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
Rambler
Major Contributor
   
Czech Republic
949 Posts
Status: offline |
Posted - 05/11/2011 : 07:54:33 AM
|
That's what I said before. There's a specific note about that in the blog, so that's why I asked :)
Nevermind, glad you got it sorted out. |
Edited by - Rambler on 05/11/2011 07:54:54 AM |
 |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/11/2011 : 4:33:50 PM
|
After looking at the post again, and now seeing what the issue was, I still think its a bit pants.
Diskpart, Storage manager and get-dpmdisk -dpmservername all report the disk as number 4, yet you have to count down the number of disks, that are displayed, starting at 0.
Not really that well described, explained, error reported or understood by myself.
But sure the good lessons are the hard ones. |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
Posted - 05/11/2011 : 4:50:14 PM
|
I think you have to understand that you're putting the disks in an array ($disk) and later select one item from that array. That's basic Powershell, has nothing to do with Diskpart or Storage Manager. I understand why this is confusing though. On the other hand, the author of the article spent several paragraphs explaining about the array and the numbers...
In the comments below that article someone gives an alternative way:
quote: while using the array index on $disk works, it relies on you correctly identifying the disk in the array. Tidier to use $source = get-dpmdisk | where {$_.ntdiskid -eq 2}. Similarly, I would then set $dest = get-dpmdisk | where {3,4 -contains $_.ntdiskid} (note that I can specify all the disks in my new storage pool). Migration command would then be ./MigrateDatasourceDataFromDPM.ps1 -DPMServerName RKW2K3-DPM -Source $source -Destination $dest
See? |
Jetze Mellema
Exchange specialist Former MVP (2005-2012) My blog: http://jetzemellema.blogspot.com (Dutch) My company: http://www.imara-ict.nl/ |
Edited by - Jazzy on 05/11/2011 4:53:43 PM |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/11/2011 : 6:13:52 PM
|
Jetze,
I did programming back in 1989, in college, in assembly and apparently was quite good at it. Now my maths has not failed, thats 22 years ago, but by god my ability to understand coding has.
But here
quote:
hile using the array index on $disk works, it relies on you correctly identifying the disk in the array. Tidier to use $source = get-dpmdisk | where {$_.ntdiskid -eq 2}. Similarly, I would then set $dest = get-dpmdisk | where {3,4 -contains $_.ntdiskid} (note that I can specify all the disks in my new storage pool). Migration command would then be ./MigrateDatasourceDataFromDPM.ps1 -DPMServerName RKW2K3-DPM -Source $source -Destination $dest
He's doing some magic with maths ( if my long forgotten coding is recalled correctly) hoping that the maths in his instance works right. $source = get-dpmdisk | where {$_.ntdiskid -eq 2} - here, is he taking away 2 from the figure of the ntdiskid?
set $dest = get-dpmdisk | where {3,4 -contains $_.ntdiskid} - I assume again that he has set physical disk numbers to 3 and 4)
But I use powershell because I have to, not because I want to. I cannot understand the error codes or the error messages, they seem very vague for something so precise. Also, its not universal, run powershell on Server 2003 and you can get 3 different answers depending on the version of PS installed. In Exchange, 2007 and 2010 gives different outputs for the same command.
Is it simple, yes for the easy stuff get-database get-clientaccessserver get-dpmdisk
But in this instance, for something that will happen a lot ( we have DPM on 5 sites and will need to do the same on each site) its not even easy to troubleshoot, unless you understand coding. And to be perfectly honest, with all that goes on, when or where do I get the chance to even attempt to understand the nuances of something that is so inconsistent?
|
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
Posted - 05/12/2011 : 02:53:38 AM
|
quote: He's doing some magic with maths ( if my long forgotten coding is recalled correctly) hoping that the maths in his instance works right. $source = get-dpmdisk | where {$_.ntdiskid -eq 2} - here, is he taking away 2 from the figure of the ntdiskid?
No he's not, he is filtering the list of dmpdisks where the Ntdiskid property is equal (eq) to 2. In plain English, he aks for all DPM disk with an Ntdiskid value of 2 and puts them in the $source variable. In fact, there is only one disk which has the correct value so this means that the $source variable now is filled with the name of the right disk. Now we can use the $source variable to tell the script which disk we want to use as sourc disk.
Regarding your remarks about Powershell, I agree with you that PowerShell is not always easy, nor consistent in the output to screen you're seeing. But operations with PowerShell, for example filtering, makinge a selection, working with variables, etc. ar consistent everywhere. To recognize that you need to be comfortable with the basics, also if you're familiar with the Powershell basics you better understand how cmdlets work and you no longer mind that the Active Directory Powershell cmdlets give different output than the Exchange or DPM ones.
I don't think you that you need to understand coding to work with Powershell. In fact, I don't understand coding at all but I did manage to gain working knowledge of Powershell through forcing myself to use Powershell instead of the gui, trying to make a script for a migration task and reading some blog posts about Powershell tasks. I even read a book. :)
For you, and anyone working in IT in the Microsoft world nowadays, I would recommend to learn Powershell ASAP. I don't know what works for you, maybe you should read a book, attend a class or whatever helps you to learn it. Should you be a Powershell expert? Of course not, as long as you understand how cmdlets and basic operations with cmdlets work. For example: - finding names of cmdlets: get-cmdlet, get-help, etc. - using tab completion to select a cmdlet or even find parameters - piping: get-mailbox | set-mailbox -MaxSendSize 10 MB - working with operators (-eq, -ne, -like, -gt, etc.) - filtering: get-mailbox | where { $_.displayname -like "*john*" } or get-dpmdisk | where {$_.ntdiskid -eq 2} - working with variables: $NYMailboxes = get-mailbox | where { $_.office -eq "New York HQ" }
If you don't get this, you will be less able to perform administrative tasks against Microsoft server products. The good news is, you only need to learn the basics. You don't need to learn all possible cmdlets by heart, we have Google and the product documentation for that.
I hope this makes sense, I think it does. If you want better explanation about a certain Powershell example, I hope the other members here van epxlain it better than I can. My lack of knowledge of the English language makes it a bit hard to choose the right words to explain things. |
Jetze Mellema
Exchange specialist Former MVP (2005-2012) My blog: http://jetzemellema.blogspot.com (Dutch) My company: http://www.imara-ict.nl/ |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/12/2011 : 05:35:59 AM
|
quote: Originally posted by Jazzy
quote: He's doing some magic with maths ( if my long forgotten coding is recalled correctly) hoping that the maths in his instance works right. $source = get-dpmdisk | where {$_.ntdiskid -eq 2} - here, is he taking away 2 from the figure of the ntdiskid?
No he's not, he is filtering the list of dmpdisks where the Ntdiskid property is equal (eq) to 2. In plain English, he aks for all DPM disk with an Ntdiskid value of 2 and puts them in the $source variable. In fact, there is only one disk which has the correct value so this means that the $source variable now is filled with the name of the right disk. Now we can use the $source variable to tell the script which disk we want to use as source disk.
Why did he pick 2 above? |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
Jazzy
Administrator
    
Netherlands
1932 Posts
Status: offline |
Posted - 05/12/2011 : 06:43:36 AM
|
| It's just an example, he demonstrates an easier way to select the disk with Ntdiskid 2. Notice that the author of the arcticle works with disks with Ntdiskid 1 and 4. |
Jetze Mellema
Exchange specialist Former MVP (2005-2012) My blog: http://jetzemellema.blogspot.com (Dutch) My company: http://www.imara-ict.nl/ |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/24/2011 : 5:57:27 PM
|
OK, having an issue migrating the data off 2 of the disks.
So, can I get a output of what data/ server is backed up onto what disk, as opposed to what I see. Or can I migrate a server/ volume at a time?
To see what I see....

Not very informative! |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/24/2011 : 6:05:47 PM
|
| I'm really starting to dislike DPM....grand on intitial setup with enough disk, but needs a lot of babysitting. |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
NMDANGE
Honorable But Hopeless Addict
    
USA
2054 Posts
Status: offline |
Posted - 05/24/2011 : 7:04:49 PM
|
So basically when you migrate from one disk to another, you have to wait for all the existing recovery points to expire before the volumes will be deleted. So if your short term retention windows is 60 days, you can't remove the old disks until 60 days after you run the migration command in PowerShell.
I agree that it does need babysitting, but compared to other backup solutions (at least the ones I've used) it's really not bad... and it is pretty cheap. |
Michael D'Angelo (former)MVP-MIIS, Pace University Senior Systems Administrator (Windows) (MS)NMDANGE PhoeniX WorX Systems Administrator. If you play Total Annihilation, please join us. http://www.phoenixworx.org |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/25/2011 : 3:21:51 PM
|
The migration does appear to 'move the data complete' but there is 'stuff' left behind.
Looking at the volumes and the DPM console seems to indicate that all bar a SQL Server restore points have moved....but the maze you see above is a disaster to track.
I ran the prune DB script and brought the retention down to 40 days, it got rid of a bit more, but I suspect that some of the volumes are 'old' or bad backups from the eng who first set it up.
I'll agree that the price is great, buy SCE Essentials plus and DPM is peanuts. But 15 years experience with BE/ NTbackup/ Arcserve and fairly good documentation as opposed to voodoo PS commands means its a bit hard.
But any way to examine some of my dodgy volumes and see whats in or on it? |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
|
NMDANGE
Honorable But Hopeless Addict
    
USA
2054 Posts
Status: offline |
Posted - 05/25/2011 : 4:18:51 PM
|
DPM should automatically delete any volumes when the datasource is deleted. It would be unusual for that not to happen - unless the partitions were created manually and not using DPM.
This blog post has a PowerShell script that can list every data source and the corresponding volume names. http://blogs.technet.com/b/dpm/archive/2011/01/05/how-to-use-san-recovery-option-and-mapping-data-source-volumes-to-windows-disks.aspx
There are VSS commands and PowerShell scripts to figure out all this stuff. When I had an issue on my DPM server, I watched the PSS engineer execute a bunch of commands. If only I had saved them! |
Michael D'Angelo (former)MVP-MIIS, Pace University Senior Systems Administrator (Windows) (MS)NMDANGE PhoeniX WorX Systems Administrator. If you play Total Annihilation, please join us. http://www.phoenixworx.org |
 |
|
|
wobble_wobble
Honorable But Hopeless Addict
    
Ireland
4517 Posts
Status: offline |
Posted - 05/25/2011 : 4:54:38 PM
|
I found a script to query the SQL database....but how do I get at the DB?
AS to the PSS engineers, yup, going to record them next time to a huge disk or something! |
Joe
After everything that has happened during the month of Jan 07, I do believe that pigs fly backwards!
http://whatismyv6.com/ |
 |
|
| |
Topic  |
|