<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>AzureCAT Guidance</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/azurecat/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/azurecat/feed.xml</link>
    <description>Hands-on solutions, with our heads in the Cloud!</description>
    <lastBuildDate>Fri, 07 Jun 2019 02:28:35 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>AzureCAT Blog - Moving to a new home</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/azurecat-blog-moving-to-a-new-home</link>
      <pubDate>Wed, 27 Feb 2019 12:51:45 GMT</pubDate>
      <dc:creator><![CDATA[Ed Price - MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5385</guid>
      <description><![CDATA[The AzureCAT blog is moving to a new home on Microsoft Tech Community!...]]></description>
      <content:encoded><![CDATA[The AzureCAT blog is moving to a new home on Microsoft Tech Community!
<ul>
 	<li><a href="http://aka.ms/CAT">http://aka.ms/CAT</a></li>
</ul>
This is our last blog post on this site. So please head over to our new blog!

<span style="float: none;background-color: transparent;color: #333333;cursor: text;font-family: Georgia,'Times New Roman','Bitstream Charter',Times,serif;font-size: 16px;font-style: normal;font-variant: normal;font-weight: 400;letter-spacing: normal;text-align: left;text-decoration: none;text-indent: 0px">The MSDN blogs are being removed. </span>We'll miss this blog, and like all new homes, it will take some time getting used to our new location, but we're pretty excited about plugging into a vibrant new community!

All the blog posts are migrated over there, so we're sorry if it breaks the old MSDN links (there are no plans for MSDN URLs to continue). So you might want to check the old URLs if you dropped links anywhere, and update them to the new blog (I can help a little with that).

Thank you for reading our blog, and we look forward to our new future over in the Microsoft Tech Community:
<ul>
 	<li><a href="http://aka.ms/CAT">http://aka.ms/CAT</a></li>
</ul>
&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>]]></content:encoded>
    </item>
    <item>
      <title>Running Micro Focus Enterprise Server 4.0 in a Docker Container in Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/running-micro-focus-enterprise-server-4-0-in-a-docker-container-in-azure</link>
      <pubDate>Wed, 27 Feb 2019 10:13:30 GMT</pubDate>
      <dc:creator><![CDATA[swread]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5025</guid>
      <description><![CDATA[A few months ago I posted a blog about how to setup Micro Focus Enterprise Server 4.0 and Enterprise...]]></description>
      <content:encoded><![CDATA[A few months ago I posted a blog about how to setup <a href="https://blogs.msdn.microsoft.com/azurecat/2018/08/30/set-up-micro-focus-enterprise-server-4-0-and-enterprise-developer-4-0-in-azure/">Micro Focus Enterprise Server 4.0 and Enterprise Developer 4.0 in Azure</a>.  There was a follow up to that blog outlining how to <a href="https://blogs.msdn.microsoft.com/azurecat/2018/11/14/set-up-micro-focus-cics-bankdemo-for-micro-focus-enterprise-developer-4-0-in-azure/">configure and deploy the BankDemo</a> application that comes with Enterprise Developer.  I'd like to continue in this Micro Focus vein by outlining how to run Micro Focus Enterprise Server in a Docker Container.

New to Micro Focus Enterprise Server 4.0 is the ability to run in a Docker container.  The <a href="https://www.microfocus.com/documentation/enterprise-developer/ed40/ES-WIN/GUID-F5BDACC7-6F0E-4EBB-9F62-E0046D8CCF1B.html">benefits of running Enterprise Server in Docker</a> are centered around portability, performance, agility and isolation.   For instance, a Docker image can be exported from one Windows VM to another or from another repository, and imported into another Windows server (assuming Docker support is installed there).  It can then be run in the same way without having to install Enterprise Server because it is a part of the image (licensing considerations do still apply).  For the purposes of this blog, I have decided to show how to set this up using the <strong>Windows 2016 Datacenter with Containers</strong> VM which is available from the Azure Marketplace. The nice thing about this offering is that <strong>Docker 18.09.0</strong> is already preinstalled and ready to go.  All we will need to do is deploy the container, run it and then connect to it with a 3270 emulator.  At the end of this post, you will effectively be running a Mainframe application in a container.

Let's get started.

<strong>First a note about the media and licensing</strong>

In order to complete this walk through, you will need to have access to the Micro Focus media.  This is available for Micro Focus customers and potential customers via a trial.  If you have access to Enterprise Server 4.0 or Enterprise Developer 4.0, you should have access to the accompanying Docker Support files.  If you do not have access, you can go <a href="https://www.microfocus.com/products/enterprise-suite/enterprise-server/">here</a> to get the process started.

There are two sets of demonstrations available: one set for <strong>Enterprise Server</strong> and another for <strong>Enterprise Developer</strong>.  Within these two sets, there are demonstrations for Windows based platforms and SUSE Linux. For this blog you are going to walk through the Windows CICS <em>acctdemo</em> demonstration for Enterprise Server. The accompanying files are in a zip file named: <strong>ent_server_dockerfiles_4.0_windows.zip. </strong> There is an accompanying licensing file with a name similiar to<strong> ES-Docker-Prod-XXXXXXXX.mflic</strong> that will be necessary in order to build the Docker images.  Once you have secured the media and the appropriate licensing file, you can begin.

&nbsp;
<ol>
 	<li><strong>Create the VM - </strong>The first thing we will need to do is create the VM in Azure via the Azure Portal.  As I mentioned before, we are going to use the Windows Server 2016 Datacenter - with Container VM which is available in the Azure Marketplace.  If you select Create Resource from the top left of the Portal and then filter by "Docker" and then select Windows Server 2016, you can select the VM.</li>
</ol>
<img width="896" height="334" class="aligncenter wp-image-5145 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture131.jpg" />

&nbsp;
<p style="padding-left: 60px">Next, you will need to configure the properties for the VM.  The Windows Server with Containers VM is only available in certain VM sizes.  I chose a <strong>Standard DS2_v2</strong> with 2 vcpus and 7GB of memory.  You will also need to select the <strong>Region</strong> and <strong>Resource Group</strong> you would like to deploy to.  We do not need any <strong>Availability options</strong> for this walk through.  You will need to input the Username you would like to use for the <strong>Administrator Account</strong> as well as the <strong>Password</strong>.  Finally make sure <strong>port 3389 RDP</strong> is open.  This is the only port you need to publicly expose.  You will need it to log into the VM.  After this you can accept all of the default values and click Review+ Create.</p>
&nbsp;

<img width="825" height="860" class="aligncenter wp-image-5155 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture14.jpg" />

&nbsp;
<p style="padding-left: 60px">The deployment could take a couple of minutes.  When it is complete you will be presented with a message stating your VM has been created with a link to<strong> Go to Resource</strong>.  Click this and you will be taken to the Overview blade for your VM.  In the right pane, you will see a <strong>Connect</strong> button.  Click this and you will see the <strong>Connect to virtual machine</strong> dialog pop up on the right.  Click on the <strong>Download RDP File</strong> button.  This will download the RDP file that will allow you to attach to the VM.  After the file has finished downloading, open it and type in the Username and Password you created for the VM.  Make sure you are not using your corporate credentials to log on since the RDP client will assume you may want to use these.  You do not.  Select <strong>More Choices</strong> and you will be able to select your VM credentials.  After this, you will be logged into the VM.</p>
<p style="padding-left: 30px"><strong>2. Create Sandbox Directory and Upload the zip File</strong> - Now that we have the machine running and attached via RDP, create a Sandbox Directory and upload the <strong>ent_server_dockerfiles_4.0_windows.zip </strong>and the <strong>ES-Docker-Prod-XXXXXXXX.mflic </strong>to that directory.  Extract the zip file contents to the <strong>ent_server_dockerfiles_4.0_windows</strong> directory (the extract will create this for you).  Inside this directory, you will have a README html and txt file (two versions of the same thing).  You will also have 2 directories <strong>EnterpriseServer</strong> and <strong>Examples</strong>.</p>
<p style="padding-left: 30px"><strong>VERY IMPORTANT</strong> - Make sure you copy the licensing file <b>ES-Docker-Prod-XXXXXXXX.mflic </b>to the <strong>C:\Sandbox\ent_server_dockerfiles_4.0_windows\EnterpriseServer</strong> directory and the <strong>C:\Sandbox\ent_server_dockerfiles_4.0_windows\Examples\CICS</strong>.  As I mentioned before, these are necessary for the Docker build step to make sure the images are properly licensed.</p>
<p style="padding-left: 30px"><strong>3. Check Docker Version and Create Base Image - Very Important: </strong>Creating the appropriate Docker image you need to use is a 2 step process.  First you will need to create the Enterprise Server 4.0 Base image.  After this is complete you will create another image for the x64 platform.  You also have the option to create a x86 (32 bit) image, but since you are running this in Azure, you will need the 64 bit image.  In order to do this, open a Command Prompt.</p>

<ul>
 	<li>Check that Docker is installed.  At the command prompt, type <strong>docker version</strong>.  You should see a return similar to the image below.  At the time of  this post, the version is 18.09.0.  This lets us know that Docker is installed.</li>
</ul>
<img width="842" height="514" class="aligncenter wp-image-5165 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture3.jpg" />
<ul>
 	<li>Next, we will need to switch to the <strong>C:\Sandbox\ent_server_dockerfiles_4.0_windows\EnterpriseServer</strong><strong>.  </strong>
<ul>
 	<li>Type <strong>cd\Sandbox\ent_server_dockerfiles_4.0_windows\EnterpriseServer</strong></li>
 	<li>Next type <strong>bld.bat IacceptEULA</strong> at the prompt.  This will kick off the build process for the initial base image.  This will take a few minutes to run.  When it is done, you will see a return like the following.  Notice the two images that have been created (one for x64 and x86).</li>
</ul>
</li>
</ul>
<img width="838" height="505" class="aligncenter wp-image-5175 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture4.jpg" />

&nbsp;
<ul>
 	<li>Now we need to switch to the CICS example director and create the final image for the CICS demonstration.
<ul>
 	<li>Type <strong>cd\Sandbox\ent_server_dockerfiles_4.0_windows\Examples\CICS</strong> to switch to the CICS directory.</li>
 	<li>Now you need to create the image.  Type <strong>bld.bat x64.  </strong>Again, this will run for a few minutes.  When it is done, you should see a message stating that the image was created.</li>
 	<li>To confirm this, type <strong>docker images</strong>.  You will see a list of all of the Docker images installed on the VM. Make sure <strong>microfocus/es-acctdemo</strong> is one of them.</li>
</ul>
</li>
</ul>
<img width="1024" height="512" class="aligncenter wp-image-5185 size-large" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture15-1024x512.jpg" />
<ul>
 	<li>Now lets run the image.  This will launch Enterprise Server 4.0 and the acctdemo application.
<ul>
 	<li>At the command prompt type <strong>docker run -p 16002:86/tcp -p 16002:86/udp -p 9040-9050:9040-9050 -p 9000-9010:9000-9010 -ti --network="nat" --rm microfocus/es-acctdemo:win_4.0_x64.  </strong>Now the image is running and we can can attach to it via a 3270 emulator via port 9040.  For this walk though I used <a href="http://x3270.bgp.nu/">x3270</a>, but you can use whichever one you prefer.  Go ahead and install the emulator.</li>
 	<li>Next we will need to get the ip address of the acctdemo container.  Docker acts as a DHCP Server for the Containers is manages.
<ul>
 	<li>First, we need to get the ID of the running Container.  Type <strong>Docker ps</strong> at the command prompt and note the ID.  You will need this to get the IP address for the acctdemo Container.  In this example it is <strong>22a0fe3159d0</strong>.</li>
 	<li>To get the ip address type <strong>docker inspect 22a0fe3159d0 --format="{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}"</strong>.  You should be presented with the ip address for the acctdemo image like in the image below.</li>
</ul>
</li>
</ul>
</li>
</ul>
<img width="979" height="512" class="aligncenter wp-image-5195 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture16.jpg" />
<ul>
 	<li>Now let's mount the image using the emulator.  Configure the emulator to use the address of the acctdemo image and port 9040.  For this walk though it would be 172.19.202.52:9040.  Yours's will be similiar. You should be presented by a CICS logon screen like the one below.</li>
</ul>
<img width="559" height="581" class="aligncenter wp-image-5205 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture17.jpg" />
<ul>
 	<li>Now you need to logon to the CICS Region.  You can do this by entering <strong>SYSAD</strong> for the <strong>USERID</strong> and <strong>SYSAD</strong> for the <strong>Password</strong>.</li>
 	<li>Next you need to clear the screen.  You can find this on the keymap of the emulator you are using.  For x3270 select the <strong>Keymap</strong> menu option.</li>
 	<li>To launch the acctdemo application type <strong>ACCT</strong>.  You should see the initial screen for the application.</li>
</ul>
<img width="559" height="584" class="aligncenter wp-image-5215 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture18.jpg" />

&nbsp;
<ul>
 	<li>If you type <strong>D</strong> for the Request and <strong>11111</strong> for the<strong> ACCOUNT</strong>, you be taken to some fictional account information.  Other account numbers to try are 22222, 33333....</li>
</ul>
<img width="559" height="591" class="aligncenter wp-image-5235 size-full" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture19.jpg" />

&nbsp;
<ul>
 	<li>Finally, to administer the Enterprise Server, type <strong>start http:172.19.202.52:86</strong> from a command prompt.  This will bring up the Enterprise Server Administration console.</li>
</ul>
<img width="1024" height="380" class="aligncenter wp-image-5275 size-large" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/Capture20-1024x380.jpg" />

&nbsp;

<strong>Summary</strong>

Now you are running and managing a CICS application in a Docker Container.  Hopefully this was interesting.  In the future we will explore leveraging Kubernetes in Azure (AKS) for orchestrating and managing the containers.]]></content:encoded>
    </item>
    <item>
      <title>2018 Guidance from AzureCAT: SAP on the Microsoft Platform</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/2018-guidance-from-azurecat-sap-on-the-microsoft-platform</link>
      <pubDate>Wed, 20 Feb 2019 09:25:15 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5015</guid>
      <description><![CDATA[This past year was a busy one for the AzureCATs. Here's a list of all the SAP guidance that was...]]></description>
      <content:encoded><![CDATA[This past year was a busy one for the AzureCATs. Here's a list of all the SAP guidance that was published or refreshed in 2018. Refreshed items are noted with "<em>(refresh)</em>". <strong>Bold</strong> articles are showcased in more detail at the bottom of this page.

&nbsp;
<ul>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/01/03/improve-sap-bw-performance-by-applying-the-flat-cube/">Improve SAP BW Perf with the Flat Cube</a> - Blog by Martin Merdes, published January 03, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/01/04/sap-on-azure-general-update-january-2018/">SAP on Azure: Update - January 2018</a> - Blog by Cameron Gardiner, published January 04, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/01/04/sap-on-sql-server-general-update-january-2018/">SAP on SQL Server: Update - January 2018</a> - Blog by Cameron Gardiner, published January 04, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/02/10/setting-up-hana-system-replication-on-azure-hana-large-instances/">Hana System Replication on Azure Hana</a> - Blog by Rakesh Patil and Cameron Gardiner, published February 10, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-availability-overview">SAP HANA high availability for Azure virtual machines</a> <em>(refresh)</em> - Docs article by Juergen Thomas, published March 05, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/high-availability-guide-suse-pacemaker">Setting up Pacemaker on SUSE Linux Enterprise Server in Azure</a> - Docs article by Sebastian Max Dusch and Juergen Thomas, published March 20, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/high-availability-guide-suse-nfs">HA for NFS on Azure VMs on SUSE Linux Enterprise Server</a> - Docs article by Sebastian Max Dusch, published March 20, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/04/10/very-large-database-migration-to-azure-recommendations-guidance-to-partners/">DB Migration to Azure – Partner Guide</a> - Blog by Cameron Gardiner, published April 10, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/04/26/columnstore-became-default-in-sap-bw/">Columnstore became default in SAP BW</a> - Blog by Martin Merdes, published April 26, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/04/26/flat-cube-became-default-in-sap-bw/">Flat Cube became default in SAP BW</a> - Blog by Martin Merdes, published April 26, 2018</li>
 	<li><strong><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/sap-s4hana">SAP S/4HANA for Linux Virtual Machines on Azure</a></strong> - Reference Architecture by Ben Trinh, Ross Sponholtz, and Amish Patel, published May 10, 2018</li>
 	<li><strong><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/hana-large-instances">Run SAP HANA on Azure Large Instances</a></strong> - Reference Architecture by Ben Trinh, Ross Sponholtz, and Amish Patel, published May 15, 2018</li>
 	<li><strong><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/sap-netweaver">SAP NetWeaver (Windows) for AnyDB on Azure VMs</a></strong> - Reference Architecture by Ben Trinh, Ross Sponholtz, and Amish Patel, published May 21, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/dbms-guide">Azure Virtual Machines DBMS deployment for SAP NetWeaver</a> <em>(refresh)</em> - Docs article by Sachin Ghorpade and Juergen Thomas, published May 22, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/06/18/sap-on-azure-general-update-june-2018/">SAP on Azure: General Update – June 2018</a> - Blog by Cameron Gardiner, published June 18, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/06/18/installation-procedure-for-sybase-16-3-patch-level-3-always-on-dr-on-suse-12-3-recent-customer-proof-of-concept/">Install Sybase 16. 3 Patch 3 Always-on + DR</a> - Blog by Cameron Gardiner, published June 18, 2018</li>
 	<li><strong><a href="https://azure.microsoft.com/en-us/resources/sql-server-data-files-in-microsoft-azure/en-us/">SQL files and backups on Azure for SAP</a></strong> - Whitepaper by Ravi Alwani, published June 22, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/06/24/oracle_asm_azure/">Install Oracle 12.2 ASM on Linux on Azure</a> - Blog by Cameron Gardiner and Ravi Alwani, published June 24, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/06/25/sap-on-sql-server-on-azure-how-to-bypass-proxy-server-during-backup-to-url/">SAP on SQL on Azure – Bypass Proxy Server</a> - Blog by Cameron Gardiner, published June 25, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/os-backup-type-ii-skus">OS backup and restore for Type II SKUs</a> <em>(refresh)</em> - Docs article by Sachin Ghorpade, published June 27, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/os-upgrade-hana-large-instance">Operating System Upgrade for HANA Large Instances</a> - Docs article by Sachin Ghorpade, published June 27, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/06/28/sap-support-for-sql-server-2017/">SAP Support for SQL Server 2017</a> - Blog by Sebastian Dusch, published June 28, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-backup-guide">Backup guide for SAP HANA on Azure Virtual Machines</a> <em>(refresh) </em>- Docs article by Hermann Daeubler and Juergen Thomas, published July 05, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-backup-file-level">SAP HANA Azure Backup on file level</a> <em>(refresh)</em> - Docs article by Hermann Daeubler and Juergen Thomas, published July 05, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-backup-storage-snapshots">SAP HANA backup based on storage snapshots</a> <em>(refresh)</em> - Docs article by Hermann Daeubler and Juergen Thomas, published July 06, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/business-one-azure">SAP Business One on Azure Virtual Machines</a> - Docs article by Juergen Thomas, published July 17, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-availability-one-region">SAP HANA availability within one Azure region</a> <em>(refresh)</em> - Docs article by Juergen Thomas, published July 27, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/08/23/oricas-s-4hana-foundational-architecture-design-on-azure/">Orica’s S/4HANA Foundational Arch Design</a> - Blog by Cameron Gardiner, published August 23, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-overview-architecture">What is SAP HANA on Azure (Large Instances)?</a> <em>(refresh)</em> - Docs article by Sachin Ghorpade and Juergen Thomas, published September 03, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/high-availability-guide-suse-pacemaker">Setting up Pacemaker on SUSE Linux Enterprise Server in Azure</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch and Juergen Thomas, published September 06, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-overview-infrastructure-connectivity">SAP HANA (large instances) deployment</a> <em>(refresh)</em> - Docs article by Sachin Ghorpade and Juergen Thomas, published September 09, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-installation">How to install and configure SAP HANA on Azure</a> <em>(refresh)</em> - Docs article by Hermann Daeubler and Sachin Ghorpade, published September 09, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-example-installation">Install HANA on SAP HANA on Azure (Large Instances)</a> - Docs article by Hermann Daeubler and Sachin Ghorpade, published September 09, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/troubleshooting-monitoring">How to monitor SAP HANA (large instances) on Azure</a> <em>(refresh)</em> - Docs article by Sachin Ghorpade, published September 10, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-overview-high-availability-disaster-recovery">SAP HANA Large Instances HA and DR on Azure</a> <em>(refresh)</em> - Docs article by Sachin Ghorpade and Juergen Thomas, published September 11, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-availability-across-regions">SAP HANA availability across Azure regions</a> <em>(refresh)</em> - Docs article by Juergen Thomas, published September 11, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/high-availability-guide-suse-pacemaker">HA for SAP NetWeaver on VMs on SUSE Linux Enterprise Server</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch, published September 11, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/high-availability-guide-suse-nfs">HA for NFS on Azure VMs on SUSE Linux Enterprise Server</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch, published September 11, 2018</li>
 	<li><a href="https://github.com/Azure/azure-quickstart-templates/tree/master/sap-file-server-md">SAP NetWeaver file server using a Marketplace image</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch, published September 11, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-get-started">Manual installation of single-instance SAP HANA on Azure VMs</a> <em>(refresh) </em>- GitHub ARM by Hermann Daeubler, Juergen Thomas, and Sebastian Max Dusch, published September 21, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-hana-high-availability">High availability of SAP HANA on Azure virtual machines</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch and Juergen Thomas, published September 21, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/deployment-guide">Azure Virtual Machines deployment for SAP NetWeaver</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch and Juergen Thomas, published September 26, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/planning-guide">Azure VM planning and implementation for SAP NetWeaver</a> <em>(refresh)</em> - Docs article by Sebastian Max Dusch and Juergen Thomas, published October 14, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/11/02/moving-sap-on-sql-server-and-windows-into-azure-what-sql-server-and-windows-release-should-i-use/">Moving SAP on SQL Server and Windows into Azure</a> - Blog by Juergen Thomas, published November 02, 2018</li>
 	<li><a href="https://blogs.msdn.microsoft.com/saponsqlserver/2018/11/04/saps-ratings-on-azure-vms-where-to-look-and-where-you-can-get-confused/">SAPS ratings on Azure VMs – where to look</a> - Blog by Juergen Thomas, published November 04, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/get-started">Using Azure for hosting and running SAP workload scenarios</a> <em>(refresh)</em> - Docs article by Juergen Thomas, published November 05, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/sap-certifications">SAP certifications and configurations running on Microsoft Azure</a> <em>(refresh)</em> - Docs article by Juergen Thomas, published November 05, 2018</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/workloads/sap/hana-vm-operations">SAP HANA infrastructure configurations and operations on Azure</a> <em>(refresh)</em> - Docs article by Juergen Thomas and Hermann Daeuble, published November 07, 2018</li>
</ul>
<h1></h1>
<h1>Showcase</h1>
<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/sap-s4hana"><img width="600" class="alignnone size-large wp-image-5225" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/sap-s4hana-1024x669.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/sap-s4hana">SAP S/4HANA for Linux Virtual Machines on Azure</a></strong>

This reference Architecture by <em>Ben Trinh</em>, <em>Ross Sponholtz</em>, and <em>Amish Patel</em> shows a set of proven practices for running S/4HANA in a high availability environment that supports disaster recovery on Azure. This architecture is deployed with specific virtual machine (VM) sizes that can be changed to accommodate your organization's needs.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/hana-large-instances"><img width="600" class="alignnone size-large wp-image-5245" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/sap-hana-large-instances-1024x816.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/hana-large-instances">Run SAP HANA on Azure Large Instances</a></strong>

This reference architecture by <em>Ben Trinh</em>, <em>Ross Sponholtz</em>, and <em>Amish Patel</em> shows a set of proven practices for running SAP HANA on Azure (Large Instances) with high availability and disaster recovery (DR). Called HANA Large Instances, this offering is deployed on physical servers in Azure regions.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/sap-netweaver"><img width="600" class="alignnone size-large wp-image-5255" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/sap-netweaver-1024x762.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/sap/sap-netweaver">SAP NetWeaver (Windows) for AnyDB on Azure VMs</a></strong>

This reference architecture by <em>Ben Trinh</em>, <em>Ross Sponholtz</em>, and <em>Amish Patel</em> shows a set of proven practices for running SAP NetWeaver in a Windows environment on Azure with high availability. The database is AnyDB, the SAP term for any supported DBMS besides SAP HANA. This architecture is deployed with specific virtual machine (VM) sizes that can be changed to accommodate your organization's needs.

&nbsp;

<a href="https://azure.microsoft.com/en-us/resources/sql-server-data-files-in-microsoft-azure/"><img width="465" height="600" class="alignnone size-full wp-image-5265" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/SQL_Server_Data_Files_in_Microsoft_Azure.png" /></a>

<strong><a href="https://azure.microsoft.com/en-us/resources/sql-server-data-files-in-microsoft-azure/en-us/">SQL files and backups on Azure for SAP</a></strong>

As more users migrate their SAP workloads to Azure, they will discover the benefits of migrating the Microsoft SQL Server data tier as well. Storing SQL Server data files on Azure can help speed migration, improve security, and provide high availability and disaster recovery. This guide by Ravi Alwani of AzureCAT addresses common questions from SAP users. It explains how to store SQL Server data files using Azure Blob Storage and set up file-snapshot backups, which provide nearly instantaneous backups and quicker restores for database files stored using the Azure Blob Storage service.

&nbsp;

&nbsp;

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>NEW REFERENCE ARCHITECTURE: Batch scoring of Spark models on Azure Databricks</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/new-reference-architecture-batch-scoring-of-spark-models-on-azure-databricks</link>
      <pubDate>Mon, 18 Feb 2019 09:20:33 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5365</guid>
      <description><![CDATA[Our eighth AI reference architecture (on the Azure Architecture Center) is written by AzureCAT John...]]></description>
      <content:encoded><![CDATA[Our eighth <span>AI <a href="http://aka.ms/RefArchs">reference architecture</a> (on the </span><a href="http://aka.ms/Architecture">Azure Architecture Center</a><span>) is written by AzureCAT</span> <em><strong>John Ehrlinger</strong></em>, and published by <em><strong>Mike Wasson</strong></em>.
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/batch-scoring-databricks">Batch scoring of Spark models on Azure Databricks</a></li>
</ul>
Reference architectures provide a consistent approach and best practices for a given solution. Each architecture includes recommended practices, along with considerations for scalability, availability, manageability, security, and more. The full array of reference architectures is available on the <a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/">Azure Architecture Center</a>.

<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/batch-scoring-databricks"><img width="700" class="alignnone size-large wp-image-5375" alt="Batch scoring of Spark models on Azure Databricks" src="https://msdnshared.blob.core.windows.net/media/2019/02/batch-scoring-spark-1024x686.png" /></a>

&nbsp;

This reference architecture shows how to build a scalable solution for batch scoring an Apache Spark classification model on a schedule using Azure Databricks, an Apache Spark-based analytics platform optimized for Azure. The solution can be used as a template that can be generalized to other scenarios.

The architecture defines a data flow that is entirely contained within <a href="https://docs.microsoft.com/en-us/azure/azure-databricks/">Azure Databricks</a> based on a set of sequentially executed <a href="https://docs.databricks.com/user-guide/notebooks/index.html">notebooks</a>. It consists of the following components:
<ul>
 	<li><strong><a href="https://github.com/Azure/BatchSparkScoringPredictiveMaintenance">Data files</a></strong>. The reference implementation uses a simulated data set contained in five static data files.</li>
 	<li><strong><a href="https://docs.databricks.com/user-guide/notebooks/index.html">Ingestion</a></strong>. The data ingestion notebook downloads the input data files into a collection of Databricks data sets. In a real-world scenario, data from IoT devices would stream onto Databricks-accessible storage such as Azure SQL Server or Azure Blob storage. Databricks supports multiple <a href="https://docs.databricks.com/spark/latest/data-sources/index.html">data sources</a>.</li>
 	<li><strong>Training pipeline</strong>. This notebook executes the feature engineering notebook to create an analysis data set from the ingested data. It then executes a model building notebook that trains the machine learning model using the <a href="https://docs.databricks.com/spark/latest/mllib/index.html">Apache Spark MLlib</a> scalable machine learning library.</li>
 	<li><strong>Scoring pipeline</strong>. This notebook executes the feature engineering notebook to create scoring data set from the ingested data and executes the scoring notebook. The scoring notebook uses the trained <a href="https://docs.databricks.com/spark/latest/mllib/index.html#apache-spark-mllib">Spark MLlib</a> model to generate predictions for the observations in the scoring data set. The predictions are stored in the results store, a new data set on the Databricks data store.</li>
 	<li><strong>Scheduler</strong>. A scheduled Databricks <a href="https://docs.databricks.com/user-guide/jobs.html">job</a> handles batch scoring with the Spark model. The job executes the scoring pipeline notebook, passing variable arguments through notebook parameters to specify the details for constructing the scoring data set and where to store the results data set.</li>
</ul>
&nbsp;

<em>Topics covered include:</em>
<ul>
 	<li>Architecture</li>
 	<li>Recommendations</li>
 	<li>Performance considerations</li>
 	<li>Storage considerations</li>
 	<li>Cost considerations</li>
 	<li>Deploy the solution</li>
 	<li>Related architectures</li>
</ul>
<h1></h1>
<h1>See also</h1>
Additional related AI reference architectures:
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/training-deep-learning">Distributed training of deep learning models on Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/batch-scoring-deep-learning">Batch scoring on Azure for deep learning models</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/batch-scoring-python">Batch scoring of Python models on Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/realtime-scoring-python">Real-time scoring of Python Scikit-Learn and deep learning models on Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/realtime-scoring-r">Real-time scoring of R machine learning models</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot">Enterprise-grade conversational bot</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/real-time-recommendation">Build a real-time recommendation API on Azure</a></li>
</ul>
&nbsp;

Find all our reference architectures <a href="http://aka.ms/RefArchs">here</a>.

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>]]></content:encoded>
    </item>
    <item>
      <title>NEW: Mainframe Migration on the Azure Cloud Adoption Framework</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/new-mainframe-migration-on-the-azure-cloud-adoption-framework</link>
      <pubDate>Fri, 15 Feb 2019 10:01:17 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5295</guid>
      <description><![CDATA[The Cloud Adoption Framework (previously Fusion and Enterprise Cloud Adoption) launched on Monday,...]]></description>
      <content:encoded><![CDATA[The <a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/overview"><strong>Cloud Adoption Framework</strong></a> (previously <em>Fusion and Enterprise Cloud Adoption</em>) launched on Monday, February 11! The cloud presents a fundamental shift in the way enterprises procure and utilize technology resources. In the past, enterprises assumed ownership and responsibility of all levels of technology from infrastructure to software. Now, the cloud offers the potential to transform the way enterprises utilize technology by provisioning and consuming resources as needed. The Cloud Adoption Framework (CAF) provides the desired framework to guide decisions throughout adoption.

As part of this launch, we're showcasing four new articles from <a href="https://blogs.msdn.microsoft.com/azurecat/2019/02/13/catwalk-author-bio-larry-mead/"><strong>Larry Mead</strong></a>.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/overview"><img width="650" class="alignnone size-large wp-image-5305" alt="Mainframe migration overview" src="https://msdnshared.blob.core.windows.net/media/2019/02/CAF_mainframe_overview-1024x610.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/overview">Mainframe migration overview</a></strong>

Many companies benefit from moving some or all their mainframe workloads, applications, and databases to the cloud. Azure provides mainframe-like features at cloud scale without many of the drawbacks associated with mainframes. Migrating to the cloud enables companies to modernize their infrastructure. With cloud services you can make mainframe applications, and the value that they provide, available as a workload whenever your organization needs it. Most Fortune 500 companies are already running Azure for their critical workloads. Azure's significant bottom-line incentives motivate many migration projects.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/myths-and-facts"><img width="659" height="589" class="alignnone size-full wp-image-5345" alt="Mainframe myths and facts" src="https://msdnshared.blob.core.windows.net/media/2019/02/CAF_myths1.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/myths-and-facts">Mainframe myths and facts</a></strong>

Mainframes figure prominently in the history of computing and remain viable for highly specific workloads. Most agree that mainframes are a proven platform with long-established operating procedures that make them reliable, robust environments. Software runs based on usage, measured in million instructions per second (MIPS), and extensive usage reports are available for charge backs. The reliability, availability, and processing power of mainframes have taken on almost mythical proportions. To evaluate the mainframe workloads that are most suitable for Azure, you first want to distinguish the myths from the reality.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/migration-strategies"><img width="390" height="191" class="alignnone size-full wp-image-5325" alt="Make the switch from mainframes to Azure" src="https://msdnshared.blob.core.windows.net/media/2019/02/CAF_mainframe_switch.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/migration-strategies">Make the switch from mainframes to Azure</a></strong> (migration strategies)

As an alternative platform for running traditional mainframe applications, Azure offers hyperscale compute and storage in a high availability environment. You get the value and agility of a modern, cloud-based platform without the costs associated with a mainframe environment. This article provides technical guidance for making the switch from a mainframe platform to Azure.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/application-strategies"><img width="650" class="alignnone size-full wp-image-5335" alt="Mainframe application migration" src="https://msdnshared.blob.core.windows.net/media/2019/02/CAF_mainframe-vs-azure.png" /></a>

<strong><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/application-strategies">Mainframe application migration</a></strong> (application strategies)

When migrating applications from mainframe environments to Azure, most teams follow a pragmatic approach: reuse wherever and whenever possible, and then start a phased deployment where applications are rewritten or replaced. Application migration typically involves one or more of the following strategies: rehost, retire, rebuild, and replace. You should consider starting by planning those workloads that you want to initially migrate, and then determine those requirements for moving associated applications, legacy codebases, and databases.

&nbsp;

<a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/migration-strategies"></a>

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>]]></content:encoded>
    </item>
    <item>
      <title>CATwalk Author Bio: Larry Mead</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/catwalk-author-bio-larry-mead</link>
      <pubDate>Wed, 13 Feb 2019 09:13:50 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=4985</guid>
      <description><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech...]]></description>
      <content:encoded><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech Community: <a href="https://techcommunity.microsoft.com/t5/AzureCAT/CATwalk-Author-Bio-Larry-Mead/ba-p/333969">https://techcommunity.microsoft.com/t5/AzureCAT/CATwalk-Author-Bio-Larry-Mead/ba-p/333969</a>

========================

And just like that, we're on our third CATwalk Author Bio! CATwalk is our new series of blogs where you get to meet the CATs who make our content possible. Let me introduce you to <strong>Larry Mead</strong>.

<img width="200" height="200" class="alignnone size-full wp-image-4995" alt="Larry Mead" src="https://msdnshared.blob.core.windows.net/media/2019/02/LarryMead.jpg" />

Larry is an AzureCAT Program Manager with more than 30 years of experience in information technology with solution sales, enterprise application architecture, system design, and development of highly available, highly scalable mission critical systems for enterprise clients in a heterogeneous environment. His work experience includes solution selling for large enterprise clients, incubation of new business groups, international business, complex partner enablement and management, and solution architecture and design. Larry enjoys helping customers succeed with data and analytics solutions.

Larry has worked at Microsoft for almost 24 years. Prior to Microsoft, he worked as a Development Director at BancTec and a Development Manager at Continental Federal Savings Bank. Larry's technology experience areas include:
<ul>
 	<li>Azure (IaaS, PaaS)</li>
 	<li>AWS (IaaS)</li>
 	<li>Containers – Docker and Kubernetes</li>
 	<li>Relational databases (SQL Server, Oracle, Sybase, DB2, Informix)</li>
 	<li>Big Data (Hadoop and NoSQL)</li>
 	<li>Data warehouse and business intelligence</li>
 	<li>Predictive analytics and machine learning</li>
 	<li>Microsoft Windows (Server, Client, Microsoft Azure)</li>
 	<li>Mainframes (IBM, Unisys)</li>
 	<li>UNIX (Solaris, AIX, HP-UX, SCO)</li>
 	<li>Linux (Red Hat, SUSE)</li>
 	<li>Virtualization (Hyper-V, VMware)</li>
 	<li>Integration technologies</li>
 	<li>Development languages (Java, C#, C/C++, Visual Basic, COBOL, Assembler)</li>
</ul>
&nbsp;

Educational degrees vary widely among folks at Microsoft, and Larry is no exception, holding a BA in psychology from George Mason University.

&nbsp;

<a href="https://blogs.msdn.microsoft.com/azurecat/2019/01/04/new-whitepaper-microsoft-azure-government-cloud-for-mainframe-applications/"><img width="241" height="300" class="alignnone size-medium wp-image-4825" alt="Microsoft Azure Government cloud for mainframe applications" src="https://msdnshared.blob.core.windows.net/media/2018/11/Whitepaper_GovernmentMainframes1-241x300.png" /></a>

Larry has already published an article this year, <a href="https://blogs.msdn.microsoft.com/azurecat/2019/01/04/new-whitepaper-microsoft-azure-government-cloud-for-mainframe-applications/">Microsoft Azure Government cloud for mainframe applications</a>. This quick guide shows how United States government agencies and their partners can use Azure Government for mainframe applications. Azure Government delivers the advantages of a mainframe in a more cost-efficient and agile environment. <a href="https://azure.microsoft.com/mediahandler/files/resourcefiles/microsoft-azure-government-cloud-for-mainframe-applications/Azure%20Government%20for%20Mainframe%20Applications.pdf">Read the article</a>.

Just this week, we published four articles from Larry on the Azure Architecture Center's new Cloud Adoption Framework:
<ol>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/overview">Mainframe migration overview</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/myths-and-facts">Mainframe myths and facts</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/migration-strategies">Make the switch from mainframes to Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/cloud-adoption/infrastructure/mainframe-migration/application-strategies">Mainframe application migration</a></li>
</ol>
&nbsp;

<a href="https://docs.microsoft.com/azure/virtual-machines/linux/deploy-ibm-db2-purescale-azure"><img width="232" height="300" class="alignnone size-medium wp-image-2275" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/08/IBMDb2_Whitepaper-232x300.png" /></a>                    <a href="https://azure.microsoft.com/resources/demystifying-mainframe-to-azure-migration/"><img width="252" height="300" class="alignnone size-medium wp-image-3515" alt="" src="https://msdnshared.blob.core.windows.net/media/2018/11/Demystifying_mainframe-252x300.png" /></a>

In 2018, Larry contributed a number of articles on mainframe migration, including <a href="https://docs.microsoft.com/azure/virtual-machines/linux/deploy-ibm-db2-purescale-azure">Deploy IBM Db2 pureScale on Azure</a> and <a href="https://azure.microsoft.com/resources/demystifying-mainframe-to-azure-migration/">Demystifying mainframe to Azure migration</a>. Both articles are featured in the <a href="https://blogs.msdn.microsoft.com/azurecat/2018/11/16/mainframe-migration-to-azure-portal/">Mainframe Migration to Azure - Portal</a>. You can find all of Larry's content using his tag:
<ul>
 	<li><a href="https://blogs.msdn.microsoft.com/azurecat/tag/larry-mead/">Larry Mead content tag</a></li>
</ul>
&nbsp;

AzureCAT wants to thank Larry for his contributions to the Microsoft community thus far, and we look forward to much more!

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>]]></content:encoded>
    </item>
    <item>
      <title>Service Fabric Customer Architecture: ZEISS Group</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/service-fabric-customer-architecture-zeiss-group</link>
      <pubDate>Mon, 11 Feb 2019 09:41:01 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5075</guid>
      <description><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech...]]></description>
      <content:encoded><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech Community: <a href="https://techcommunity.microsoft.com/t5/AzureCAT/Service-Fabric-Customer-Architecture-Zeiss-Group/ba-p/333958">https://techcommunity.microsoft.com/t5/AzureCAT/Service-Fabric-Customer-Architecture-Zeiss-Group/ba-p/333958</a>

========================

Visit <a href="https://customers.microsoft.com/en-us/story/zeiss-group-focuses-on-azure-service-fabric-for-key-integration-platform">Microsoft Customer Stories</a> to see this article in a case study format.

<img width="225" height="225" class="alignnone size-full wp-image-5105" alt="ZEISS" src="https://msdnshared.blob.core.windows.net/media/2019/02/zeiss_logo.jpg" />
<div>
<div><section class="c-hero f-medium f-x-left f-y-center context-accessory theme-dark">
<div>
<div lang="en">
<p class="c-heading">The specialists who develop and manufacture the digital instruments at ZEISS Group have plenty on their minds. The sophisticated instruments they build need to work reliably and stay up to date. To serve business customers and end users better, the ZEISS Group built an Azure-based digital integration platform with Azure Service Fabric at its center.</p>

</div>
</div>
</section></div>
</div>

<hr />
<p style="padding-left: 120px"><span style="color: #3366ff"><em>Some of our devices such as the robotics instruments used in microsurgery are highly complex.
We didn't want to give the engineers developing these devices and other customer touch points
the added headache of integration. Service Fabric was a key piece in making our digital
integration platform as simple as possible.
—Kai Walter, Lead Solution Architect at Carl Zeiss AG</em></span></p>


<hr />

Headed by Carl Zeiss AG, a company with a venerable history that includes the invention of the compound microscope in 1857, the ZEISS Group performs extensive research and development in optics and photonics. As pioneers in scientific optics, ZEISS develops, produces, and distributes measuring technology, medical technology, eyeglass lenses, camera and cinema lenses, binoculars, and semiconductor manufacturing equipment.

To streamline the customer experience, a development team at the ZEISS Group embarked on a digital integration project. The goal was to build an interoperability platform that allows field devices to connect to back-end business systems from SAP, Salesforce, and others, where customer records, device data, service history, and other information was stored. Customers would then have access to the latest software updates and support information.

The solution needed to be simple. The ZEISS team did not want to add to the complexity faced by the users of their highly advanced devices. Yet the small development team wanted to work quickly, so they sought help from PlanB. Gmbh, a Microsoft Gold partner that specializes in cloud infrastructures and Azure implementations. PlanB. helped the team to create an Enterprise Service Bus in the cloud, capable of integrating the various devices and customer touch points via standard REST-based APIs. Reusable APIs could also be used by other developers and partners worldwide to connect devices to the customer service, shopping, and knowledge assets stored in the back-office systems.

For more information about the business drivers behind this platform and its user credential service, see the <a href="https://customers.microsoft.com/story/zeiss-manufacturing-azure">Zeiss business story</a>.
<h2>A layered Azure sandwich</h2>
The digital integration platform was designed to connect devices and other customer touch points (the consumers) in the simplest way possible given the various back-end systems (the producers). The solution combines several Azure PaaS (platform as a service) offerings. If the Azure Marketplace had a useful service, the team was willing to try it. This experimental approach provided a working prototype quickly while minimizing the typical costs and time associated with spinning up traditional servers and services.

In addition, the team was still learning about what Azure could do. Azure PaaS gave the team the perfect low-risk, low-cost laboratory to learn in.

Through this process of explore-expand-extract, the ZEISS team discovered Service Fabric, the environment for building large-scale, highly available, distributed cloud applications. Service Fabric works like an orchestration engine for deploying microservices across a cluster of machines and provides developers with the tools they need to design apps and services that run at cloud scale.

After a few weeks of continuous evolution, the developers came up with the initial design, which placed Azure services in the middle of a sandwich with APIs on top, and back-office systems on the bottom. At the top layer, consumers interact with the system through the APIs that are exposed through Azure API Management. This layer plays a key role in hiding the complexity of downstream transactions from consumers, and makes it easy for the ZEISS team to manage the API life cycle. As new consumers are added to the platform, the ZEISS development team works with them to create the APIs they need. With the capability to mock up responses based on the joint API agreement, this layer decouples the development teams, enabling consumer teams to begin working with the APIs immediately regardless of back-end development.

The middle layer transports, transforms, and holds state for the information passing through the digital integration platform. For stateless scenarios, API Management passes incoming messages to Azure Functions, which performs the transformations needed to enable consumers and producers to communicate—for example, transforming from queues to REST APIs and vice versa.

The development team chose Functions because of its simple programming model with declarative bindings and few lines of code. They could focus on writing the transformations they needed with less risk and grow with the innovations in the Azure Functions host environment. and allow other services to handle infrastructure complexity. However, Functions, when run in a consumption plan, does not support virtual network integration. So they created an Azure DevOps pipeline to package the function code together with the Functions runtime into containers and to handle deployment. The developers didn't have to change any of their code.

Service Fabric handles their stateful services and provides a runtime environment that supports their virtual network. To hold state for long-running, multiple step processes, the developers used an actor-pattern-based application framework built on top of Service Fabric Reliable Services. Each Reliable Actor service is a partitioned, stateful Reliable Service. Information is then communicated to the appropriate back-end system, which matches it to the desired result and reports back via the API to Service Fabric, which communicates the result to the consumer. This layer also includes Azure Service Bus queues to support asynchronous messaging between services that require it.

In addition, some information is persisted via Azure Cosmos DB, a multi-model database service on a globally distributed, managed platform. When Azure Cosmos DB is used in combination with the binding capabilities in Azure Functions, developers can store and retrieve data with much less code than is required for storing data in a traditional relational database.

For more complex processes, a business process layer based on SAP services orchestrates data and processes for enterprise resource planning (ERP) in the downstream systems.

The bottom layer includes the back-end producers such as the SAP and Salesforce enterprise systems.

<hr />
<p style="padding-left: 120px"><span style="color: #3366ff"><em>Azure allowed us to grow. We started with public services then moved
into private virtual networks, step by step.
—Kai Walter, Lead Solution Architect at Carl Zeiss AG</em></span></p>


<hr />

<h1><img width="753" height="476" class="alignnone size-full wp-image-5085" alt="ZEISS customer story" src="https://msdnshared.blob.core.windows.net/media/2019/02/ZEISS_customer_story.png" /></h1>
<h2>Evolution of the digital integration platform</h2>
At first, the developers used Service Fabric only for the use cases where they needed to store state and retain it for the duration of a transaction. Service Fabric makes state highly available without the need to persist state to an external store. As the team became more familiar with Service Fabric, they began relying on it in more use cases.

Stateless services were written as small pieces of code in Azure Functions—another key PaaS component. Azure Functions is a serverless compute service that enables developers to run code on demand without having to explicitly provision or manage infrastructure. The ZEISS developers wanted to spend their time perfecting the services of their integration platform, not thinking about the infrastructure. With this in mind, they are evaluating <a href="https://docs.microsoft.com/en-us/azure/service-fabric-mesh/service-fabric-mesh-overview">Service Fabric Mesh</a>, a fully managed service that frees developers from cluster management.

Azure Functions ran in a consumption plan that automatically allocated compute power when the code was running. It scaled out as necessary to handle the load, and then scaled down when the code was not running. However, the team wanted more control over scaling. After six months, they switched to self-hosting of the Azure Functions runtime—a move that also gave Azure Functions the ability to directly access the back-end services running in the ZEISS datacenter.

As a security precaution, transactions involving certain types of data do not leave the corporate network. When the team set up Service Fabric, they also created an ExpressRoute connection from the Azure virtual network to the ZEISS datacenter. This connection enabled Service Fabric to operate as if it was running in the datacenter. Further, it gave the developers access to datacenter resources and added control over where transactions occur, such as those handled by Service Bus and Azure Cosmos DB.

The developers wanted to give Azure Functions greater access to the back-end systems but keep the lambda notation and declarative development paradigm of Functions. They realized they could host Functions in containers within Service Fabric, which was already connected to the ZEISS datacenter. This move made Service Fabric central to all integration tasks, not just the stateful transactions.
<h2>Services in the digital integration platform</h2>
The success of the integration platform was driven in large part by three critical stateful services that run in Service Fabric:
<ul>
 	<li><strong>Software Update service.</strong> This stateful service processes customer requests to upgrade their software, a feature that ZEISS offers on demand for their digital instruments. This service triggers and waits for order and license processing on several back-end systems, issues a license file directly to the requesting customer, and collects and preserves the status for better traceability.</li>
 	<li><strong>ZEISS Global Mail API</strong><strong> service.</strong> The platform enables cloud-based consumers to send authentic “ZEISS” email over the corporate IT email back-end. These consumers include web shops and devices that would not otherwise have direct access to the company’s back-end email service. This stateful service waits for completion of the email sending process and can notify the original requestor upon success or failure. Designed as a simple-to-use entry-level service, it also entices more developers to sign up for and use the integration platform APIs in their work. From the ZEISS developer portal, users can immediately sample the service, send a test email message using the programming language of their choice, and see for themselves how easy the APIs in general are to use.</li>
 	<li><strong>Compliance Check service.</strong> This stateful service runs a compliance check for each transaction involving delivery of goods that may be subject to export restrictions. The service verifies whether the goods can be delivered to a particular address, country, or company.</li>
</ul>
<img width="579" height="526" class="alignnone size-full wp-image-5095" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/02/zeiss_2.png" />

<hr />
<p style="padding-left: 120px"><span style="color: #3366ff"><em>Our intention was to start fast and start small, and so we used Azure PaaS first. When we hit
certain limitations of PaaS, we discovered Service Fabric. It became the centerpiece of our
more sophisticated scenarios.
—Kai Walter, Lead Solution Architect at Carl Zeiss AG</em></span></p>


<hr />

<h2>Many Azure services make a sandwich</h2>
ZEISS is heavily invested in SAP enterprise systems, and the digital integration platform needed to integrate with several, including SAP HCM, SAP ECC, and SAP CRM. ZEISS passes about a half-million SAP messages a day through the platform. As a result, balancing load proved to be a critical feature, because the enterprise systems on the back end could not operate at cloud speed, and some of the consumers couldn’t handle the number of messages sent by SAP either.

The platform adjusts automatically to the load by using different messaging patterns to enable communication across the layers:
<ul>
 	<li><strong>Synchronous:</strong> A consumer can send a request through API Management, and the platform routes it to producer, performing basic transformations and applying authentication or token validation as needed.</li>
 	<li><strong>Asynchronous in:</strong> When producers cannot handle the rate of incoming traffic, a request is placed in a Service Bus queue. A function reads the queue and communicates at a pace the producer can accept, sending only one message at a time from the queue.</li>
 	<li><strong>Asynchronous out:</strong> A producer can send a message via API through a function back to a queue for asynchronous processing. The function then pushes it to the consumer.</li>
 	<li><strong>Decoupled:</strong> Some consumers cannot accommodate the number of documents sent by the SAP producers. In these cases, the documents are buffered in Azure Cosmos DB until the consumer pulls them using an API call.</li>
</ul>
To keep upstream and downstream traffic running smoothly, Service Fabric is at the center of all transactions. When an SAP transaction occurs, the data must be unloaded as fast as possible to avoid placing undue load on the servers. The upstream flow of data must be handled in the most performant way possible. So, the ZEISS developers used the sandwich of Azure components to serve as a buffer. Users and devices communicate through the API, where Azure API Management throttles and measures the API calls to the platform.

Other Azure components are used to throttle downstream. On the transport layer, Azure Cosmos DB is used to persist state or buffer documents passing through the platform from some SAP producers back to consumers.

In addition, the digital integration platform used a few other Azure services:
<ul>
 	<li><a href="https://docs.microsoft.com/azure/active-directory-b2c/active-directory-b2c-overview">Azure Active Directory B2C</a> is the identity management service used to authenticate ZEISS customers on apps, portals, and shops. It works in conjunction with token validation performed on API call-level safeguards to provide authorization to use certain back-end capabilities.</li>
 	<li><a href="https://docs.microsoft.com/windows-server/identity/active-directory-federation-services">Active Directory Federation Services</a> is the identity management service used to authenticate ZEISS employees who log on to the developer portal for the digital integration platform.</li>
 	<li><a href="https://docs.microsoft.com/azure/key-vault/key-vault-overview">Azure Key Vault</a> stores cryptographic keys and secrets associated with various platform services.</li>
 	<li><a href="https://docs.microsoft.com/azure/application-insights/app-insights-overview">Azure Application Insights</a> enables the team to monitor the platform, diagnose issues, and keep track of API usage and life cycle.</li>
 	<li><a href="https://azure.microsoft.com/overview/devops/">Azure DevOps</a> and the entire Azure service ecosystem support efficient development based on an infrastructure-as-code approach using scripts and templates.</li>
</ul>
<h2>Key advantage in Service Fabric</h2>
Service Fabric is the center of the ZEISS digital integration platform and offered the development team several key benefits:
<ul>
 	<li><strong>One compute platform.</strong> Service Fabric runs all transactions at the scale they require.</li>
 	<li><strong>Reliable Actors.</strong> An application framework based on the Reliable Actor service holds state in a consumer context, which was necessary for transactions that take place across several steps in the Compliance Check and License Update services.</li>
 	<li><strong>App management.</strong> The developers integrated Service Fabric with the continuous integration and continuous deployment (CI/CD) capabilities of Azure DevOps. Service Fabric provides support for the full application life cycle and CI/CD of cloud applications.</li>
 	<li><strong>A platform that grows with the team.</strong> The ZEISS development team turned to Service Fabric use case by use case. Within six months, using an evolutionary approach with little capital binding and low capital risk, the team was able to deliver a fully fledged integration platform.</li>
 	<li><strong>Deploy—and redeploy.</strong> The team learned by trial, measuring and improving each iteration and making the most of Azure PaaS and the ability to turn services on and off. With Service Fabric, the developers can delete deployed services as easily as they can provision, deploy, monitor, and patch them.</li>
 	<li><strong>Cost-effective performance. </strong>In moving Azure Functions to Service Fabric containers, the team got an added benefit. They pay once to process both stateless functions and stateful Service Fabric programming models.</li>
</ul>
<h2>Conclusion</h2>
Azure services, and Service Fabric in particular, are at the center of a digital transformation at ZEISS. The digital integration platform supports a visionary effort to make smart devices and prepare ZEISS for the future. With secure access to ZEISS enterprise systems, consumers in the digital integration platform can schedule their own service calls and give ZEISS designers predictive insight into customer needs.

With the digital integration platform in place, now the team at ZEISS is investing in developing standard patterns and building integrations in a factory approach.

<hr />
<p style="text-align: left;padding-left: 120px"><span style="color: #3366ff"><em>Service Fabric was the key because it allowed us to run all our stateful and stateless interactions
on one compute platform that we can scale on our terms. Everything is in Service Fabric.
—Kai Walter, Lead Solution Architect at Carl Zeiss AG</em></span></p>


<hr />

&nbsp;

Visit <a href="https://customers.microsoft.com/en-us/story/zeiss-group-focuses-on-azure-service-fabric-for-key-integration-platform">Microsoft Customer Stories</a> to see this article in a case study format.

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>]]></content:encoded>
    </item>
    <item>
      <title>NEW EXAMPLE SCENARIO: Accelerate digital image-based modeling on Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/new-example-scenario-accelerate-digital-image-based-modeling-on-azure</link>
      <pubDate>Fri, 08 Feb 2019 09:03:00 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=5055</guid>
      <description><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech...]]></description>
      <content:encoded><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech Community:  <a href="https://techcommunity.microsoft.com/t5/AzureCAT/NEW-EXAMPLE-SCENARIO-Accelerate-digital-image-based-modeling-on/ba-p/333956">https://techcommunity.microsoft.com/t5/AzureCAT/NEW-EXAMPLE-SCENARIO-Accelerate-digital-image-based-modeling-on/ba-p/333956</a>

