Module 1: Infrastructure and Capacity Planning For Microsoft Dynamics Ax 2012 Module Overview
Module 1: Infrastructure and Capacity Planning For Microsoft Dynamics Ax 2012 Module Overview
Module Overview
This module provides the high level information that is required for an
administrator to perform sizing for an instance of Microsoft Dynamics® AX 2012.
To perform this sizing, an administrator must combine his or her understanding of
the Microsoft Dynamics AX 2012 architecture, and the performance characteristics
with relevant information on how Microsoft Dynamics AX 2012 will be used. In
this module, you learn the fundamentals of the Microsoft Dynamics AX 2012
system architecture. Sizing guidelines and benchmarks are included to use as
references. Additionally, the guidelines and benchmarks are provided with a
sample set of questions to ask a company that relate to performance.
Objectives
System Architecture
http://go.microsoft.com/fwlink/?LinkId=286895
http://go.microsoft.com/fwlink/?LinkId=286896
Three-Tier Architecture
The Application Object Server (AOS) exists on the application tier and is
responsible to run the business logic that is contained in application objects, such
as table methods and classes.
The client exists in the presentation tier and displays application objects that are
related to the user interface (UI) and includes forms and reports.
Data Tier
The model store is a SQL Server database that is used to store all models that have
application elements and customizations. The model store replaces the
Application Object Data (AOD) files that are in the application folder in earlier
versions of Microsoft Dynamics AX 2012.
Note: In Microsoft Dynamics AX 2012 R2, the model store is moved from the
Microsoft Dynamics AX 2012 database to its own database instance. The naming
convention for the model store is the name of the Microsoft Dynamics AX 2012
database plus “_model”.
The Report Server database stores the metadata and object definitions for
Microsoft SQL Server Reporting Services reports in Microsoft Dynamics AX 2012.
The Report Server includes two separate databases named “reportserver” and
“reportservertempdb.” These databases store permanent and temporary data.
The analytical features, such as Online Analytical Processing (OLAP) cubes and Key
Performance Indicators (KPIs) for Microsoft Dynamics AX 2012 are stored in the
Microsoft SQL Server Analysis Services database.
Enterprise Portal requires the content and the configuration of the databases for
Microsoft SharePoint® products.
Application Tier
The application tier contains many components and services that are responsible
for running business logic for Microsoft Dynamics AX 2012.
The AOS manages the communication between the clients and the database. The
AOS also hosts services, such as the workflow system, and it performs security and
runs the business logic for Microsoft Dynamics AX 2012. The AOS can effectively
balance the client load across multiple AOS servers or instances.
Enterprise Portal is a set of websites that are used to access Microsoft Dynamics
AX 2012 data and business processes by using web-based forms. Enterprise Portal
is hosted on Internet Information Services (IIS) and Microsoft SharePoint
Foundation 2010 or Microsoft SharePoint Server 2010.
Microsoft Dynamics AX 2012 uses Microsoft SQL Server Reporting Services (SSRS)
and SQL Server Analysis Services (SSAS) to create traditional and online analytical
processing (OLAP) reports to view data and analyze business trends.
Workflow
Workflow lets users define the flow of a business process through Microsoft
Dynamics AX. The workflow system is included in the AOS installation process.
Services and the AIF let other internal and external systems communicate through
XML with Microsoft Dynamics AX 2012.
Help Server
Presentation Tier
The Microsoft Dynamics AX 2012 Client is a native 32-bit program that is used to
access all forms, reports, and queries in Microsoft Dynamics AX 2012.
Enterprise Portal
Users who do not require access to many features that are available in the
Microsoft Dynamics AX 2012 Client can use web-based forms that are hosted on
the Enterprise Portal.
Reporting Architecture
Microsoft Dynamics AX provides a set of websites that give you access to data. On
these sites, you can also participate in business processes by using web-based
forms. These combined websites are called the Enterprise Portal. The Enterprise
Portal requires Internet Information Services (IIS). IIS is a feature of Windows
Server, and either Microsoft SharePoint Foundation 2010 or Microsoft SharePoint
Server 2010.
Sizing Questions
A basic set of questions for the administrator to ask when he or she performs
hardware sizing for an instance of Microsoft Dynamics AX 2012 is available.
Although this is not a complete list of questions, it is a good way to start.
Every implementation has unique characteristics that you must consider when you
perform hardware sizing. The administrator is responsible for performing
hardware sizing, and should continue to ask questions until he or she understands
the system requirements. By doing this, the administrator can use his or her
knowledge of the Microsoft Dynamics AX 2012 architecture, sizing guidelines, and
benchmarks to create an acceptable hardware plan.
All transaction types should be considered including, but not limited to, the
following:
The current number of records for master data should also be measured to help
estimate the initial size of the Microsoft Dynamics AX 2012 database. For most
implementations, transaction volume will be an important element in determining
the overall size of the database. However, if there is significant master data such as
four million customers, this will significantly affect the starting size of the
database.
• Customers
• Vendors
• Products
• Zip codes
• Other
Take an inventory of the modules and the processes that will be used after the
Microsoft Dynamics AX 2012 deployment, to assess the hardware that will be
required to configure the environment.
Examples can include Accounts Receivable, Sales order processing, the General
Ledger, and so on.
If Role Centers or Enterprise Portal will be deployed, a web server that runs
Internet Information Services (IIS) will be required.
Each module that is used increases the over transactions that are processed and
the complexity of the system. These must be considered when you perform
hardware sizing.
There are many companies that have customized Microsoft Dynamics AX 2012.
These customization’s or improvements increases the complexity of the code base,
and you must consider them when you perform hardware sizing.
Understanding the integration projects that are related to the Microsoft Dynamics
AX 2012 deployment is important when you plan the hardware.
Most companies have unique characteristics that help them differ from their
competition. Many of these unique characteristics must be included in the
Microsoft Dynamics AX 2012 implementation so that it runs efficiently. Including
these unique characteristics requires that modifications be created, and these
modifications can have a significant effect on performance.
List any major customizations that are planned. Also list the general method that
will be used to perform the customizations if this data is available when hardware
sizing is performed.
Ideally, you will want to know how many users will be accessing Microsoft
Dynamics AX 2012. Although it is not as important to know the user count as it is
the transaction volume when planning the number of Application Object Servers
(AOS) to deploy, it is especially useful when planning processor requirements for
the Enterprise Portal. Enterprise Portal offers several self-service type tasks.
Therefore, you should understand the expected concurrent user sessions during
peak hours to handle the workload accordingly.
We do not recommend that you access the Microsoft Dynamics AX 2012 Client
over a Wide Area Network (WAN) without an application sharing program such
as, Remote Desktop Services. Remote Desktop Services can provide users’ access
to the Microsoft Dynamics AX Client that is installed on a Windows-based server
that is located on the Local Area Network. This is where the Microsoft Dynamics
AX 2012 server components are located. An additional server is required to host
the Remote Desktop Services feature for Windows Server 2008.
If Remote Desktop Services is required, consider the number of users who are
required to connect to the Microsoft Dynamics AX Client through the terminal
server. General memory and processor requirements can be identified based on
user counts.
The Enterprise Portal can be used to display role centers in Microsoft Dynamics AX
2012, provide the time and expense entry for a whole organization, or provide a
portal in Microsoft Dynamics AX 2012 for vendors.
Each of these scenarios present a different type of workload and require different
sizing requirements.
For example, a vendor portal must be available through the Internet, expense and
time entry systems will be busy two days a month and idle otherwise, and role
centers will present a smaller consistent load.
Processes such as sales order invoicing can require significant resources to run
efficiently. You must understand any required batch processes to correctly
allocate Application Object Servers (AOS) that are designated to run batch jobs
and the number of available threads for each AOS.
When you access the processor and memory requirements for batch servers,
identify the maximum duration that is allowed for the process to complete (batch
window characterization) through performance testing and benchmarks.
For multiple batch processes or processes with multiple threads, try to cluster
AOSs to support the many workloads. Critical batch processes should be allocated
across AOSs through Network Load Balancing to guarantee high availability.
Microsoft Dynamics AX 2012 provides the option to dedicate the AOS to just load
balancing. Load balancing can be achieved without a dedicated server, and has
minimal effect on AOS performance. Dedicated load balancing servers should be
used only for companies who have user counts in the thousands.
http://go.microsoft.com/fwlink/?LinkId=286904
When you plan the architecture for Microsoft Dynamics AX 2012, include the
hardware that is required to run all environments, not just production. Some other
environments that might be useful in an implementation are described in the
following table.
Name Description
Training The environment that is dedicated to training users, and
does not have the data or code changes that are
associated with the test environment during the
implementation.
http://go.microsoft.com/fwlink/?LinkId=286897
Microsoft Dynamics AX 2012 can connect to another AOS if the first AOS is
unavailable. However, to do this, the company must have multiple AOS servers. An
N+1 methodology should be applied when high availability of AOS servers is
required, where N is the number of server or instances recommended. For
example, if three AOS servers are required to handle day to day volume, than four
AOSs would be required to handle day to day volume and provide high
availability.
http://go.microsoft.com/fwlink/?LinkId=286905
IIS can be used by Microsoft Dynamics AX 2012 to host web services, help server,
and the Enterprise Portal. If any of these components requires more availability,
then the N+ 1 methodology should be applied when there is an increase for IIS,
where N is the number of servers or instances recommended. For example if
three IIS servers are required to handle day to day volume, than four IIS servers
would be required to handle day to day volume and provide high availability.
http://go.microsoft.com/fwlink/?LinkId=286898
Terminal Services Session Broker Load Balancing can be set up for Remote
Desktop Services. This provides high availability and load balance between
Remote Desktop Services servers. An N+1 methodology should be applied when
high availability of Remote Desktop Services servers is required, where N is the
number of server or instances recommended.
For example, if three Remote Desktop Services servers are required to handle day
to day volume, than four Remote Desktop Services servers would be required to
handle day to day volume and provide high availability.
Refer to the TS Session Broker Load Balancing Step-by-Step Guide for more
information about how to set up Terminal Services Session Broker for Load
Balancing.
http://go.microsoft.com/fwlink/?LinkId=286900
WSFC and SQL Failover Clustering can automatically transfer the application from
one cluster node to another to provide high availability and minimize disaster
recovery scenarios. Consider the additional hardware and software licensing that
is required.
For more information about high availability solutions for SQL Server
2012, refer to the High Availability Solutions (SQL Server) webpage on the
Microsoft Developer Network (MSDN).
http://go.microsoft.com/fwlink/?LinkId=286906
Although database failover can reduce the risk of a full blown disaster, additional
decisions should be made to create an acceptable plan to recover from a loss.
The following questions can help prepare the hardware requirements to support a
good disaster recovery plan:
For more information about disaster recovery for Microsoft SQL Server,
refer to the Planning for Disaster Recovery article on MSDN.
http://go.microsoft.com/fwlink/?LinkId=286907
You must have a database backup strategy to recover from a damaged database
or other data loss. A successful backup strategy involves two parts—backup and
restore.
The backup strategy must include the definition of the type of backup (Full,
Differential, or Transaction Log), the frequency of the backup (for example, every
hour), and where the backup will be stored just to name some.
The restore strategy must include the responsible party to achieve the database
restore and outline the criteria to determine a successful restore.
Note: The backup strategy must always include a periodic restore of the
database and the test plan against Microsoft Dynamics AX 2012 to make sure that
a successful restore can occur in a real-life disaster recovery scenario.
Answers to the following questions will help you understand the hardware that is
required to support the speed and nature of the backup strategy.
Full database backups should be taken either off-peak hours, or from a synchronous
partner in an AlwaysOn availability group.
http://go.microsoft.com/fwlink/?LinkId=286908
http://go.microsoft.com/fwlink/?LinkId=286909
Sizing Guidelines
Hardware sizing guidelines can serve as a baseline for the initial configuration of
Microsoft Dynamics AX 2012.
You should be aware that many factors can affect the sizing guidelines that are
provided and can result in additional processor, memory, and, or storage
requirements.
Note: Database Server Sizing Guidelines can be used as a starting point for
sizing. However, other elements such as modules used, integrations, and
customizations must be considered when you perform sizing.
The hardware sizing for the Microsoft Dynamics AX 2012 database server should
be based on concurrent transaction volume. It is more important that you
understand the transaction workload than the concurrent user count, because
typically the behavior in the user processes differ by user and the transaction
workload usually remains consistent.
• CPU – The database server should have one core for every 4,000 to
12,000 transactions entered for every hour, with a minimum of four
cores. For example, an organization that enters 48,000 transactions
for each hour during peak hours should have 4 to 12 cores.
Note: The elements described in the beginning of this lesson can significantly
reduce the recommended transaction workload for every core that is outlined.
Adjusted transactions for each second = (Max of all transactions for each second +
batch jobs) * 1.5
Note: The minimum IOPS for the data disk is 750, and the minimum IOPS for
the log disk is 160.
Note: You can use the AOS Sizing Guidelines as a start for sizing. However,
other elements such as the modules used, integrations, and customizations must be
considered when you perform sizing.
Just as with the database server, the AOS should be configured based primarily on
concurrent transaction volume, although concurrent user counts should be
considered.
• CPU – Each AOS should have one core for every 8,000 to 12,000
transactions entered for every hour. Additionally, one core should
exist for every 25 to 100 concurrent users who access the Microsoft
Dynamics AX 2012 system.
• Memory – 4 GB to 8 GB of memory should be allocated to each AOS
instance.
• Batch Server – AOS servers designated to run batch jobs should have
one to four threads allocated for each CPU core.
Note: Make sure that you have enough CPU, memory, and that threads are
allocated to batch servers to complete jobs in an acceptable batch window.
Note: You can use the Enterprise Portal Sizing Guidelines as a starting for
sizing. However, other elements such as the modules used, integrations, and
customizations must be considered when you perform sizing.
More attention should be given to user concurrency when sizing your Enterprise
Portal web server. Typically, users access the self-service features of the portal at
peak times, such as for the Time and Expense entry at the period end. This usually
results in more user traffic.
Note: You can use Integration Sizing Guidelines as a start for sizing. However,
other elements such as the modules used, integrations, and customizations must be
considered when you perform sizing.
http://go.microsoft.com/fwlink/?LinkID=244192&clcid=0x409
http://go.microsoft.com/fwlink/?LinkId=286899
Note: You can use the Remote Desktop Guidelines as a start for sizing.
However, other elements such as the modules used, integrations, and the
customizations must be considered when you perform sizing.
When sizing the Remote Desktop Services, consider the number of client
connections to expect to determine memory requirements. The terminal server
might host additional applications and user controls, such as Microsoft Office, and
this could also increase memory usage for every client.
Base configuration requirements for the Terminal Server include the following:
Benchmarks
Benchmarks whitepapers
http://go.microsoft.com/fwlink/?LinkId=286901
The “Day in the Life” benchmark for Microsoft Dynamics AX 2012 focused on
measuring the base application for performance and scalability. Several functional
processes were applied to determine the average throughput and response time
based on the scenario.
The Enterprise Portal benchmark showed more than 741,587 lines for every hour
were possible on an architecture that consists of two load-balanced AOS instances
servicing ten Enterprise Portal web servers. The hardware configuration and
results for the Enterprise Portal benchmark are also excellent resources for
organizations to help determine application tier hardware requirements.
http://go.microsoft.com/fwlink/?LinkID=245627
Hyper-V Benchmark
http://go.microsoft.com/fwlink/?LinkId=245625
The “High Volume Inventory Benchmark for Retail Environments” was performed
to demonstrate that Microsoft Dynamics AX 2012 can handle high transaction
volumes.
Using the performance benchmarks for the retail scenario can provide the
awareness of the hardware requirements for other integration projects.
http://go.microsoft.com/fwlink/?LinkId=266254
When you perform sizing for an instance of Microsoft Dynamics AX 2012, you
must communicate the findings to other people. To do this, create a network plan.
• Microsoft Visio
• Microsoft Word
• Microsoft Excel
Visio can be used to create a graphical representation of a network that shows the
relationships between servers. Excel can be used to obtain and keep details in an
organized way. For example, an Excel spreadsheet with columns that include
servers and rows that include components can help maintain the specifics of the
implementation architecture.
Word can be used to combine different types of data, such as images, diagrams,
tables, and formatted text into a single printable document.
After you select a tool to obtain the Microsoft Dynamics AX 2012 network plan, is
it important to make sure that the following information exists:
• Server name
• Server description and role
• Software that is installed
o Operating System, Microsoft Dynamics AX 2012 Component,
Database, and so on
• Hardware
• Relationship to other servers
How Many AOSs are Needed and How Big Should They
Be?
An AOS in Microsoft Dynamics AX 2012 can both scale up and scale out to
increase throughput.
The following questions help determine the size and count of AOS servers that are
required:
• Does the company want redundant AOSs? If this is the case, then
there must be at least two AOSs dedicated to users.
• Should user load be load balanced between several AOSs? If this is
the case, then there must be at least two AOSs dedicated to users.
• Is the transaction volume associated with the users expected to be
significant? If this is the case, multiple AOSs or large AOS servers
should be deployed. Refer to the Hardware Sizing Resources section
for both AOS sizing guidelines, and the benchmarks to use as the
comparisons.
• Does the company need a dedicated load balancing AOS? If this is
the case, then an additional AOS is required.
• Does the company need AOSs dedicated to integrations? If this is the
case, then additional AOSs are required.
• Does the company need AOSs dedicated to batch processes? If this is
the case, then additional AOSs are required.
If the load that is associated with running batch processes will interfere with the
end-users ability to use the system, then a dedicated batch AOS server should be
considered. If the load associated with this batch server cannot be completed in
the desired time, then larger or additional batch servers should be considered.
• Will the load that is associated with the integrations adversely affect
other processes or users?
• What is the expected transaction volume of the integrations?
• Will separating the integration to the separate server simplify
administration?
Additionally, the size and number of physical servers can be different when you
deploy the environment on the virtual or physical hardware.
If the SQL Server AlwaysOn Failover Cluster is required, then a second database
server must be added. The secondary database server will have its own memory,
processor, and operating system disks, although the disks associated with SQL
Server will be shared.
There are several reasons why you should use an application sharing technology.
These include the following:
If there is significant master data, such as millions of customers, then this affects
the initial size of the database.
http://go.microsoft.com/fwlink/?LinkId=286902
http://go.microsoft.com/fwlink/?LinkId=286903
Module Review
In Infrastructure and Capacity Planning for Microsoft Dynamics AX 2012, you
learned about the Microsoft Dynamics AX 2012 system architecture and how each
component is related among the three-tier architecture.
You also learned the types of questions that you can ask to help determine the
appropriate hardware sizing for the infrastructure.
Categorize Activity
Categorize each item into the correct category. Indicate your answer by writing
the category number to the right side of each item.
Categories
1. Data Tier
2. Application Tier
3. Presentation Tier
Items
Enterprise Portal
Client
Model Store
Workflow
Enterprise Portal
Application Object Server
Help Server
1. List some Questions to ask a company when you perform hardware sizing.
( )True
( )False
Categorize Activity
Categorize each item into the correct category. Indicate your answer by writing
the category number to the right side of each item.
Categories
1. Data Tier
2. Application Tier
3. Presentation Tier
Items
3 Enterprise Portal
3 Client
1 Model Store
2 Workflow
3 Enterprise Portal
2 Help Server
1. List some Questions to ask a company when you perform hardware sizing.
MODEL ANSWER:
2. Should hardware sizing for a company be based only on the basic sizing
guidelines provided in the Hardware Sizing Resources lesson?
( ) True
(√) False