Sunday, July 12, 2015

Setting up SharePoint 2013 on Azure

I was planning to have a blog on configuration of SharePoint on Windows Azure from a long time but was not able to get time, but finally I managed to start the same.
At least there will be 4 minimum steps for setting up but can extend based on how large infrastructure you want to set-up.

  • Setting up and configuring Network Components
  • Setting up and configuring Domain Controller
  • Setting up and configuring SQL Server
  • Setting up and configuring SharePoint server 2013

So before we start with the above process let’s look into the architecture of what we plan to develop.

So on a high level we have above 1 Virtual Network, 1 Affinity Group, 3 cloud services, 2 VM Machines with their corresponding Availability set.

Setting up and configuring Network Components

Now starting with the first step of creating and configuring the Network Component. Things that we are planning to do here are as follows

Setting up the Affinity Group

When you use an affinity group, Windows Azure will keep all services that belong to your affinity group running within the same data center as close as possible to each other to reduce latency and increase performance.
How to do this.

  1. Log on to the Management Portal.
  2. In the navigation pane on the left, click Settings, and then click Affinity Groups at the top of the page.
  3. On the Settings/Affinity Groups page, click Add at the bottom of the page. If you are creating the first affinity group for this subscription, you can click Add an Affinity Group.



  4. On the Specify affinity group details page, enter the following information, and then click the check mark.

    • Name: Enter a name for this affinity group.
    • Description: Enter a description for this affinity group
    • Region: Select the region where this affinity group is to be located.


  5. Once created it will display as below on the Settings > Affinity screen


Setting up Windows Azure Storage Account

Virtual Machines that are provisioned in Windows Azure are stored in the world-wide cloud-based Windows Azure Storage service. In terms of high availability, the Storage service provides built-in storage replication capability. In addition, Windows Azure Storage provides a geo-replication feature for also replicating your VMs to a remote data center region.

Now how to create a storage account

  1. Log on to the Management Portal.
  2. Click Create New, click Storage, and then click Quick Create.
  3. In URL give a name in lowercase for the storage account name. I gave storageaccsp2013.
  4. In affinity group select the Affinity group you created earlier.
  5. In Replication, select the desired level of replication for your storage account. The recommended replication option is Geo-Redundant replication, which provides maximum durability for your data.
  6. Click Create Storage Account.

Note: When you create a VM storage account gets created automatically and hence it is not necessary to create it but it is good practice to have one created.

Register a DNS Server in Windows Azure

You may need to allow VMs and role instances you create to communicate with other VMs and role instances. Although this communication can be done by using IP addresses, it is much simpler to use hostnames that can be easily remembered. However, these hostnames must be resolved to IP addresses in some way to establish communication.

Now how to create a DNS Server

  1. Log on to the Management Portal.
  2. Click Create New, click Network Services, and then click Virtual Network and then Register DNS Server.
  3. Complete the DNS Server fields as follows:
    • NAME: DNSSP2013
    • DNS Server IP Address: 10.0.0.4

Setting up the VPN Network

A virtual network is a network overlay that you can configure in Azure. VMs and services that are part of the same virtual network can access each other. However, services outside the virtual network have no way to identify or connect to services hosted within virtual networks unless you decide to configure that specific type of connection, as in the case of VNet to VNet configurations. This provides an added layer of isolation to your services. Azure Virtual Network also lets you extend your network into Azure and treat deployments as a natural extension to your on-premises network.

Just like a real network, the virtual network needs a range of IP addresses (known as an address space) to assign to virtual machines that you place within it. The virtual network also supports subnets, which need their own address spaces, derived from the virtual network address space.
Extract from: https://msdn.microsoft.com/en-us/library/azure/jj156007.aspx

  1. Log on to the Management Portal.
  2. Click Networks and then click “Create a Virtual Network”
  3. In the Virtual Network Page 1 provide the Name and Region of the VPN.I provided
    • Name: VNSP2013
    • Location: Southeast Asia



  4. In the Page 3 of the Virtual Network select the DNS Servers and VPN Connectivity. We already created the DNS Server earlier choose those.


  5. Lastly in the Page 3 of the Virtual Network select the Virtual Network Address Space and create subnets for the farm.
    First thing why subnet: Subnets as a way to partition networks into logical segments for greater ease of administration. When subnets are properly implemented, both the performance and security of networks can be improved.
    As per our architecture we will be creating three Subnets
    • First for DC/AD VM (DCSubnetSP2013)
    • Second for SharePoint Web Server VM (WebSubnetSP201)
    • Third for Database Server VM (DataSubnetSP201)



  6. After completing these details click on the Ok arrow and after some time the VPN will be provisioned.

Planning the Cloud Service

A cloud service in Azure is a logical container within a virtual network for hosting virtual machines. Cloud services are typically used to group virtual machines by role, based on functionality that occurs at the cloud service level.

Some important points about cloud Service

  • Cloud services and the virtual machines within them can be started and stopped separately.
  • Cloud services can load balance endpoints. For example, a cloud service can load balance requests to two or more SharePoint web servers contained in it.
  • You can export and import a cloud-service configuration. The configuration controls monitoring, remote access, and other settings for the virtual machines contained in the cloud service.
  • You can use a cloud service to auto-scale roles (grow computing resources dynamically), but this is not supported by SharePoint. Do not create additional cloud services for this purpose.
Extract from: https://msdn.microsoft.com/en-us/library/azure/jj156007.aspx

So as we are planning for three Virtual Machines which will also serve different functionalities hence advised to have 3 cloud service.
  • AD/DNS
  • APP/Web Server
  • Database Server
Now to configure the Cloud Service

  1. Log on to the Management Portal.
  2. Click Create New, click Compute, and then click Cloud Service and then Quick Create.
  3. Provide the URL and Affinity group of the Cloud Service
    • URL: CSADDNSSP2013
    • Region/Affinity Group:AGSP2013 (We created this earlier)

  4. Similarly as above create Cloud Service for other Items. After the creation you will have 3 cloud services.

  5. This completes the first part of setting up the Network infrastructure for the VM’s.