========================

Written by <span><em><strong>Paulo Marques da Costa</strong></em>. Edited by <strong>Nanette Ray</strong>. </span>Published by <em><strong>Adam Boeglin</strong> </em>from Microsoft patterns &amp; practices.
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/example-scenario/infrastructure/image-modeling">Accelerate digital image-based modeling on Azure</a></li>
</ul>
This example scenario provides architecture and design guidance for any organization that wants to perform image-based modeling on Azure infrastructure-as-a-service (IaaS). The scenario is designed for running photogrammetry software on Azure Virtual Machines using high-performance storage that accelerates processing time. The environment can be scaled up and down as needed and supports terabytes of storage without sacrificing performance.

<a href="https://docs.microsoft.com/en-us/azure/architecture/example-scenario/infrastructure/image-modeling"><img width="680" height="456" class="alignnone size-full wp-image-5065" alt="Accelerate digital image-based modeling on Azure" src="https://msdnshared.blob.core.windows.net/media/2019/02/Accelerate_digital_imagebased_modeling.png" /></a>

The concepts in this article apply to any high-performance computing (HPC) workload based on a scheduler and worker nodes managed as infrastructure. For this workload, Avere vFXT was selected for its superior performance during benchmark tests. However, the scenario decouples the storage from the processing so that other storage solutions can be used.

