Many customers you come across will be on GoDaddy’s Office 365 platform. Migrating these customers to regular Office 365 requires that you either perform a migration or defederate the tenant. Defederating does not require a migration or downtime. Click here to see that solution.
Your MX records on GoDaddy are the same as when you are on Office 365. For this reason, you must remove your primary domain from GoDaddy and recreate it in Office 365. If done correctly, downtime should be limited to 5-15 minutes. In this article, i am going to give you best practices to follow using the BitTitan migration tool.
**Please Note** This is a highly level overview of the migration steps using BitTitan. For a complete step-by-step guide with screenshots, follow this link. While this guide is specific to BitTitan the same concepts can be followed using any tool.
Set Up the Destination Environment
CheckList:
Provision a Net New Tenant in Office 365
- They will be provisioned with the .onmcirosoft domain
- This can be purchased directly or under the CSP model through a distributor
In 365 Admin Center, Go to Setup>Domains>Add Domains
.
- *Note* This is where you will go to add the domain and verify with a TXT record after you remove from GoDaddy. For now users will have the .onmicrosoft.com as their primary SMTP address
Add Users and Apply Licenses
- Add One at a time
- Bulk Upload via Powershell
- Bulk Upload Via CSV
#Bulk Import Users with Passwords Powershell#
Set Impersonation rights for the admin user
Connect to 365 Exchange Online with Powershell (Link in title) and run the following:
New-ManagementRoleAssignment -Role ApplicationImpersonation -User <admin_user_name>
Prepare the Source Environment
CheckList:
Set Impersonation rights for the admin user
Connect to GoDaddy's Exchange Online with Powershell (Link in title) and run the following:
New-ManagementRoleAssignment -Role ApplicationImpersonation -User <admin_user_name>
Plan Downtime Window
Determine when you will be removing the domain from GoDaddy. Notify users accordingly
Notify GoDaddy of Planned Domain Removal
Let GoDaddy know about your planned removal 24hrs prior to avoid delays
Upgrade Software on Workstations
If applicable, install the latest Office 365 software to all users workstations
Set Up A BitTitan Account
Create a Login
Click the Link to create a BitTitan username and password.
Create a Customer
Enter Primary Domain name and customer name
Send Out Agent to Re-configure Outlook Profiles
CheckList:
*NOTE* BitTitan comes with a tool called Deployment Pro which re-configures Outlook profiles after the migration. This can be pushed out either through GPO or email.
Determine whether sending out agent via GPO or Email
Track Users with Agent Installed
Devices will register and match users email address to computer in a one-to-one relationship. Each computer will have a "Heartbeat"
Prepare Migration Endpoints
CheckList:
Set up your source and destination endpoints in the BitTitan Portal
- The source endpoint can be found under Office 365
- Destination is Office 365
- Provide Admin Credentials for each endpoint
Autodiscover Users
- Clean Up User List as Needed
- Remediate UPN issues by clicking on Pencil icon next to users
- Source should contain .com address and destination should contain .onmicrosoft.com address
Verify Credentials
- This will tell you if there are errors
- Most Typical Errors are Insufficient Impersonation rights, wrong admin creds
- Shows “Completed Verification” upon success
Subscribe Users
- Select All Users>Click last Icon on top toolbar with 3 lines
- “Apply User Migration Bundle”
- Takes a 3-5 Minutes to propagate
Start Migration
CheckList:
Run Prestage Pass bringing mail from GoDaddy to Office 365
- This will bring over a bulk of the data before we remove the domain
- Set Prior to 60 days
- Any user whose status changes to “Failed” is almost 100% due to server timeout.
- Simply Re-Run these users
Run Full Pass to bring over remaining Mail, Calendars, Contacts, Notes, Rules
- Start once Full-Stage Pass has completed
- Can Run Up to 10 Delta Passes
- Make sure everyone goes into a “Completed Status”
Domain Removal From GoDaddy
Checklist:
Bulk Update all Users UPNs to .onmicrosoft.com domain in GoDaddy
- To Remove the domain, we need it removed from all records in the portal.
$UserCredential = Get-Credential
Connect-MsolService -Credential $UserCredential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session -AllowClobber
$testpath = test-path c:\temp; If ($testpath -eq $false) {new-item -type directory c:\temp}; $dataout = @();
Get-MsolUser -All | ? {$_.UserPrincipalName -match “domain.com”} | % {Set-MsolUserPrincipalName -ObjectId $_.objectId -NewUserPrincipalName ($_.UserPrincipalName.Split(“@”)[0] + “@domain.onmicrosoft.com”); $dataout += “$($_.UserPrincipalName)” ; $_.UserPrincipalName };$dataout | out-file c:\temp\UPNChangeOutput.txt
Remove all alias with the domain
$Records = Get-mailbox -ResultSize Unlimited| where {$_.emailaddresses -like “smtp:*@domain.com”} | Select-Object DisplayName,@{Name=“EmailAddresses”;Expression={$_.EmailAddresses |Where-Object {$_ -like “smtp:*domain.com”}}}
foreach ($record in $Records)
{
write-host “Removing Alias” $record.EmailAddresses “for” $record.DisplayName
Set-Mailbox $record.DisplayName -EmailAddresses @{Remove=$record.EmailAddresses}
}
Remove All Groups with the Domain
Get-MsolGroup -all | ?{$_.emailaddress -match “domain.com”} | Remove-MsolGroup -force
Remove the Domain
- The portal will notify you if there are any users/groups who still have the domain attached to their profile
- Work with GoDaddy if you need additional assistance
Recreate Domain in 365
Checklist:
Add the Domain to 365
- These steps are basically the reverse of what we just performed in GoDaddy
- In the 365 Admin Center, Go to Setup>Domains>Add Domains
- Add the domain and verify with a TXT record (can take about 5min before you can recreate)
Bulk Update all Users UPNs to .com domain
$UserCredential = Get-Credential
Connect-MsolService -Credential $UserCredential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session -AllowClobber
$testpath = test-path c:\temp; If ($testpath -eq $false) {new-item -type directory c:\temp}; $dataout = @();
Get-MsolUser -All | ? {$_.UserPrincipalName -match “domain.onmicrosoft.com”} | % {Set-MsolUserPrincipalName -ObjectId $_.objectId -NewUserPrincipalName ($_.UserPrincipalName.Split(“@”)[0] + “@domain.com”); $dataout += “$($_.UserPrincipalName)” ; $_.UserPrincipalName };$dataout | out-file c:\temp\UPNChangeOutput.txt
Bulk Upload Distribution Lists
Create Two CSVs
- One has the Distribution Group Name and Primary SMTP Address
- One has the Group name and the members apart of that group
Import-Csv -Path ‘File Path’ | foreach {New-Distributiongroup -Name $_.Name -PrimarySmtpAddress $_.Address }
Import-Csv ‘File Path’ | foreach {Add-DistributionGroupMember -Identity $_.DL -Member $_.Alias}
Post-Migration Clean Up
Checklist:
Make Sure DMA Agent Ran Successfully
- DMA status will go into “Completed” after succesfull authentication by end user
- Any user that fails authentication 3x will go into an “error” status
- These users you will need to reschedule and make sure they have the correct 365 password
Comments are closed.