Upgrade 2016
Upgrade 2016
Flexibility and familiarity make the infrastructure services in Microsoft Azure an ideal platform for
Microsoft Dynamics GP 2015. The Microsoft Dynamics GP 2015 you deploy in Microsoft Azure is
exactly the same one that you would deploy in your own office or data center. Since Microsoft Azure
infrastructure services (WAIS) is a virtual machine environment, the process of deploying and
managing Microsoft Dynamics GP on WAIS should be very familiar to you already. Your knowledge and
previous experience deploying Microsoft Dynamics GP on premise or as a hosted service will be
beneficial when deploying on WAIS. You have flexibility with respect to the license model you choose
to use when deploying Microsoft Dynamics GP on Microsoft Azure. And because the product is
constant, you can be reassured that you can move your deployment into or out of Microsoft Azure
seamlessly.
The following Microsoft Azure infrastructure services features are used as building blocks when you
create a Microsoft Dynamics GP environment.
1. Virtual Machines – The virtual machines are the Windows Servers that host the Microsoft
Dynamics GP components and other pre-requisite software.
2. Virtual Network – A virtual network provides a network in the cloud for cross-machine
communication.
3. Storage Account – A storage account stores the data disks and the virtual machine VHD files.
How you will configure the infrastructure services features will be depend on the needs of your
Microsoft Dynamics GP deployment. For example, how many virtual machines are required, the
network configuration for cross-machine communication, and disk configuration for storing data must
be configured in Microsoft Azure to support the Microsoft Dynamics GP installation. After the Microsoft
Azure environment is set up and configured, the Microsoft Dynamics GP components and required pre-
requisite software can be installed on the virtual machines in much the same way as they would be on
virtual machines in an on premise or hosted environment.
Checklist
The following checklist provides an overview of the steps for deploying Microsoft Dynamics GP on
Microsoft Azure.
This document provides guidelines for deploying Microsoft Dynamics GP 2015 on Microsoft Azure. The
information contained in this guide is intended to be used along with the main product documentation
for Microsoft Dynamics GP 2015. The guide is divided into the following parts:
Part 1, Microsoft Azure Account contains information on signing up for a Microsoft Azure
Account and creating a subscription.
Part 2, Planning contains information on planning your deployment, including licensing,
common deployment configurations, and server sizing.
Part 3, Deploy Microsoft Dynamics GP describes how to set up the Microsoft Azure services for
Microsoft Dynamics GP and install Microsoft Dynamics GP on the Microsoft Azure services.
Part 4, Maintenance contains information about maintaining the Microsoft Dynamics GP
deployment, including upgrading to the newest releases.
Part 5, Troubleshooting and Technical Support contains information on troubleshooting and
getting technical support for issues with Microsoft Dynamics GP on Microsoft Azure.
This part contains information about signing up for a Microsoft Azure Account and creating a
subscription. It contains the following sections:
Sign up for a Microsoft Azure Account provides directions for signing up for a Microsoft Azure
Account.
Create a Subscription provides directions for creating one or more subscriptions for the
Microsoft Azure Account.
Sign up for a Microsoft Azure Support Plan provides information for signing up for a Microsoft
Azure support plan.
1. Go to http://www.windowsazure.com/en-us/pricing/free-trial/
2. Choose to create a new account using either the free trial or purchase option. If you are
deploying Microsoft Dynamics GP for development or testing purposes, you can sign up as an
MSDN subscriber. If you select the purchase option, you will have the option of buying the
Azure services using Pay-as-You-Go, Microsoft Reseller or Enterprise agreement.
3. Log in using the Microsoft Account that will be the owner of the Microsoft Azure account. Sign
up for a Microsoft Account if needed.
4. Assuming that the Microsoft Account is not already the owner of a Microsoft Azure account, a
wizard window will open and walk you through the process of setting up a new account.
Create a Subscription
You will create one or more subscriptions for the Microsoft Azure account. A subscription is a grouping
of Microsoft Azure services and applications, including the virtual machines discussed earlier. The
subscription provides a way to control the access to and the use of the Microsoft Azure subscribed
service. On the account billing, the resource usage of Microsoft Azure services for each subscription is
reported separately. In a situation where you will have multiple Microsoft Dynamics GP deployments,
you may decide to use a separate subscription for each deployment in order to track expenses related
to each deployment. All of the Microsoft Dynamics GP components for a single deployment need to be
deployed to the same subscription however. You can set up different administrators for each
subscription as required. See Overview of Subscription Management1 for additional information.
Use the following steps to create a subscription.
1
http://msdn.microsoft.com/en-us/library/windowsazure/hh531793.aspx
2
https://account.windowsazure.com/Home/Index
Note: You can rename the subscription after it has been created.
3
http://www.windowsazure.com/en-us/support/plans/
Planning your Microsoft Azure deployment of Microsoft Dynamics GP includes making decisions about
which Microsoft Dynamics GP components to deploy, what configuration to use, and what the system
requirements are for those components. These are decisions that must be made in all Microsoft
Dynamics GP deployments, this part of the document covers the special considerations that impact
these decisions when deploying on Microsoft Azure. This part contains the following sections.
Licensing provides information on licensing Microsoft Dynamics GP and the required software
on Microsoft Azure.
Legal provides information on protecting customers data deployed on Microsoft Azure.
Microsoft Dynamics GP Components provides information about the Microsoft Dynamics GP
components that can be deployed on Microsoft Azure.
Deployment Models describes the two common configurations that are used when deploying
Microsoft Dynamics GP on Microsoft Azure.
System Requirements provides sizing recommendations for the virtual machine instance sizes
that are available in Microsoft Azure.
High Availability and Disaster Recovery (HADR) provides information on setting up the
Microsoft Azure environment for high availability and disaster recovery.
Licensing
Licensing the various components of the Microsoft Dynamics GP 2015 solution is an important
consideration in all deployment types. For deployments on Microsoft Azure, you will want to evaluate
the special licensing terms specific to Microsoft Azure and the impact that these decisions have on the
overall cost of the solution.
All Microsoft software installed in the Microsoft Azure Virtual Machine environment must be properly
licensed. Microsoft Azure Virtual Machines include by default a license for use of Windows Server in
the Microsoft Azure environment. Certain Microsoft Azure Virtual Machine offerings may also include
additional Microsoft software on a per-hour or evaluation basis. Click here4 to view additional common
FAQs regarding licensing on Microsoft Azure Virtual Machines.
4
http://www.windowsazure.com/en-us/pricing/licensing-faq/
5
http://www.windowsazure.com/en-us/pricing/license-mobility/
Consult the Microsoft Dynamics GP 2015 Licensing Guide6 to improve your understanding of how to
license Microsoft Dynamics GP 2015.
To read more about licensing RDS with Microsoft Azure Virtual Machines, see:
http://www.windowsazure.com/en-us/pricing/licensing-faq/ and Product Use Rights (PUR) document7.
You will want to carefully evaluate each of these options for Microsoft SQL Server as the cost models
can be very different. The deployment model you choose to employ and the number of users that will
be supported are key factors in this decision.
To learn what billing information is available, Partners should review the Understand Your Bill for
Microsoft Azure8 pages on the Microsoft Azure Portal. These pages provide an overview of the
Microsoft Azure billing process, links to sample invoices and a description of the daily usage data file
that can be exported and analyzed.
Microsoft Azure billing is done monthly at the Account level. Charges for various services are grouped
and reported at the Subscription level. To simplify the cost allocation exercised, Partners supporting
multiple Customer deployments may wish to segregate each Customer’s services to individual
subscriptions.
6
https://mbs.microsoft.com/Files/partner/GP/PriceOrder/Licensing_Policies/DynamicsGP2015LicensingGuide.pdf
7
http://www.microsoft.com/licensing/about-licensing/product-licensing.aspx
8
http://www.windowsazure.com/en-us/support/understand-your-bill/
Legal
Together with Microsoft, Partners must work together to protect Customer data and provide guidance
to Customers when it comes to security, privacy, and compliance practices.
Microsoft runs Microsoft Azure services with common operational practices and features across
multiple geographies and jurisdictions. However, it is ultimately up to Partners and Customers to
determine if Microsoft services satisfy their regulatory needs.
To help provide Partners and Customers with up to date information the Microsoft Azure Trust Center9
provides detailed information on security, privacy, and compliance topics for Microsoft Azure
customers.
Security
This topic provides an overview of the provisions Microsoft is taking to provide a secure environment
within geographically dispersed datacenters. Among the extensive list of Security-related resources,
the Standard Response to Request for Information: Security and Privacy 10 outlines how Microsoft
Azure meets the suggested principals and mapped them to the International Standards Organization
(ISO) 27001:2005 and ISO 27002. This standardized response empowers Partners and Customers
with in-depth information to evaluate different offerings in the market place today.
Privacy
Includes links to multiple resources that describe Privacy practices of the Microsoft Azure environment.
It includes a link to the Microsoft Azure Privacy Statement11 an overview of privacy terms and a
discussion of the location of Customer data, E.U. Data Protection Directive.
Compliance
This topic provides resources to help Partners and Customers comply with the specific laws and
regulations applicable to their unique industry and use scenario.
9
http://www.windowsazure.com/en-us/support/trust-center/
10
http://www.microsoft.com/en-us/download/details.aspx?id=26647
11
http://www.windowsazure.com/en-us/support/legal/privacy-statement/
10
Component Availability
Microsoft Dynamics GP databases Yes
eConnect Yes13
12
The Microsoft Dynamics GP desktop client can be used for end-user access through Remote Desktop Services.
The Microsoft Dynamics GP desktop client can be used for administrative purposes with Remote Desktop for
Administration.
13
If the application that is using eConnect requires Remote Desktop Services for end-user access, then you will
need to properly license RDS. If access is for administrators only, then Remote Desktop for Administration can be
used.
14
Excel reports connect directly to the Microsoft Dynamics GP databases. Because the SQL Server is not exposed
to the Internet, the Excel reports must be run from a computer connected to the Microsoft Azure Virtual Network.
This means that Microsoft Excel to be run on a Remote Desktop Services server or from a computer on the network
connected to the Microsoft Azure Virtual Network.
15
Integration Manager can be used for end-user access through Remote Desktop Services. Integration Manager
can be used for administrative purposes with Remote Desktop for Administration.
16
Analysis Cubes reports connect directly to the Microsoft Dynamics GP databases. Because the SQL Server is not
exposed to the Internet, the Analysis Cubes reports must be run from a computer connected to the Microsoft Azure
Virtual Network.
17
The Management Reporter report designer and desktop viewer can be used for end-user access through Remote
Desktop Services. The Management Reporter report designer and desktop viewer can be used for administrative
purposes with Remote Desktop for Administration. The Web Viewer can be used by all end-users to view reports.
18
ISV products must be evaluated on a product-by-product basis.
11
In this diagram the VPN (Virtual Private Network) represents the secure site-to-site connectivity
between the Microsoft Azure Virtual Network and the corporate network. The virtual network is
configured to use the DNS services on the corporate network for name resolution of the Microsoft
Azure Virtual Machines. The Web Server and SQL Server virtual machines are joined to the corporate
network domain for directory services, including the authentication of Microsoft Dynamics GP users. If
additional server roles are required for the Microsoft Dynamics GP deployment, additional virtual
machines would be added to the virtual network in Microsoft Azure and joined to the corporate
network domain.
12
In this diagram the Microsoft Azure Virtual Network contains an Active Directory domain controller
with DNS. The virtual network is configured to use the DNS services on the domain controller for name
resolution of the Microsoft Azure Virtual Machines. The Web Server and SQL Server virtual machines
are joined to the domain in Microsoft Azure for directory services, including the authentication of
Microsoft Dynamics GP users. If additional server roles are required for the Microsoft Dynamics GP
deployment, additional virtual machines would be added to the virtual network in Microsoft Azure and
joined to the domain in Microsoft Azure.
System Requirements
The system requirements for deploying on Microsoft Azure are the same as deploying Microsoft
Dynamics GP on premise or in other data centers. The virtual machines in Microsoft Azure have
standard processor and memory configurations that are based on the instance size. The instance sizes
range from VMs with 1 core and .75 GB RAM to 16 cores with 112 GB RAM. You can scale the instance
size up or down as usage patterns change. You can also add additional instances to scale out as
demand increases. The following table contains the compute instance sizes for Microsoft Azure Virtual
13
Basic Tier
Economical option if you won’t be load balancing or require memory-intensive virtual machines.
Compute Instance Name Virtual Cores RAM
A0 Shared 768 MB
A1 1 1.75 GB
A2 2 3.5 GB
A3 4 7 GB
A4 8 14 GB
Standard Tier
Use for most all GP components. Offers flexibility to scale up to memory intensive or scale-
out using load balancing.
Compute Instance Name Virtual Cores RAM
A0 Shared 768 MB
A1 1 1.75 GB
A2 2 3.5 GB
A3 4 7 GB
A4 8 14 GB
A5 2 14 GB
A6 4 28 GB
A7 8 56 GB
19
http://azure.microsoft.com/en-us/pricing/details/virtual-machines/
14
D2 2 7 GB
D3 4 14 GB
D4 8 28 GB
D11 2 14 GB
D12 4 28 GB
D13 8 56 GB
D14 16 112 GB
There are additional G-Series, network optimized and compute intensive tiers that may be evaluated for special
situations.
Use the published Microsoft Dynamics GP 2015 system requirements20 when determining the compute
instance size required for each of the virtual machine instances in your configuration. The table below
maps out the published system requirements to the Microsoft Azure Virtual Machine instance sizes at
the time this guide was created. In each server configuration you will be able to start with a specific
size and then increase or decrease the instance size as needed. You may also add additional virtual
machine instances for those Microsoft Dynamics GP servers that can be scaled out. These guidelines
should serve as a starting point and be adjusted based on your individual configuration.
Scale Out
A2
20
https://mbs.microsoft.com/customersource/northamerica/GP/learning/documentation/system-
requirements/MDGP2015_System_Requirements
15
There is a 20 core limit by default on a Microsoft Azure subscription. If your subscription is going to
require a total of more than 20 cores, you will need to open a quota increase ticket with Microsoft
Support here. A core is equal to a single A1 Virtual Machine instance. An A2 Virtual Machine instance
is equal to 2 cores, an A3 instance equals 4 cores, etc.
Example:
If you have 1 A3, 2 A2 and 1 A1 Virtual Machine instances in your subscription, the total cores for the
subscription is 9.
A2 2
A2 2
A3 4
Total 9
Availability Set
An availability set in Microsoft Azure is a configuration option available when load balancing multiple
VMs that places the VMs in different fault and update domains. The result is that the application is still
available even if there is a failure or planned update to a VM instance that takes it off-line for a period
of time. The fault domain protects against unplanned failures by creating the VMs in a different “rack”
of servers, resulting in them being on different physical hardware and serviced by different networking
components. The update domain protects against downtime from planned updates to the host
operating system by placing the VMs on host machines configured with different maintenance
schedules.
16
Refer to the article Manage the High Availability of Virtual Machines21 for additional information.
Database Mirroring
Log Shipping
These technologies can be used independently or together to provide the high availability and disaster
recovery required. When used with Microsoft Dynamics GP, the AlwaysOn and Database Mirroring
technologies provide failover capabilities for the Dynamics GP databases. The Log Shipping and
Backup and Restore with Microsoft Azure Blob Storage Service provide recovery capabilities for the
Dynamics GP databases. Refer to the article High Availability and Disaster Recovery for SQL Server in
Microsoft Azure Virtual Machines22 for additional information.
Redundant Storage
The redundant storage mechanism of Microsoft Azure provides for multiple copies of the VM’s VHD
files and the data disks that store data such as the Dynamics GP databases. The first redundant
storage mechanism is locally redundant storage (LRS), which maintains three copies of the account
data within the primary data center. The second mechanism is geo redundant storage (GRS, also
known as geo-replication), which replicates the account data to a secondary data center. These
redundant copies are done automatically by the platform. You do need to be aware that for the
Microsoft Azure data disks used to store the Dynamics GP databases, if GRS is enabled the data and
log files for a database need to be placed on the same disk.
21
http://azure.microsoft.com/en-us/documentation/articles/virtual-machines-manage-availability/
22
http://msdn.microsoft.com/library/windowsazure/jj870962.aspx
17
23
http://msdn.microsoft.com/en-us/library/windowsazure/hh543978.aspx
18
Creating a Virtual Network provides directions for setting up a virtual network in Microsoft
Azure.
Creating Virtual Machines provides directions for creating a virtual machine instance in
Microsoft Azure.
Configuring Active Directory provides information about configuring Active Directory on a
Microsoft Azure Virtual Machine.
Configuring Microsoft SQL Server provides directions for configuring SQL Server on a Microsoft
Azure Virtual Machine for use with Microsoft Dynamics GP.
Configuring Microsoft SQL Server Reporting Services provides direction for configuring SQL
Server Reporting Services on a Microsoft Azure Virtual Machine for use with Microsoft
Dynamics GP.
Configuring the Tenant Services Server provides direction for configuring a Microsoft Azure
Virtual Machine as a host for Tenant Services. Tenant Services is an optional Microsoft
Dynamics GP component required only if you are installing Microsoft Dynamics GP for use by
multiple customer organizations (tenants).
Configuring the Web Client Web Server provides directions for configuring a Web Server on a
Microsoft Azure Virtual Machine for use with Microsoft Dynamics GP web client.
Configuring the Web Client Session Host Server provides directions for configuring a Microsoft
Azure Virtual Machine as a Microsoft Dynamics GP Web Client session host.
Configuring Remote Desktop Services provides directions for configuring Remote Desktop
Services on a Microsoft Azure Virtual Machine for use with Microsoft Dynamics GP.
Configuring a Management Reporter Server provides directions for configuring a Microsoft
Azure Virtual Machine for use with Management Reporter.
Before setting up your virtual network, you will need to determine the design that will best meet your
deployment scenario. Things to consider include whether you will be joining this network to another
network, the address ranges for the network and how domain name resolution (DNS) will be handled.
In the current Microsoft Azure release, it may be difficult to make changes to the virtual network after
19
When deploying Microsoft Dynamics GP on Microsoft Azure, you have two options. You can create a
private virtual network that is fully-contained within Microsoft Azure, or you can create a virtual
network in Microsoft Azure that is connected to your existing physical network. In either case, all of
the Microsoft Dynamics GP components will be deployed to virtual machine instances on the Microsoft
Azure Virtual Network. You may want to connect to an existing network to leverage Active Directory
services for user authentication or other on premise resources. The decision of whether or not to
connect the virtual network to your physical network will determine how you configure name
resolution (DSN) for the virtual network. The virtual network and name resolution articles above
provide the type of name resolution that is required or recommended for each of the scenarios. When
creating a private virtual network with multiple virtual machines, you will need to create a domain
controller for authentication and name resolution (DNS). The virtual network will need to be
configured to use the domain controller’s IP address for DNS. This means that you must modify the
DNS setting for the virtual network after creating the domain controller virtual machine on the virtual
network.
You create a virtual network by using the Microsoft Azure Management Portal or by creating and
importing a network configuration file. Refer to the article Create a Virtual Network in Microsoft
Azure26 for information about creating a virtual network using the Microsoft Azure Management Portal.
Refer to the article Configuring a Virtual Network Using Network Configuration Files27 for information
about using the network configuration file.
A virtual machine instance can be created from a VHD template image available in the Microsoft Azure
platform image gallery or from an image or VHD disk you create and upload. You also have the ability
to capture a configured virtual machine instance as a template image for creating additional virtual
machine instances. Refer to the article Virtual Machines28 for additional information.
Follow the steps in the article Create a Virtual Machine29 to create the virtual machines. Use the
following guidelines when creating the virtual machine instances for Microsoft Dynamics GP. The
remaining sections in this part provide information that applies to the virtual machine configuration for
each of the server roles used in Microsoft Dynamics GP.
1. Use a unique name that identifies the virtual machine. (Example: GPSQLServer)
2. Select the virtual machine instance size based on the information provided in the System
Requirements section.
24
http://msdn.microsoft.com/en-us/library/windowsazure/jj156007.aspx
25
http://msdn.microsoft.com/en-us/library/windowsazure/jj156088.aspx
26
https://msdn.microsoft.com/en-us/library/azure/dn631643.aspx
27
http://msdn.microsoft.com/en-us/library/windowsazure/jj156097.aspx
28
http://msdn.microsoft.com/en-us/library/windowsazure/jj156003.aspx
29
http://www.windowsazure.com/en-us/manage/windows/tutorials/virtual-machine-from-gallery/
20
4. Indicate whether the virtual machine will be a standalone virtual machine or whether it will be
connected with other virtual machines to provide load balancing and high availability.
5. If you have selected to create a new cloud service, provide the DNS name that will be used for
external communication to the virtual machine. The name will be in the format of
*.cloudapp.net. Where the * would typically be the virtual machine name. If you selected an
existing cloud service, the DNS name for the cloud service will default in and can’t be
changed. If you will be using a domain name other than the provided cloudapp.net DNS
name, you will need to create a CNAME record to map your custom domain name to the DNS
name selected during the creation of the virtual machine. Another alternative is to add an A
record to the virtual IP address of the virtual machine. It is recommended that you use a
CNAME record as the public IP address for the cloud service could possibly be changed if the
machine is shut down from within the Azure Management Portal, but the cloudapp.net DNS
name doesn’t change when shut down. Refer to the article Configuring a custom domain name
for a Microsoft Azure cloud service or storage account30 for additional information.
6. If you are an administrator for more than one Microsoft Azure Subscription, select the
subscription you want the virtual machine created in.
30
http://www.windowsazure.com/en-us/develop/net/common-tasks/custom-dns/
21
8. Select to have a storage account automatically created or select and existing storage account
for the virtual machine’s VHD file.
9. If you are connecting multiple virtual machines together in a cloud service to perform an
action like load balancing, provide the name for an availability set. The availability set can be
created with the first virtual machine created in a cloud service. Select the existing availability
set for each additional virtual machine being added to the cloud service. The availability set
ensures that the virtual machine instances are created in different fault and update domains.
Using this option provides further protection against a single point of failure, such as a failing
network switch, that could affect the entire cloud service.
10. Add any endpoint you know will be required for the virtual machine. Endpoints can also be
added as needed after the creation of the virtual machine.
In an environment where you have configured a private virtual network in Microsoft Azure, you will
need to set up the first virtual machine as an Active Directory domain controller. Follow the steps in
the article Install Active Directory forest in the Microsoft Azure network32 for directions on setting up
Active Directory in a private Microsoft Azure Virtual Network. You may also choose to deploy additional
domain controllers for improved availability and performance if needed.
In an environment where you have connected the Microsoft Azure Virtual Network to your on premise
network, you may choose to configure a virtual machine as an additional Active Directory domain
controller for your on premise forest. This can improve the availability and performance of Active
Directory. Follow the steps in the article Install a Replica Active Directory Domain Controller in
Microsoft Azure Virtual Networks33 for directions about using a Microsoft Azure Virtual Machine as an
additional domain controller for your on premise Active Directory forest.
31
http://msdn.microsoft.com/en-us/library/windowsazure/jj156090.aspx
32
http://www.windowsazure.com/en-us/manage/services/networking/active-directory-forest/
33
http://www.windowsazure.com/en-us/manage/services/networking/replica-domain-controller/
22
1. In the Microsoft Azure Management Portal, select the virtual network you created. Click the
Configure tab.
2. Enter the name and Internal IP address of the Domain Controller virtual machine. (The
internal IP address can be found on the dashboard page of the virtual machine.)
3. Save the changes using the SAVE option on the bottom of the page.
34
http://msdn.microsoft.com/en-us/library/windowsazure/dn248436.aspx
23
2. Attach at least one data disk to the virtual machine. The data disk stores the SQL Server data
and log files. Based on the SQL Server performance white paper you may want to add multiple
disks for storage and performance reasons. You may also want to create additional data disks
for SQL backups. (Repeat the following steps for each disk you want added.) If you are using
Geo Redundant Storage (GRS) for the data disks, make sure and place the data and log files
for the databases on the same disk. The recommended host cache configuration of the data
disk will depend on the total number of concurrent GP users accessing the data disk and the
size of the data disk. Setting the “HOST CACHE PREFERENCE” to read only will cache the disk
to the local machine’s physical disks and may improve performance in configurations with
fewer than approximately 250 concurrent users. The maximum size of the data disk in order
to use the read only cache setting is 640 GB, so if your data disk is larger than this you will
need to set the “HOST CACHE PREFERENCE” to none.
a. In the Microsoft Azure Management Portal, select the virtual machine you created. On
the bottom of the screen, click Attach and then click Attach Empty Disk.
b. Provide the size for the data disk.
c. If you will have fewer than approximately 250 concurrent Dynamics GP users
accessing the data disk and the data disk is less than 640 GB, it is recommended that
you set “HOST CACHE PREFERENCE” to READ ONLY. If you will have more than 250
concurrent GP users or the data disk is larger than 640GB then set “HOST CACHE
PREFERENCE” to NONE.
3. In the Microsoft Azure Management Portal, select the virtual machine. On the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Open Disk Management to initialize and format the data disks that were attached.
b. Join the virtual machine to the domain.
c. Create the following folder structure at the root of the data disk.
i. Data – MSSQL\DATA
ii. Log – MSSQL\LOGS
24
2. Select the Database Settings tab and change the Database default
locations to the folders that you created in the data disks you attached
to the virtual machine.
3. Click OK to save settings. (Restart SQL Server for the settings to take
effect.)
ii. Create a new SQL Server Login with sysadmin privileges, or as an alternative
enable the ‘sa’ account to use when setting up Dynamics GP. If enabling the
‘sa’ account, enter a password for the account. (This step only needs to be
done if you didn’t perform it during the SQL Server installation, or if the virtual
machine was created from the Image Gallery.)
35
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
25
In order to further protect the SQL Server from unauthorized access, you may want to consider
removing the endpoint on the host virtual machine for the remote desktop connection. Removing this
public endpoint will require that all virtual machine administration for the SQL Server is done from
another machine within the virtual network.
The installation of the Microsoft Dynamics GP desktop client used to create the databases can be on
the SQL Server virtual machine or another virtual machine depending on your configuration. It is
recommend that you install on another virtual machine, such as the Microsoft Dynamics GP web
client’s session host or the Remote Desktop Services session host server, in order to keep the SQL
Server virtual machine as clean as possible with sufficient operating system disk space. Use the
following steps to install the Microsoft Dynamics GP desktop client, create the databases, and deploy
the Business Intelligence Reports.
1. Install the Microsoft Dynamics GP Desktop Client using the directions in the installation
manual36.
2. Use Microsoft Dynamics GP Utilities in the desktop client installation to create the Microsoft
Dynamics GP databases. Make sure and select to create the databases on the data disk
attached to the SQL Server virtual machine instead of the operating system disk. If you are
using Geo Redundant Storage (GRS) for the data disk, make sure and place the data and log
files on the same disk.
36
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
26
1. Create the virtual machine using a Windows Server or SQL Server image. If you choose to
create a virtual machine using a SQL Server image, you will have additional steps after the
virtual machine is created to configure Microsoft SQL Server Reporting Services for use with
Microsoft Dynamics GP. If you choose to create a virtual machine using a Windows Server
image, you will need to install SQL Server to the VM using the configuration provided in the GP
installation documentation.
2. In the Microsoft Azure Management Portal, select the virtual machine. At the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Join the virtual machine to the domain.
b. Install Microsoft SQL Server Reporting Services using the recommended settings in the
Dynamics GP installation manual 38. (Skip this step if you used an image with Microsoft
SQL Server already installed.)
c. Use the Reporting Services Configuration Manager to configure SQL Server Reporting
Services. If users will be accessing the reports over the internet, it is recommended
that you configure reporting services for SSL (Secure Sockets Layer). Refer to article
Configure SSL Connections on a Native Mode Report Server39 for additional
information.
d. Follow the setup instructions in the Microsoft Dynamics GP System Setup Guide on the
Microsoft Dynamics GP 2015 installation media to configure SQL Server Reporting
Services for use with Microsoft Dynamics GP.
e. Add an inbound rule to allow access to the SQL Server Reporting Services port to the
virtual machines firewall.
f. Note whether the Database Engine, Analysis Services, Full-text Search Services, and
Integration Services are installed and running on the image. If you won’t be using any
of these services on this server, stop the services and change them to manual or
disabled.
37
http://msdn.microsoft.com/en-us/library/windowsazure/jj992719.aspx
38
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
39
http://technet.microsoft.com/en-us/library/ms345223(v=sql.110).aspx
27
If you will be setting up multiple SQL Server Reporting Services virtual machine instances as load
balanced, create additional virtual machine instances using these same steps. When creating the
virtual machine, choose to join the cloud service created when setting up the first SQL Server
Reporting Services virtual machine.
2. In the Microsoft Azure Management Portal, select the virtual machine. At the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Join the virtual machine to the domain.
b. Install the Dynamics GP Tenant Services using the instructions in the
TSInstallAdminGuide.pdf available from the Microsoft Dynamics GP 2015
Documentation download page.
28
1. The first option is to use DNS load balancing by adding a new A record in your internal DNS for
each of the Tenant Service virtual machines using a load balanced name and the internal IP
address of the virtual machine. The Tenant Services URL used by other applications will be the
load balanced name you used for the A records added to your DNS. Refer to the Configuring
DNS load balancing40 article for additional information.
2. The second option is to use the new Azure Internal Load Balancing (ILB) feature to load
balance virtual machines that reside inside of a virtual network. You will create a load-
balanced set to configure a Virtual IP address (VIP) for the virtual machines hosting Tenant
Services. The multitenant applications will then use the VIP address when communicating to
Tenant Services and Azure will load balance the requests across the virtual machines. Refer to
the Configure an internal load-balance set41 for additional information and step directions on
creating an Azure ILB.
Example:
40
http://technet.microsoft.com/en-us/library/cc787484(v=WS.10).aspx
41
https://msdn.microsoft.com/en-us/library/azure/dn690125.aspx
29
3. Add endpoints for both the Tenant Services Management Service port and Tenant Services
Discovery Service port. By default these are 48630 and 48631.
Sample commands where GPTS1 is the name of the first virtual machine. Run the
commands for each virtual machine replacing the name of the virtual machine.
Get-AzureVM –ServiceName GPTS –Name GPTS1 | Add-AzureEndpoint -Name TSDISC -
Protocol tcp -LocalPort 48630 -PublicPort 48630 –DefaultProbe -InternalLoadBalancerName
GPTSILB | Update-AzureVM
4. Create an A record in DNS for the VIP of the ILB instance. The Tenant Services URL used
by other applications will be the FQDN name you used for the A record added to your DNS.
Example: http://TenantServicesLB.gpwithazure.com/
If you didn’t specify an IP address during the creation of the ILB instance, use the
following command to get the VIP.
Get-AzureService -ServiceName GPTS | Get-AzureInternalLoadBalancer
2. In the Microsoft Azure Management Portal, select the virtual machine. At the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Join the virtual machine to the domain.
b. Import the security certificate to the computer’s personal store.
c. Install Internet Information Services (IIS) and ASP.NET by adding the Web Server
(IIS) role. Make sure and select the ASP.NET and Windows Authentication features on
Windows Server 2008 R2 and the ASP.NET 4.5, Windows Authentication, and HTTP
Activation features on Windows Server 2012.
d. Create a new web site or configure the default web site for SSL.
42
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/WebClientInstallAdmin.pdf
30
If you will be setting up multiple Web Server virtual machine instances as load balanced, create
additional virtual machine instances using these same steps. When creating the virtual machine,
choose to join to the cloud service created when setting up the first Web Server virtual machine,
selecting to create an availability set.
2. In the Microsoft Azure Management Portal, select the virtual machine. At the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Join the virtual machine to the domain.
b. Import the security certificate to the computer’s personal store.
c. Install Microsoft Dynamics GP Web Client per the instructions in the Microsoft
Dynamics GP Web Components Installation and Administration Guide. (Note: Make
sure and install the GP Web Resource Cache for improved performance.)
43
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/WebClientInstallAdmin.pdf
31
In planning your RDS server configuration, you need to determine the number of virtual machines that
will be required. If you will require more than one RDS server, you will likely be setting up a load
balanced RDS Server farm using two or more virtual machines. The following are a few examples of a
Microsoft Azure virtual machine configuration for RDS Servers.
Single Machine
A single machine configuration consists of one virtual machine with all of the required RDS role
services installed on it. These services would typically consist of RD Connection Broker, RD Session
Host, RD Gateway, RD Web Access and RD Licensing. A single machine configuration doesn’t offer any
redundancy, the result is that if the virtual machine is unavailable for any reason users will not have
access to the application.
Use the following steps to set up a single Microsoft Azure virtual machine as an RDS server host.
32
3. Add a public endpoint for the RD Gateway and RD Web Access ports.
a. In the management portal, select the virtual machine, and click the ENDPOINT tab.
b. On the bottom of the screen, click Add Endpoint.
c. Add an endpoint for the RD Gateway port and RD Web Access port if used. (Port 443
by default.)
Use the following steps to set up two or more Microsoft Azure virtual machines as RDS Server farm
hosts.
44
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
33
The first configuration example has all of the RDS role services deployed on two or more virtual
machines connected together as a load balanced cloud service in Microsoft Azure. This provides a
single public virtual IP address for load balanced user access to the RD Gateway and RD Web Access
role services. Each machine also has an internal IP address for the RD Connection Broker and RD
Session Host communications. In this configuration, all of the RDS role services are installed on each
of the virtual machines. The RD Connection Broker is configured for high availability and will use a SQL
Server database for session information. The RD Connection Broker is distributing the user sessions
across the RD Session Host virtual machines.
45
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
34
1. Create the virtual machines using a Windows Server image. (When creating the 2nd and all
additional virtual machines, choose to join to the cloud service created when setting up the
first virtual machine, selecting to create an availability set.)
2. In the Microsoft Azure Management Portal, select the virtual machine. At the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Join the virtual machine to the domain.
b. If you already have a security certificate you will be using with the RD Gateway, then
import the security certificate to the computer’s personal store.
c. Open server manager and add the Remote Desktop Services role and role services.
d. Configure Remote Desktop Services. (i.e. Configure certificates, Create Session
Collection, Configure RD Connection Broker for high availability, etc.)
Note: When configuring the RD Connection Broker for high availability you will provide
a load balanced address for the RD Connection Broker, it is suggested you don’t use
the same domain name as the load balanced cloud service.
e. Install the Microsoft Dynamics GP components that require RDS to access by using the
directions provided in the Microsoft Dynamics GP installation manual 46.
f. Configure the Microsoft Dynamics GP application component as a RemoteApp.
3. Add a public endpoint for the RD Gateway and RD Web Access ports.
a. In the management portal, select the virtual machine, and click the ENDPOINT tab.
b. On the bottom of the screen, click Add Endpoint.
c. Add an endpoint for the RD Gateway port and RD Web Access port if used. (Port 443
by default.)
4. Add an A record on your internal DNS for the RD Connection Broker load balanced address you
provided during the setup of RD Connection Broker for high availability and the internal IP
address of the virtual machine.
46
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
35
Use the following steps to set up a high availability RDS server farm on load balanced Microsoft Azure
virtual machines.
1. Create the virtual machines using a Windows Server image. (When creating the 2nd and all
additional virtual machines, choose to join to the cloud service created when setting up the
first virtual machine, selecting to create an availability set.)
2. In the Microsoft Azure Management Portal, select the virtual machine. At the bottom of the
screen, click Connect. This will open a remote desktop connection to the virtual machine.
a. Join the virtual machine to the domain.
b. If you already have a security certificate you will be using with the RD Gateway, then
import the security certificate to the computer’s personal store.
c. Open server manager and add the following Remote Desktop Services roles and role
services to the server.
i. RD Connection Broker
ii. RD Gateway
iii. RD Web Access
iv. RD Licensing
d. Configure the installed services.
i. Configure certificates for RD Gateway, RD Web Access and RD Connection
Broker as needed.
36
Repeat the steps above for each of the virtual machines that will be configured with the high
availability role services.
Use the following steps to set up two or more Microsoft Azure virtual machines as stand-alone RD
Session Host servers.
47
https://mbs.microsoft.com/Files/customer/GP/Downloads/ProductReleases/Installation.pdf
48
http://www.microsoft.com/en-us/download/details.aspx?id=5916
37
38
The key difference in building your maintenance and backup procedures on Microsoft Azure versus on
premise is where the database backups will be stored. The recommended storage location for the
database backups for a Microsoft Azure deployment is in Microsoft Azure blob storage. Microsoft Azure
blob storage provides a number of safeguards for the data. The first is locally redundant storage
(LRS). LRS maintains three copies of the account data within the primary data center. The second is
geo-redundant storage (GRS), which replicates the account data to a secondary data center in the
same region. GRS functionality is implemented through a feature called geo-replication, which is
turned on for a storage account by default, but can be turned off if you don’t want to use it. Refer to
the Microsoft Azure Storage49 page for information on creating and managing storage accounts. There
are two options for creating backups in Microsoft Azure blob storage.
Data Disk
A new empty data disk can be attached to the Microsoft Azure virtual machine that will be used to
store the backup files. The data disk will be visible like any other local disk when setting up your
maintenance plan. Select this disk as the backup file location when following the directions in the
Microsoft Dynamics GP Database Maintenance article for setting up a Microsoft Dynamics GP
maintenance plan using the SQL Server Maintenance Plan Wizard.
49
http://www.windowsazure.com/en-us/manage/services/storage/
39
Because a Microsoft Azure virtual machine instance is a Hyper-V image, you can use the same
processes and tools to manage the virtual machine as you would on premise. You are in complete
control of the monitoring and patching process and are able to use familiar tools like Microsoft
System Center and Windows Update to keep the operating system and other software running
properly.
It is recommended that you use published best practices information when determining the
approach to take for managing the Microsoft Azure virtual machines. The virtual machines
containing the Microsoft Dynamics GP components should be set up to have updates applied
during pre-determined maintenance windows to avoid service interruptions for users. By default
the virtual machine instances created from the Microsoft Azure Platform Image Gallery are
configured with Windows Update set to automatically install important Windows updates during a
maintenance window configured for 3:00 AM on the virtual machine’s clock. It is recommended
you evaluate this setting to determine if it fits into your desired maintenance process and adjust
accordingly.
You may also want to change the virtual machine instance size as usage patterns change. Follow
these steps to change the size of a virtual machine instance.
1. In the Microsoft Azure Management Portal, select the virtual machine, and then click the
CONFIGURE tab.
2. Select the desired size from the Virtual Machine Size drop-down.
50
http://msdn.microsoft.com/en-us/library/jj919148.aspx
40
Changing the size of a virtual machine will result in a re-deployment of the virtual machine. You
will want to perform this procedure when no users are logged in and using Microsoft Dynamics GP
or other software on the virtual machine.
41
Troubleshooting
Troubleshooting Microsoft Dynamics GP on Microsoft Azure typically involves the same techniques that
you would use for any Microsoft Dynamics GP deployment. The Microsoft Dynamics GP product
documentation will serve as a good reference for identifying and resolving application issues. When
troubleshooting on Microsoft Azure, you will need to account for unique communication errors that you
may not have to consider in an on premise deployment.
Depending on the virtual network configuration and where users will be accessing Microsoft
Dynamics GP from, you may see issues related to communications not reaching the intended
destination. When Microsoft Dynamics GP is deployed on premise, the name resolution and
communication routing from the user’s client computer to the Microsoft Dynamics GP servers is
handled by your internal DNS and network configuration. Unless all users will be accessing
Microsoft Dynamics GP from an on premise network connected to the Microsoft Azure Virtual
Network, the communication from the user’s client computer to Microsoft Dynamics GP in
Microsoft Azure is handled by public DNS records and virtual machine endpoints.
An example of this type of issue is a user getting the following error when attempting to access
the Microsoft Dynamics GP Web Client.
42
Microsoft Azure
The following are examples of Microsoft Azure questions or issues. If you are experiencing any of
the following types of issues you will want to contact Microsoft Azure support.
If you have a billing-related question, open the Microsoft Azure support option page51 and select
the technical and billing support option. You will need to log in using your Microsoft Account.
Microsoft Azure billing support is provided at no cost.
If your question is about using Microsoft Azure, you have the following options for obtaining
technical support. Refer to the Microsoft Azure Support Plan52 page for available plans and pricing
information.
1. Online Forums – Open the Forums page53 to obtain assistance with your questions from the
Microsoft Azure community.
51
http://www.windowsazure.com/en-us/support/contact/
52
http://www.windowsazure.com/en-us/support/plans/
53
http://www.windowsazure.com/en-us/support/forums/
43
3. Assisted Technical Support - Open the Microsoft Azure support option page, If you are an
existing Account holder – sign in using your Microsoft Account and create a support ticket.
4. If you have subscriptions that are not active, please contact Microsoft Support55.
Microsoft Dynamics GP
The following are examples of Microsoft Dynamics GP questions or issues. If you are experiencing any
of the following types of issues you will want to contact Microsoft Dynamics GP support.
If your question is a licensing related question, contact your Partner if you are a customer.
Partners contact the Dynamics Regional Operations Centers (ROCs). The Regional Operations
Centers can be contacted on-line using PartnerSource pages.
If your question or issue is about using Microsoft Dynamics GP, you have the following options for
obtaining technical support.
1. Self-help Technical Support – Log onto PartnerSource or CustomerSource, click Support and
then Knowledge Base to search for articles on your question or issue.
2. Assisted Technical Support - Log onto PartnerSource or CustomerSource, click Support and
then New Technical Support Request to create a request to speak with a support engineer.
3. Partner Network – Access the Get Support page on the Microsoft Partner Network (MPN)56.
54
http://www.windowsazure.com/en-us/support/contact/
55
http://support.microsoft.com/
56
https://mspartner.microsoft.com/en/us/Pages/Support/get-support.aspx
44
This is a preliminary document and may be changed substantially prior to final release.
The information contained in this document represents the current view of Microsoft Corporation on the issues discussed as of the
date of publication. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a
commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information presented after the date of
publication.
This white paper is for informational purposes only. Microsoft makes no warranties, express or implied, in this document.
Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of
this document may be reproduced, stored in, or introduced into a retrieval system, or transmitted in any form or by any means
(electronic, mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of
Microsoft Corporation.
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject
matter in this document. Except as expressly provided in any written license agreement from Microsoft, the furnishing of this
document does not give you any license to these patents, trademarks, copyrights, or other intellectual property.
Microsoft, Active Directory, Excel, Hyper-V, Microsoft Dynamics, SharePoint, SQL Server, Windows, Microsoft Azure and Windows
Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.
45