Components included in this example scenario:
<ul>
 	<li><a href="http://www.agisoft.com/">Agisoft PhotoScan</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/avere-vfxt/avere-vfxt-overview">Avere vFXT</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/windows/desktop/ad/active-directory-domain-services">Microsoft Active Directory domain controllers</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-machines/">Other VMs</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-network/manage-network-security-group">Network security groups</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-peering-overview">Virtual network peering</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction">Azure Blob storage</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/key-vault/key-vault-overview">Azure Key Vault</a></li>
</ul>
&nbsp;

<em>Topics covered include:</em>
<ul>
 	<li>Relevant use cases</li>
 	<li>Architecture
<ul>
 	<li>Components</li>
 	<li>Alternatives</li>
</ul>
</li>
 	<li>Considerations
<ul>
 	<li>Security</li>
</ul>
</li>
 	<li>Pricing</li>
 	<li>Deployment</li>
 	<li>Related Resources</li>
</ul>
&nbsp;

For step-by-step instructions for deploying this architecture, including all the prerequisites for using either Avere FxT or BeeGFS, download the ebook: <a href="https://azure.microsoft.com/en-us/resources/deploy-agisoft-photoscan-on-azure-with-azere-vfxt-for-azure-or-beegfs/">Deploy Agisoft PhotoScan on Azure With Avere vFXT for Azure or BeeGFS</a>.

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>]]></content:encoded>
    </item>
    <item>
      <title>CATwalk Author Bio: Rakesh Patil</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/catwalk-author-bio-rakesh-patil</link>
      <pubDate>Thu, 07 Feb 2019 09:15:28 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=4835</guid>
      <description><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech...]]></description>
      <content:encoded><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech Community: <a href="https://techcommunity.microsoft.com/t5/AzureCAT/CATwalk-Author-Bio-Rakesh-Patil/ba-p/333951">https://techcommunity.microsoft.com/t5/AzureCAT/CATwalk-Author-Bio-Rakesh-Patil/ba-p/333951</a>

