Microsoft Dynamics AX Support

This blog contains posts by the Microsoft Dynamics AX Support Teams Worldwide

How to update AX 2012 Enterprise Portal in a multi-server web farm

This is a follow-up post from my main blog on How to install AX 2012 Enterprise Portal in a multi-server web farm: https://blogs.msdn.microsoft.com/axsupport/2015/11/09/how-to-install-ax-2012-enterprise-portal-in-a-multi-server-web-farm


In this post we talk about how to UPDATE your Enterprise Portal (EP) deployed on a multi-server SharePoint 2013 web farm.

 

Pre-requisite:

When you browse to the load balanced URL it will be resolved to the IP address of the load balancer which will route the request to a Web Frontend Server. If you try to deploy changes to EP without editing the hosts file, then the web application URL will be resolved to the load balancer instead of the local machine and the deployment will fail.

Steps:

Edit the hosts file located under %systemroot%\system32\drivers\etc (default location: c:\windows\system32\drivers\etc).

Add a line with local IP address mapped to host header on each server.

 

Example:

The web farm consists of 3 servers and load balanced URL is EP.contoso.com:

Central Admin server with IP 10.10.50.101

WFE1 with IP 10.10.50.102

WFE2 with IP 10.10.50.103

Then:

– On Central admin server add this line in hosts file:

10.10.50.101 EP.contoso.com

 

– On WFE1 server add this line in hosts file:

10.10.50.102 EP.contoso.com

 

– On WFE2 server add this line in hosts file:

10.10.50.103 EP.contoso.com

 

If the web farm is load balanced and the load balancer was configured after EP was installed, then be sure the host files on each server in the farm has been updated with the local IP address mapped to the Host Header before you deploy changes to EP.

 

When updating Enterprise Portal, then we need to take into account changes to the following components:

– Web modules

– Webpage definitions

– Web controls

– Proxies

– Images

– Static files – (rarely updated)

 

In order to deploy changes to AX 2012 Enterprise Portal in a farm with more than one web server, then you can use one of the following options:

 1. Deploy using AxUpdatePortal

On each web server run AxUpdatePortal jobs depending on what objects have been changed and needs an update. Ref. https://msdn.microsoft.com/en-us/library/dd261467.aspx

AxUpdatePortal –updatewebcomponent –treenodepath “Web\Web Files\Web Controls” –websiteurl http://EP.contoso.com – this will update all web controls

AxUpdatePortal –updatewebcomponent –treenodepath “Web\Web Files\Static Files” –websiteurl http://EP.contoso.com – this will update all static files

AxUpdatePortal –proxies –websiteurl http://EP.contoso.com

AxUpdatePortal –images –websiteurl http://EP.contoso.com

AxUpdatePortal –updateall cannot be used on the WFE, only on CA, as it will try to update the page definitions which can only be done on the CA server.

 

2. Deploy using Publish-AXWebComponent

On each web server use Publish-AXWebComponent command from either the Microsoft Dynamics AX Management Shell or the Windows PowerShell console. Ref. https://technet.microsoft.com/en-us/library/jj720274.aspx

 

On Central Admin (CA) SharePoint Server:

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -AOTNodePathList “\Web\Web Modules” – this will deploy new modules and update page definitions

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -AOTNodePathList “\Web\Web Files\Web controls”

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -AOTNodePathList “\Web\Web Files\Static Files”

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” –Proxy

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -Image

 

On SharePoint Web Front-End (WFE):

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -AOTNodePathList “\Web\Web Files\Web controls”

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -AOTNodePathList “\Web\Web Files\Static Files”

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” –Proxy

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -Image

 

3. Deploy from AOT or Deployment form in AX

In hosts file on AOS change IP address to point to the web server you want to deploy to and then deploy from AOT or run deployment form in AX with update web application. To update the next web server then you need to change the IP to the next web server you want to deploy to.

For example, you can have one line for each web server in the host file, one that resolves to CA and one to each WFE. Comment out the server you are not updating.

Example entries in hosts file:

10.10.50.101 EP.contoso.com

#10.10.50.102 EP.contoso.com

#10.10.50.103 EP.contoso.com

 

4. Deploy using AX Setup

Use AX setup on each server and uncheck configure for SharePoint and create site – this will deploy static files and dll’s, similar to update web application in the deployment form (this will not deploy page definitions).

To update the CA server with page definitions use:

AxUpdatePortal –updatewebcomponent –treenodepath “\Web\Web Files\Page Definitions” –websiteurl http://EP.contoso.com

Or

Publish-AXWebComponent -WebSiteUrl “http://EP.contoso.com” -AOTNodePathList “\Web\Web Files\Page Definitions”

 

How to verify if the update was successful:

  • Web modules:
    New module will be added to navigation menu (tab page).

 

  • Webpage definitions:
    In Enterprise Portal document library (EP > Site Actions > View All Site Content > Document Libraries > Enterprise Portal).

 

  • Web controls:
    In ep folder (C:\Program Files\Common Files\microsoft shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\ep) on each web server node.

 

  • Proxies:
    Proxy folder (C:\inetpub\wwwroot\wss\VirtualDirectories\80\App_Code\Proxies) on each web server node.

 

  • Images:
    In …\ep\images on each web server node.

 

  • Static files:
    In …\ep\scripts on each web server node.

 


–Article Edited By: Anup Shah

–Date: 05/Jan/2016