How to: Setup SalesPartner as an Azure-RemoteApp
This guide has bee moved to http://www.geoffduncan.nz/
A step by step guide for deploying SalesPartner as a RemoteApp running in Microsoft Azure.
This is a Cloud-Only custom deployment for a Windows based Line of Business application (SalesPartner).
IMPORTANT: The SalesPartner database server that is hosting application data must reside on a separate Virtual Machine within the same Virtual Network as the Azure RemoteApp collection. https://azure.microsoft.com/en-us/documentation/articles/remoteapp-quickbooks/
1. Define a new Affinity Group in Microsoft Azure
Log into the Azure Portal https://azure.microsoft.com/
Scroll down the blue side navigation bar and click Settings.
Select the Affinity Groups tab in the top menu.
Click ADD (+) in the bottom menu.
Enter a Name and a description for your Affinity Group
Select the region which your collection will reside in.
Click the Save button to proceed.
2. Create a new Microsoft Azure Storage Account
In the Azure Portal, Click New -> Data Services -> Storage -> Quick Create.
Name your new Storage Account.
Select the Affinity Group which you created in Step 1.
Click Create Storage Account.
3. Create a new Virtual Network in Microsoft Azure
In the Azure Portal, Click New -> Network Services -> Virtual Network -> Quick Create.
Name your Virtual Network.
Select the same Location which you chose for the Affinity Group that you created in step 1.
Click Create a Virtual Network.
4. Configure Windows Server Essentials Experience Windows Server 2012 R2 in a Virtual Machine.
The application data for your RemoteApp Collection will reside in this VM.
In the Azure Portal, Click New -> Compute -> Virtual Machine -> From Gallery
Select the Windows Server Essentials Experience Image, and click next.
Name your Virtual Machine.
Select your desired Tier and Size (at least A1).
Choose a username for the local Administrator and create a strong password, then click next.
Cloud Service: Create a new cloud service
Cloud Service DNS Name: Ideally the virtual machine name which you chose in the previous screen will automatically be accepted as your Cloud Service DNS Name. If it isn't accepted, go back a step and rename your Virtual Machine.
Region/Affinity Group/Virtual Network: Select the Virtual Network which you created in step 3.
Storage Account: Select the Storage Account which you created in step 2.
Availability Set: Create and name an Availability set.
Click Next.
On the final screen, you can optionally select extensions to be installed.
Click Next to start provisioning the Virtual Machine.
Wait for the new Virtual Machine to finish Provisioning, before proceeding. While you are waiting you can click into the Dashboard (in the Azure Portal) and check that the internal IP address of the Virtual Machine is 10.0.0.4, to ensure that your V-Net is configured properly.
Step 5.
- Configure Windows Server Essentials
- Install your LOB application
- Configure shared folder access
Open the Azure Portal, Select the Virtual Machine and click Connect to download an .RDP file for the VM. Log into the VM via RDP using the credentials you chose in step 4.
When you first log into the VM, wait for Server Manager to launch.
Then click on the Post-deployment Configuration Alert.
Click Configure Windows Server Essentials.
In the Company Information section, enter your desired Company name, and Internal domain name.
Click Next
Choose an Administrator account name, and a strong password. Click Configure
The server will be updated. This may take up to 30 minutes. Your Remote Desktop session will be disconnected during this process.
After approximately 30 minutes, reconnect via RDP and login using the Administrator credentials (including domain) which you chose in the previous task.
Wait for Server Manager to launch and display the Configuration completed screen. Click Close.
Step 6.
Install SalesPartner as a server application with shared folders. Leverage this guide to configure network shared folders:
http://www.salespartner.co.nz/performance-troubleshooting-network.html
http://www.salespartner.co.nz/performance-troubleshooting-network.html
- Install updates.
- Install any required support applications such as OfficePartner, SalesNet-Server, Synchro-Server, Android-Server.
- Restore a SalesPartner backup if you are shifting an existing database into the cloud.
When the install is complete, open Server Manager.
Open File and Storage Services -> Shares -> Tasks -> New Share...
SMB Share - Quick is the default File share profile in the New Share Wizard. Click Next.
Select Type a custom path:
Click Browse... and select the spartner folder.
Click Next.
Click Next.
Deselect Allow caching of share which is selected by default in Other Settings, and click Next.
In Permissions, click Next.
In Confirmation, click Create.
Open Explorer
Right click the spartner folder and Share with -> Specific People...
...Add Everyone -> Read/Write Permission Level -> Click Share
Instead of using the typical file name share path which is provided to configure the application's BDE and INI settings, open Explorer and go to:
\\10.0.0.4\spartner\Data
Use this location to configure BDE and INI settings.
Step 7. Create a RemoteApp Virtual Machine
Log into the Azure Portal.
Click New -> Compute -> Virtual Machine -> From Gallery
In the Choose an Image screen, select Windows Server Remote Desktop Session Host
Click Next
Name your Virtual Machine.
Choose your desired Tier and Size.
Note: RemoteApp Collection pricing is not calculated using the size which you select here. Also, when your RemoteApp virtual machine is Captured, the VM will be deleted.
Choose local admin credentials for the virtual machine.
Note: Once the collection is created, this admin user will no longer exist. So you can create another local administrator during the setup if you wish. Do not use the username which you intend to use later, for example if you intend to create an admin user called labdemoadmin, then you should use something else at this point like: labdemoadmin1. For more information watch this guide published by Chris Davis: https://youtu.be/N7lNglzSbHc
Click Next.
Cloud Service: Create a new cloud service
Cloud Service DNS Name: Ideally the virtual machine name which you chose in the previous screen will automatically be accepted as your Cloud Service DNS Name. If it isn't accepted, go back a step and rename your Virtual Machine.
Region/Affinity Group/Virtual Network: Select the Virtual Network which you created in step 3.
Storage Account: Select the Storage Account which you created in step 2.
Availability Set: Leave blank.
Click Next.
On the final screen, you can optionally select extensions to be installed.
Click Next to start provisioning the Virtual Machine.
Wait for the new Virtual Machine to finish Provisioning, before proceeding. While you are waiting you can click into the Dashboard (in the Azure Portal) and check that the internal IP address of the Virtual Machine is 10.0.0.5, to ensure that your V-Net is configured properly.
Step 8. Prepare your Virtual Machine for Capturing.
- Install any applications which will be required in your collection including support applications such as a PDF viewer and/or a web browser.
- Configure network access for applications.
- Download software updates and Windows updates.
- SysPrep the machine.
Once the Virtual Machine has finished being provisioned, click Connect and log into the VM using the credentials you chose in step 7.
Open Explorer and enter the address (use the IP) of the shared folder in the Data Server:
\\10.0.0.4\spartner\
You will be prompted to enter the network credentials required to connect to: 10.0.0.4
Enter the Network Administrator credentials you chose in step 5.
Select Remember my credentials. Click OK.
The shared folder will be displayed:
Install SalesPartner and use the Explorer Network shared folder path to configure the relevant application BDE and INI settings. See: http://www.salespartner.co.nz/performance-troubleshooting-network.html
Install any other 3rd party software / applications which you will require in your Azure-RemoteApp collection.
Pin to Start any application which you intend to publish as a RemoteApp
Check for Windows updates, install them and restart the VM if necessary.
In Administrative Tools -> Computer Management -> Local Users and Groups: Right click Users and click New User...
Chose credentials including a strong password for the user, and click Create.
Click Groups -> Administrators -> Add... to add the new user as a local admin.
Note: Changes to the collection will require you to update the template image for the collection, however being able to perform elevated tasks may be useful for support and troubleshooting.
Validate the RemoteApp Image and run Sysprep on the Virtual Machine
Open the ValidateRemoteAppImage PowerShell script on the desktop, and type "Y" then press Enter to proceed.
The machine will automatically shut down.
Step 9. Capture the Virtual Machine
When you log into the Azure Portal, you will see that the session host VM status is: Stopped.
Select the Session Host VM and click Capture.
Name your virtual machine image.
Enter a description.
Select I have run Sysprep on the virtual machine
Click OK
Step 10. Import the Template Image
Open the Azure Portal.
In the left hand menu, scroll down to RemoteApp.
Select the Template Images tab.
Click Import or Upload a Template Image
Select Import an image from your Virtual Machines library (recommended).
Make sure the correct virtual machine image is showing in the drop down menu.
Review the confirmation instructions.
Click Next.
Name your RemoteApp template image.
Select the same location which you used to create your Affinity Group, V-Net and Storage in the initial steps.
Click OK.
Your RemoteApp template image will be imported.
Step 11. Create a RemoteApp collection
In the Azure Portal, go to RemoteApp.
Select the RemoteApp Collections tab.
Click Create a RemoteApp Collection.
In New -> App Services -> RemoteApp:
Select Create with V-Net
Name your collection.
Select your desired Plan.
Select the Virtual Network which you created in step 3.
In the Join Local Domain switch, select No.
Click Create RemoteApp Collection.
Step 12. Link template image, provision RemoteApp collection.
Open the Azure Portal and go to RemoteApp in the left menu.
Click on your RemoteApp collection.
Click Link a template image
Click Link an existing template image
Select the template image which you created in step 10.
The location will automatically be selected and cannot be changed.
Your RemoteApp collection will be provisioned, it may take an hour or so to complete.