========================

Welcome back to our <a href="https://blogs.msdn.microsoft.com/azurecat/tag/catwalk/">CATwalk Author Bio series</a>! Just a refresher, we're the AzureCAT team. And since "CAT" stands for Customer Advisory Team, saying "AzureCAT team" is like saying "We're the Azure Customer Advisory Team team." … which is weird. So just call us AzureCAT.

Nomenclature aside, CATwalk is our new series of blogs where you get to meet the CATs who make our content possible. For our second CATwalk, you get to pal around with <strong>Rakesh Patil</strong>.

&nbsp;

<img width="190" height="190" class="alignnone size-full wp-image-4855" alt="" src="https://msdnshared.blob.core.windows.net/media/2019/01/Rakesh-Patil.jpg" /><span style="color: #ff0000"></span>

Rakesh is an AzureCAT Senior Program Manager from India. He has a range of experience and is well-versed in the Linux and UNIX operating systems, storage, micro services, and modern workloads. Rakesh is currently working with the leading Linux operating system vendors and providing solutions to enterprise customers.

Rakesh graduated from Sikkim Manipal University of Health, Medical, and Technology  (in India) with a BCA degree, Bachelor of Computer Applications.

Rakesh joined the tech industry in 2004. He worked as a systems associate for <span dir="ltr">Tech Mahindra and HCL before joining Orange as a senior systems administrator. Rakesh later moved to Red Hat and held the same position. He is a Red Hat Certified Engineer, and NetApp and Virtualization Administrator. In 2016, Microsoft was fortunate enough to have Rakesh join AzureCAT, where he continues to share his knowledge with our customers. </span>

