Источник:
http://blogs.msdn.com/b/axsupport/ar...eployment.aspx
==============
Using the
Cloud-hosted environment tool in Lifecycle Services, you can deploy a High Availability environment. When you deploy a High Availability environment, two BI servers are deployed by default. Each BI server has SQL Server Reporting Services (SSRS) and SQL Server Analysis Services (SSAS) configured as a unique local instance. Use the following information to configure SSRS for load balancing.
Here’s what you’ll need to do:
- Create an Azure Internal Load Balancer (ILB)
- Set up SSRS in scale-out mode
- Connect Microsoft Dynamics AX to SSRS and then deploy reports
- Add the ReportServer database to the AlwaysOn Availability Group
- Complete final configuration steps
- Verifying the Azure ILB
Create an Azure Internal Load Balancer (ILB)
- Install and configure Azure PowerShell
- If deploying a High Availability or Test environment, steps a and b have already been done for you. You may want verify the Azure ILB settings.
Note: We recommend that you paste the following commands into a text document with a PS1 extension, and then run in PowerShell.- Use the Get-AzureInternalLoadBalancer command to review the existing ILB
Get-AzureInternalLoadBalancer -ServiceName
- Use the Get-AzureEndpoint command to review the existing endpoints for a specific machine.
$test = Get-AzureVM
foreach ($t in $test){
$ILBs = Get-AzureVM -ServiceName $t.ServiceName -Name $t.Name | Get-AzureEndpoint |? {$_.InternalLoadBalancerName -eq "ILB"}
if($ILBs -ne $nul){
("VMName=" + $t.Name)
$ILBs
"'r'n"
}
}
- Use the Add-AzureEndpoint command to add endpoints to an existing ILB for SSRS traffic.
Note: We recommend that you paste the following commands into a text document with a PS1 extension file for each BI server and service name, and then run in PowerShell.
$AzureCloudServiceName=""
$EndpointName="ReportingServices"
$LoadBalanceSetName="ReportingServices"
$Protocol="tcp"
$Port=80
$LoadBalancerName="ILB"
$VirtualMachineName=""
Get-AzureVM -ServiceName $AzureCloudServiceName -Name $VirtualMachineName | Add-AzureEndpoint -Name $EndpointName -Protocol $Protocol -LocalPort $Port -PublicPort $Port -DefaultProbe -InternalLoadBalancerName $LoadBalancerName -LbSetName $LoadBalanceSetName | Update-AzureVM
Set up SSRS in scale-out mode
- On BI1 server:
- Open the Reporting Services Configuration Manager and connect to the local instance.
- Click Database.
- Click Change Database and use the wizard to create a new database for this SSRS instance using the SQL listener name (for example: SQL-LS-xxx). Note that this name can be found on the AOS VM in the Microsoft Dynamics AX Server Configuration Utility (on the Database Connection tab).
- Verify that you can access http://BI1/reports and http://BI1/reportserver.
Note: In the above URLs, replace BI1 with the name of your BI server.
- On BI2 server:
- Open the Reporting Services Configuration Manager and connect to the local instance.
- Click Database.
- Click Change Database and use the wizard to point to the database created in step 1.c.
- On BI1 server:
- Open the Reporting Services Configuration Manager and connect to the local instance.
- Click Scale-out Deployment and add the BI2 server.
Note: If you do not see the BI2 server in the list then check GUID in C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportServer\rsreportserver.config of all BI servers. If this value is the same then change to be unique for each BI server (for example ending in …81 on BI2 server and …80 on BI1 server).
- Verify that you can access http://BI2/reports and http://BI2/reportserver.
Note: In the above URLs, replace BI2 with the name of your BI server.
- Open the web.config file located in C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportManager. Add a unique machineKey element to the section. For example
Note: You can use the AOS VM to generate the machineKey. See this blog post for more information.
- Add the machineKey element (used in step 3.d.) to the the web.config file located in C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportServer.
- On BI2 server:
- Add the machineKey element (used in step 3.d.) to the web.config file located in C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportManager.
- Add the machineKey element (used in step 3.d.) to the web.config file located in C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportServer.
Connect Microsoft Dynamics AX to SSRS and then deploy reports
Open Microsoft Dynamics AX and use the
Report servers form (
System administration > Setup > Business intelligence > Reporting Services > Report servers) to connect AX 2012 to SSRS. Using 2 AOS servers and 2 BI nodes with an NLB host (ILB) as an example, there will be the following 6 entries in the
Report servers form.
- RSConfigA has AOS1 selected, server name SSRSNLB, http://SSRSNLB/reports for Report Manager URL, http://SSRSNLB/reportserver for Web service URL, Default configuration is marked
- RSConfigB has AOS2 selected, server name SSRSNLB, http://SSRSNLB/reports for Report Manager URL, http://ssrsnlb/reportserver for Web service URL, Default configuration is marked
- RSConfigC has AOS1 selected, server name SSRSNode1, http://SSRSNode1/reports for Report Manager URL, http://SSRSNode1/reportserver for Web service URL, Default configuration is not marked
- RSConfigD has AOS2 selected, server name SSRSNode1, http://SSRSNode1/reports for Report Manager URL, http://SSRSNode1/reportserver for Web service URL, Default configuration is not marked
- RSConfigE has AOS1 selected, server name SSRSNode2, http://SSRSNode2/reports for Report Manager URL, http://SSRSNode2/reportserver for Web service URL, Default configuration is not marked
- RSConfigF has AOS2 selected, server name SSRSNode2, http://SSRSNode2/reports for Report Manager URL, http://SSRSNode2/reportserver for Web service URL, Default configuration is not marked
Now open PowerShell and run the following commands to deploy reports to each node:
- Publish-AXReport -Id RSConfigC -ReportName *
- Publish-AXReport -Id RSConfigE -ReportName *
Add the ReportServer database to the AlwaysOn Availability Group
Note: Manual actions must be completed after a failover. Until these actions are completed, some features of the report server may not work correctly. See the section entitled “
Steps to complete disaster recovery of Report Server Databases” in
Reporting Services with AlwaysOn Availability Groups (SQL Server) to see the steps that must be completed after a failover occurs.
Add the ReportServer database to the existing AlwaysOn Availability Group (AG). To do so:
- Open SQL Server Management Studio and connect to your instance (for example: SQL-LS-xxx).
- Perform a full backup of the ReportServer database.
- Expand AlwaysOn High Availability.
- Right-click the existing AG and click Add Database.
- Complete the wizard.
Note: You must have a path that is shared between servers, such as \\server\Backup. (This is one of the SQL Servers, like SQL1.)
Then, back up the ReportServerTempDB database on the primary SQL Server. Restore it on the secondary SQL Server.
Complete final configuration steps
On client and RDS VMs:
- Browse to this location: C:\Windows\System32\drivers\etc\hosts.
- At the bottom of the file, provide the IP address of the Azure ILB and SSRSNLB name, for example: 10.1.1.6 SSRSNLB.
Repeat this procedure on all client and RDS VMs.
On BI VMs:
- Browse to this location: C:\Windows\System32\drivers\etc\hosts.
- At the bottom of the file, provide the IP address of the Azure ILB and AOSLoadBalancer name, for example: 10.1.1.6 AOSLoadBalancer.
- Open the Microsoft Dynamics AX Configuration Utility.
- In the Configuration target list, select Business Connector (non-interactive use only).
- On the Connection tab, edit the server name to be AOSLoadBalancer.
Repeat this procedure on all BI VMs.
Verifying the Azure ILB
The
psping.exe tool can be used to verify Azure ILB ports. Example:
psping.exe SSRSNLB:80
These ports can be verified from Client or RDS VMs.
Источник:
http://blogs.msdn.com/b/axsupport/ar...eployment.aspx