&nbsp;

<a href="https://blogs.msdn.microsoft.com/azurecat/2018/06/11/azurecat-ebook-parallel-virtual-file-systems-on-microsoft-azure/"><img width="233" height="300" class="alignnone size-medium wp-image-1985" alt="Parallel Virtual File Systems on Microsoft Azure" src="https://msdnshared.blob.core.windows.net/media/2018/06/Parallel_virtual_file_systems_on_Microsoft_Azure-233x300.jpg" /></a>

Rakesh is an active AzureCAT contributor and has authored or co-authored a number papers and e-books. In April of 2019, Rakesh co-authored the <a href="https://blogs.msdn.microsoft.com/azurecat/2018/06/11/azurecat-ebook-parallel-virtual-file-systems-on-microsoft-azure/">Parallel Virtual File Systems on Microsoft Azure</a> e-book, which documents the results of a series of performance tests on Azure to see how scalable Lustre, GlusterFS, and BeeGFS are. You can <a href="https://azure.microsoft.com/mediahandler/files/resourcefiles/parallel-virtual-file-systems-on-microsoft-azure/Parallel_Virtual_File_Systems_on_Microsoft_Azure.pdf">download the e-book</a> or <a href="https://blogs.msdn.microsoft.com/azurecat/2018/08/14/parallel-virtual-file-systems-on-microsoft-azure-part-1-overview/">read it in installments</a>.

&nbsp;

<a href="https://blogs.msdn.microsoft.com/azurecat/2017/09/12/azure-gahp-server-for-htcondor/"><img width="300" height="273" class="alignnone size-medium wp-image-595" alt="" src="https://msdnshared.blob.core.windows.net/media/2017/09/HTCondor-300x273.png" /></a>

In September 2017, Rakesh co-authored <a href="https://blogs.msdn.microsoft.com/azurecat/2017/09/12/azure-gahp-server-for-htcondor/" rel="bookmark">Azure GAHP Server for HTCondor</a>, an article about the collaboration between AzureCAT and the University of Wisconsin resulting in the development of an Azure GAHP (Grid ASCII Helper Protocol) specification and an Azure GAHP server. Together they enable the HTCondor framework to use Azure for running high-throughput computing (HTC) workloads using Azure Virtual Machines and virtual machine scale sets.

&nbsp;

You can find a complete listing of Rakesh's work and guidance using his AzureCAT tag:
<ul>
 	<li><a href="https://blogs.msdn.microsoft.com/azurecat/tag/rakesh-patil/">Rakesh Patil content tag</a></li>
</ul>
&nbsp;

AzureCAT thanks Rakesh Patil for his contributions to the Microsoft community thus far, and we look forward to more great work!

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>

&nbsp;

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>NEW REFERENCE ARCHITECTURE: Enterprise-grade conversational bot</title>
      <link>https://docs.microsoft.com/archive/blogs/azurecat/new-reference-architecture-enterprise-grade-conversational-bot</link>
      <pubDate>Tue, 05 Feb 2019 09:04:43 GMT</pubDate>
      <dc:creator><![CDATA[AzureCAT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azurecat/?p=4965</guid>
      <description><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech...]]></description>
      <content:encoded><![CDATA[The AzureCAT blog has moved! Find this blog post over on our new blog at the Microsoft Tech Community: <a href="https://techcommunity.microsoft.com/t5/AzureCAT/NEW-REFERENCE-ARCHITECTURE-Enterprise-grade-conversational-bot/ba-p/333945">https://techcommunity.microsoft.com/t5/AzureCAT/NEW-REFERENCE-ARCHITECTURE-Enterprise-grade-conversational-bot/ba-p/333945</a>

========================

Our seventh <span>AI <a href="http://aka.ms/RefArchs">reference architecture</a> (on the </span><a href="http://aka.ms/Architecture">Azure Architecture Center</a><span>) is written by AzureCATs</span> <em><strong>Abhinav Mithal</strong> </em>and <em><strong>Robert Alexander</strong></em>, and published by <em><strong>Mike Wasson</strong></em>.
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot">Enterprise-grade conversational bot</a></li>
</ul>
Reference architectures provide a consistent approach and best practices for a given solution. Each architecture includes recommended practices, along with considerations for scalability, availability, manageability, security, and more. The full array of reference architectures is available on the <a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/">Azure Architecture Center</a>.

<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot"><img width="862" height="509" class="alignnone size-full wp-image-4975" alt="Enterprise-grade conversational bot" src="https://msdnshared.blob.core.windows.net/media/2019/02/Enterprise_grade_conversational_bot.png" /></a>

This reference architecture describes how to build an enterprise-grade conversational bot (chatbot) using the <a href="https://dev.botframework.com/">Azure Bot Framework</a>. Each bot is different, but there are some common patterns, workflows, and technologies to be aware of. For a bot to serve enterprise workloads, there are many design considerations to ponder beyond the core functionality. This article covers the most essential design aspects, and introduces the tools needed to build a robust, secure, and actively learning bot.

This reference architecture uses a significant number of Azure services. Your own bot may not use all of these services, or may incorporate additional services. <a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot">Check out the article for additional detail on the services</a>.

<strong>Bot logic and user experience</strong>
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-basics">Bot Framework Service</a> (BFS)</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/app-service/">Azure App Service</a></li>
</ul>
<strong>Bot cognition and intelligence<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot#bot-cognition-and-intelligence"></a></strong>
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/cognitive-services/luis/">Language Understanding</a> (LUIS)</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/search/">Azure Search</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/cognitive-services/QnAMaker/">QnA Maker</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/app-service/overview">Web app</a></li>
</ul>
<strong>Data ingestion</strong>
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/data-factory/">Azure Data Factory</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-overview">Logic Apps</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/azure-functions/">Azure Functions</a></li>
</ul>
<strong>Logging and monitoring</strong>
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/azure-monitor/app/app-insights-overview">Application Insights</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction">Azure Blob Storage</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/cosmos-db/">Cosmos DB</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/power-bi/">Power BI</a></li>
</ul>
<strong>Security and governance</strong>
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/active-directory/">Azure Active Directory</a> (Azure AD)</li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/key-vault/">Azure Key Vault</a></li>
</ul>
<strong>Quality assurance and enhancements</strong>
<ul>
 	<li><a href="https://azure.microsoft.com/solutions/devops/">Azure DevOps</a></li>
 	<li><a href="https://azure.microsoft.com/products/visual-studio-code/">VS Code</a></li>
</ul>
&nbsp;

<em>Topics covered include:</em>
<ul>
 	<li>Architecture
<ul>
 	<li>Bot logic and user experience</li>
 	<li>Bot cognition and intelligence<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot#bot-cognition-and-intelligence"></a></li>
 	<li>Data ingestion</li>
 	<li>Logging and monitoring</li>
 	<li>Security and governance</li>
 	<li>Quality assurance and enhancements</li>
</ul>
</li>
 	<li>Design considerations
<ul>
 	<li>User message flow</li>
 	<li>System data flow</li>
</ul>
</li>
 	<li>Building a bot
<ul>
 	<li>Ingest data</li>
 	<li>Core bot logic and UX</li>
 	<li>Add smarts to your bot</li>
</ul>
</li>
 	<li>Quality assurance and enhancements</li>
 	<li>Availability considerations</li>
 	<li>Security considerations</li>
 	<li>Manageability considerations
<ul>
 	<li>Monitoring and reporting</li>
 	<li>Automated resource deployment</li>
 	<li>Continuous bot deployment<a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot#continuous-bot-deployment" class="docon docon-link heading-anchor"></a></li>
</ul>
</li>
</ul>
<span>Head over to the Azure Architecture Center to learn more about the <a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/conversational-bot">Enterprise-grade conversational bot</a></span><span></span> reference architecture.
<h1></h1>
&nbsp;
<h1>See also</h1>
Additional related AI reference architectures:
<ul>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/batch-scoring-deep-learning">Batch scoring on Azure for deep learning models</a></li>
 	<li><a href="https://docs.microsoft.com/azure/architecture/reference-architectures/ai/batch-scoring-python">Batch scoring of Python models on Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/real-time-recommendation">Build a real-time recommendation API on Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/training-deep-learning">Distributed training of deep learning models on Azure</a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/realtime-scoring-python"><span>Real-time scoring of Python Scikit-Learn and deep learning models on Azure</span></a></li>
 	<li><a href="https://docs.microsoft.com/en-us/azure/architecture/reference-architectures/ai/realtime-scoring-r">Real-time scoring of R machine learning models</a></li>
</ul>
&nbsp;

Find all our reference architectures <a href="http://aka.ms/RefArchs">here</a>.

&nbsp;

<a href="http://aka.ms/CAT"><img width="134" height="134" class="alignleft" src="https://msdnshared.blob.core.windows.net/media/2017/01/AzureCAT_Icon.jpg" /></a>

<strong>AzureCAT Guidance</strong>

<span><em>"Hands-on solutions, with our heads in the Cloud!"</em></span>

&nbsp;]]></content:encoded>
    </item>
  </channel>
</rss>