Building Nutanix Ready…What does it mean to be “Ready”?

Before we go into what “Ready” really means.  Every great journey has a story behind it. This will be a multi-part series starting with how I joined Nutanix and evolved myself to build a world-class program called “Nutanix Ready”. Stay Tuned, Part 1 coming very soon!  RobNutanix Ready

Microsoft Exchange Best Practices on Nutanix

To continue on my last blog post on Exchange...

As I mentioned previously, I support SE’s from all over the world. And again today, I got asked what are the best practices for running Exchange on Nutanix. Funny enough, this question comes in quite often.  Well, I am going to help resolve that. There’s a lot of great info out there, especially from my friend Josh Odgers, which has been leading the charge on this for a long time.  Some of his posts can be controversial, but truth is always there.  He’s getting a point across.

This blog post will be updated on a regular basis as things change. It will also be moved to a permanent part of the netwatch.me resources section.  This is meant to be a general best practice guide to help with planning and maintaining a healthy Exchange environment on Nutanix.  I will specify hypervisor specifics when required.  Now on the post…..

msexchange.

Let’s start out with the basics…

MS Exchange on Nutanix Support

Nutanix provides a 100% supported solution for MS Exchange running on vSphere, Hyper-V or Acropolis Hypervisor using iSCSI (Block storage)
Here is a breakdown of supported configurations by hypervisor:

vSphere (ESXi) Use In-Guest iSCSI (Volume Groups) for full support
Hyper-V Use SMB 3.0
AHV Use native vDisks (iSCSI) – SVVP Certification for AHV

Also, check out Josh’s post “Fight the FUD – Support for MS Exchange on Nutanix” that outlines this very topic.  In summary, the customer has the choice to deploy in multiple configurations to suit their needs. But, one of the most often questions I get is, “does your SVVP Certification cover running Exchange on all your supported hypervisors?”  The answer is not simple.  The SVVP was submitted for the Acropolis Hypervisor, while this does not cover all of them, we technically are supported for all hypervisors as per Microsoft supported storage architectures.  Microsoft does not specifically mention Hyperconverged, it only mentions ISCSI in regards to SAN.  IMO, that covers ESXi and AHV.

Now let me explain….SAN’s are one of the biggest modern datacenter bottlenecks. Data has gravity, so co-locating storage and compute eliminates network bottlenecks = Hyperconverged is way better than SAN and hence SUPPORTED IMO 😉

To end this topic and move on, a Nutanix customer has the choice to deploy in multiple configurations to suit their needs.  Being pushed to one particular hypervisor for a customer is not always in their best interest.  Having choices now and later is a much better approach with the overall goal of simplifying the datacenter.   As Josh said in one of his blog posts ,”Running a standard platform and storage protocol for all workloads is a simple model which reduces the unnecessary complexity of multiple protocols and/or in-guest storage configurations”, I can’t agree more with that statement. 🙂

Exchange Performance on Nutanix

Now this subject will always be controversial and potentially subject to criticism.  Internal testing performed by the Nutanix Performace and Engineering team shows that AHV and Hyper-V performance are roughly the same from a hypervisor perspective and ESXi was 10% higher. That being said, usually, the next question is how is performance versus traditional SAN/NAS.  And again, I have to point out, it’s all about Data Locality. Can’t change the laws of physics. Data has gravity, hence we will always beat traditional SAN architecture.

Check out Josh’s posts on “Peak Performance vs Real World – Exchange on Nutanix Acropolis Hypervisor”.  It gives you a better understanding of are realistic benchmarks of Exchange in general and on Nutanix. I wholeheartedly agree with Josh when he says “Benchmarks are of little value without context specific to customer requirements!”  Spending close to over 15 years building and maintain Exchange systems, I learned one hard fact, no generic simulator (like JetStress) can show real world metrics.

Data Reduction Technologies with Exchange on Nutanix

Recommendation:
1 vDisk per Database, 1 vDisk per DB Logs
1 Container with RF2, In-Line Compression & EC-X for Databases
1 Container with RF2 for Logs
Do not use Dedupe with MS Exchange!
Reference: https://technet.microsoft.com/en-us/library/ee832792(v=exchg.150).aspx
Microsoft does not support Data deduplication (Note: Underlying storage deduplication such as Nutanix dedupe is not mentioned, but implied)

Data Reduction Estimates:

Rule of thumb: Always size without data reduction if possible.
Conservative assumption for compression for Exchange = 1.3:1
Aggressive assumption for compression for Exchange = 1.6:1
Conservative assumption for EC-X for Exchange = 1.1:1
Aggressive assumption for EC-X for Exchange = 1.25:1

Questions to ask yourself when planning an Exchange Environment:

How many Users? e.g.: 10000, 10000, etc.
How many user profiles do you need? e.g.: 2 , Standard and Executives
How large Mailbox (excluding archiving) per User? e.g.: 1GB, 2GB , 5GB
How many messages per day do you want to support per user? Light = 50 , Medium = 100 , Heavy = 150+

Do you require site resiliency?

These are among some of the basic questions you need to answer.  This is where the Exchange Server Role Calculator comes in. It’s a great tool, but like any tool, you do need to give it good input to get out good output. The function of the tool is as the name implies.

Exchange Server Role Calculator Defined

Now, at the time of this writing, version 7.8 is the latest and greatest. Now, do note, I would not call this tool perfect, but its gets you pretty close. Like anything else, the Exchange team is still learning real world behavior and this is where a good experienced Exchange engineer comes into play.

IMO..there is an Art and Science to sizing Exchange.  The days of Exchange just being a simple mail server are far over. These days, it’s much more complex with supporting multiple forms of ingress and egress traffic for different functions (Mobile, Web, SMTP, Skype Integration, etc.). Each of these different functions has varying load considerations and supports more visible features like Outlook Web Access and Exchange Activesync. Also, I still am of the opinion that it does not take into consideration the number of devices that 1 mailbox services.
exchangecomplex
Considering this complexity, you can see that undersizing or oversizing can happen easily.  If you size correctly at the beginning with Nutanix, then it just an easy scale out, buy as you need it situation. Then you know what happens, finally for the first time, predictability in your budgets.  I remember the days, not that long ago, when I had to have a client retire a SAN, not for space constraints, but for IO constraints.  And at the time, all I got from the client was “can’t we use it for something else” and ya, I’ve replied with “use it as a WSUS repository for patching the Exchange environment” 😉

During my next post, I will dive into the Exchange Role Calculator much more and go over some examples of sizing on Exchange. We’ll mainly focus on mailbox storage and then move on to other role sizing considerations.  I also plan to cover the other aspects to maintain a healthy Exchange environment (i.e. Message Hygiene, Global and Local Load balancing, Integrations and End User Experience) in subsequent posts.
Below are the Office Best Practices Guides from Nutanix and some public case studies.

Until next time, Rob…..

Nutanix Offical Best Practice Guides
MS Exchange on Nutanix / vSphere Best practice guide: http://go.nutanix.com/VirtualizingMicrosoftExchangeonWeb-ScaleConvergedInfrastructure.html

Public Case Studies for Nutanix customers using Exchange
Richter: http://go.nutanix.com/rs/nutanix/images/Nutanix-Case-Study-Richter.pdf
Riverside: http://www.nutanix.com/resource/riverside-for-riversides-server-and-storage-consolidation-nutanix-fits-like-a-glove/

My Lifetime Journey to IT Excellence – Microsoft MVP Award

Microsoft MVP
Being recognized for contributions to the IT communities is a humbling event and so goes my story to IT excellence and the Microsoft MVP Award.

Early Years

Technology has been integral part of my life since I can remember…..
My mother tells a story that I don’t recall and it goes something like this:  I was 5 years old (1979) and we were in a checkout line at a Sears.  While waiting, the computer system crashed and they could not check anybody out.  Everyone was upset as they were going to close the store and send people home until it was fixed the next day.  I said to my mother, “I can fix that” and my mother said, “What? You don’t know anything about computers” and I replied, “yes I do.”  I walked right up to the manager and said, “I can fix it”.  The manager looked at me and continued to talk to the other store personnel.  I then proceeded to the computer register, crawled under the desk and checked and pushed in all the cables. Next, I powered off and on the computer.  At that point, people started to notice and that the screen was coming alive. After a bit, it came back up and became functional.  My mother tells me the manager was shocked and end up giving us our items for free. My first practical application for OSI and I didn’t even know it.  This memory summarizes my passion for technology that has not waviered to this day.

During the next few years (6-10 Years old), I spend my time taking things apart like stereos and radios and rebuilding them to make them better or just work.  I would sell the items door to door in the neighborhood to help support my single mom.
From hobbying with PDP-8’s, Commodore’s, PC’s Jr’s and Apple IIc’s, it was a big world. But the real fun started when I got my first Tandy 2000 and it had MS-DOS.  I spent many days and nights programing BASIC and loving it.  And then in early 1990’s when Windows 3.0 hit, I fell in love and have been a fan ever since.  In fact, in one of my first IT jobs, I setup a DEC Alpha running NT 3.5.1 for a search engine company in Cambridge, MA.

Mid Years

Over the subsequent years, during elementary and high school, I spent my time volunteering at different organizations utilizing my technology skills to teach others.  Some include Boston Computer Society, Museum of Science – Computer Discovery Space, political campaigns, and various programming clubs.

My other passion during those days was music.  I started playing Trombone in 7th Grade and continued on to learn and pay other instruments including Tuba, Baritone, Piano, Trumpet and Guitar. I was the first freshman at Revere High School to play a solo in the spring concert.  I soloed on the Tuba and my piece was “In the Hall of the Mountain King” the final piece of the Peer Gynt, Suite No. 1.  The reason I bring up music is that I believe it helped to frame both my creativity and logic when it came to technology.

During my junior year of high school, I decided to join the US Army because financially  I didn’t have many options. The Army seemed the logical choice at the time to help pay for college.  After taking the Army intake testing, I was told I scored high and was placed with a support company as a Intelligence Analyst.  At the time, the Army had a program called split training, which meant, I went to boot camp during the summer between my junior and senior years of high school.

Well, the Army was a great experience. But all and all, I would say that boot camp was the most challenging.  You didn’t know what to expect at the time and no movie prepares you for the intensity of boot camp. I spent 4 years in the Army traveling the world as an Intelligence Analyst setting up various secure network connections to the US from foreign soil.

Towards the end of my 4 year commitment,  I decided to come home and go to college to earn my bachelors degree. I had earned an associates degree in Computer Science in the US Army Junior College.  Once I got home, I got a job at a computer store called Computer City selling computers.  I wanted to be close to it and this is all I could find at the time.  I also had a second job dishwashing and had started Northeastern University night program. Within two and a half years I had enough credits to receive my BS in Computer Science.

Early career

The real start to my career was when I was working at Computer City.  An partner from a large accounting firm(one of the Big 5 at the time) came in one day to purchase a computer.  I spent over an hour helping him with his purchase.  He was so impressed, that he offered me a job on the spot working in his company’s IT department.

I joined as a Help Disk admin and was quickly promoted to Network Admin within months. I spent a year at that firm then decided to move on.  For the next few years, I worked at various corporate companies and advanced quickly through the IT ranks.
After spending 5-6 years in the corporate arena, I decided I wanted to join the consulting world.  Initially, I joined a small IT consulting firm to learn the ropes of consulting.  I spent about a year with that consulting partner and then finally decided to break out on my own. I launched my own consulting company called Netwatch Techs. I spent close to 9 years building out a great SMB practice and started doing some enterprise level work.  And then spent four years more working as the lead with various Microsoft Gold Partners consulting for enterprise clients.

Current Life

That bring me to the current chapter in my life….Nutanix.
For a number of years, it was a dream to work for a Silicon Valley Company. I decided to open up my options.  A recruiter contacted me via Linkedin from Nutanix.  They were looking for a Microsoft Solutions Architect. That night I researched Nutanix, and to my surprise, it was an up and coming technology that builds the future of datacenter.  I was very interested and emailed the recruiter back immediately.  I spoke to the recruiter and  the hiring manager over the next few days and it sounded great, but there was one caveat, they wanted someone local to Silicon Valley.  After speaking with my wife and kids, I decided to withdraw my application.  We didn’t want to move from the Boston area and away from family……..

Fast forward six months….I get an email from the Nutanix recruiter asking me if I was still interested and that the location requirement had been changed. Within a few days, I was en route to Nutanix HQ for in-person interviews.  After intense interviews, I was so impressed. I felt the oozing of intelligence, teamwork and something real.

After a few days, I was offered the position of Microsoft Solutions Architect with the Technical Alliances team.  If you have read my blog since the beginning, my career with Nutanix starts there and so continues my journey.

As a part of the Business Development team, my job is to be all things Microsoft technically or not across all our teams.  I help build the story around Nutanix and Microsoft Solutions. I also lead the Nutanix Ready program, an interoperability program for our partners.

For anyone reading this and aren’t familiar with an Microsoft MVP Award you can click this link. 

Before I end this post I want to thank the people who really helped inspire me during the my lifetime.

First, I thank my mother, for the years of supporting my passion from the beginning. There was a lot she never understood about what I do, but was very, very proud of me, because she felt I was fulfilling my dreams.  Thank you Mom…You are always in my heart. 🙂

The next notable influence on my life is my wife Lea. There are so many things to list about her, but I will summarize a few things about Lea and some of what I have learned.  Honesty, Respect, Encouragement, Support, Kindness, Loyalty and Attentiveness.  For her, it’s second nature. I knew the second I met her that there was something about Lea I needed. Turns out, 16 years later, it wasn’t something about her at all. It was just Lea. 🙂

I have to thank each and every one at Nutanix.  The teamwork and helpfulness of everyone I work with has been the one of the best experiences of my life.  This includes my manager Andre Leibovici, who has been a great manager and mentor.  He is the one that encouraged me to start blogging.  He has taught me and continues to teach me what it is to be on an Alliance team and to be the best at it.
And finally, I can’t end this without thanking you, yes you, who are reading my posts. You, who shared my previous posts, who dropped me a comment saying thanks for the efforts, or asked a question!  You are the reason for inspiring me to learn more, share more, and blog more!

No one can feel the excitement and joy of blogging and sharing knowledge if s/he hasn’t tried it.  So my recommendation is to start a blog and write about something you are passionate about. Do not be shy, just start sharing your ideas with the community and I’m sure your journey will be pave itself and be fruitful for all!

Until next time, Rob….

Nutanix NOS 4.6 Released….

On February 16, 2016, Nutanix announced the Acropolis NOS 4.6 release and last week was available for download. Along with many enhancements, I wanted to highlight several items, including some tech preview features.
Also, checkout this excellent video with Nutanix’s Tim Isaacs and Raghu Nandan in which they go into more detail on the updates included in Acropolis 4.6 and the interviewer is my buddy Chris Brown.
Tim Isaacs and Raghu Nandan from Nutanix HQ about some of the important updates in Acropolis 4.6.

1-Click Upgrades – BIOS and BMC Firmware
The 1-Click upgrade for BIOS and BMC firmware feature is available for Acropolis hypervisor (AHV) and ESXi hypervisor host environments running on NX-xxxx G4 (Haswell) platforms only.
Acropolis App Mobility Fabric: Windows or Linux Guest Customization
Customize or clone Windows or Linux guest VMs hosted by AHV. Includes automated OS installation and custom ISOs by using sysprep (Windows) or cloudinit (Linux).
Acropolis Drivers for OpenStack
These drivers facilitate consuming the Nutanix Acropolis infrastructure as a cloud service or for use in a data center. For example, an OpenStack implementation might require using features such as single sign-on, orchestration, role-based access control, and so on. Drivers include Acropolis compute, image, volume, and network drivers.
Convert Cluster Redundancy Factor from RF-2 to RF-3
Convert a cluster created with redundancy factor 2 (RF-2) to RF-3 through the ncli cluster set-redundancy-state command. This increases the cluster fault tolerance.
Cross Hypervisor Disaster Recovery
Cross-hypervisor disaster recovery provides an ability to migrate the VMs from one hypervisor to another (ESXi to AHV or AHV to ESXi) by using the protection domain semantics of protecting VMs, taking snapshots, replicating the snapshots, and then recovering the VMs from the snapshots. To perform these operations, you need to install and configure NGT on all VMs.
Guest VM VLAN Trunking
AHV supports guest VM VLAN tagging, where the tag passes through a single port from the physical network to a VM. It allows the VLAN ID tags to be included in an Ethernet packet to be passed to the guest VM. Guest VM operating systems can use this feature to enable Virtual Guest Tagging (VGT) and simulate multiple virtual NICs.
More Backup and Data Recovery/Replication Features

  • Snapshot and Async DR for volume groups.
  • Application-consistent snapshots on AHV and ESXi by using the Nutanix native in-guest Volume Shadow Copy Service (VSS) agent for all VMs that support Microsoft’s VSS. Nutanix Guest Tools provides application-consistent snapshot support for Linux VMs by running specific pre-freeze and post-thaw scripts on VM quiesce.
  • Integrated snapshot management from an AHV cluster to a CommVault solution

Nutanix Guest Tools

  • Nutanix Guest Agent (NGA) service. Communicates with the Nutanix Controller VM.
  • File Level Restore (FLR) CLI. Performs self-service file-level recovery from the VM snapshots.
  • Nutanix VM Mobility Drivers. Facilitates distribution of drivers required for VM migration between ESXi and AHV, in-place hypervisor conversion, and cross-hypervisor disaster recovery (CH-DR) features.
  • VSS requestor and hardware provider for Windows VMs. Enables application-consistent snapshots of AHV or ESXi Windows VMs.
  • Application-consistent snapshot for Linux VMs. Supports application-consistent snapshots for Linux VMs by running specific scripts on VM quiesce.

Self-Service Restore
Self-service restore allows a user to restore a file within a virtual machine from the Nutanix protected snapshot with minimal Nutanix administrator intervention. This feature is supported on Nutanix clusters running the ESXi and Acropolis hypervisors only.

Tech Preview Features
In-Place Hypervisor Conversion
This 1-click feature available through the Prism web console allows you to convert your cluster from using ESXi hosts to using AHV hosts. Guest VMs are converted to the hypervisor target format, and cluster network configurations are stored and then restored as part of the conversion process.
Native File Services
Provides file server capability within a Nutanix AHV cluster, as one or more network-attached VMs, to form a virtual file server.
To download the update, you can go to my.nutanix.com and go to support, downloads section or you can upgrade to 4.6 within Prism.  Until next time, Rob

Exchange Server Role Requirements Calculator Explained – Part 1

Email1
The Exchange Server Role Requirement Calculator is your one stop calculation tool for Exchange 2013\2016 design. The tool covers design calculations for both the Mailbox and Client Access server role. Exchange 2013 reduced the number of roles from previous versions of Exchange by making the design and implementation as simple as possible and Exchange 2016 furthers that into a single role.  The Server Role Requirement Calculator helps us to size virtually and it provides in-depth sizing of every component of the hardware like CPU, Memory, Network, Storage, Backup, servers, datacenter etc.

Exchange Server Role Calculator is an excel spread sheet with an option to input your requirements.  The current version v7.8 of the calculator introduces support for Exchange 2016! Yes, that’s right, you don’t need a separate calculator, v7.8 and later supports Exchange 2013 or Exchange 2016 deployments.
When you open the calculator you will find a new drop-down option in the Input tab that allows you to select the deployment version. Simply choose 2013 or 2016:
calcdrop
When you choose 2016, you will notice the Server Multi-Role Configuration option is disabled due to the fact that Exchange 2016 no longer provides the Client Access Server role.

As discussed in the Exchange 2016 Architecture and Preferred Architecture articles, the volume format best practice recommendation for Exchange data volumes has changed in Exchange 2016 as they now recommend ReFS (with the integrity feature disabled). By default, for Exchange 2016 deployments, the calculator scripts will default to ReFS (Exchange 2013 deployments will default to NTFS).
Before we can properly size, we need to understand the below criteria and input to build our design:

Once we have determined all of the above, we should be ready to input those details into the input worksheet of Exchange Server Role Requirement Calculator. The Input worksheet is divided into 7 Parts:

1. Environmental configuration: This is where you input details of the AD architecture, Server roles, Vitalization, number of DAGs, number of nodes in the DAG, number of nodes in primary and DR datacenter. It also includes the number of DB copies in both primary and secondary datacenter with some transport message configurations like message queue expiration and safety net expiration.SRC1
Environmental Configuration

2. Mailbox Configuration: This is where you may need to input user profile details based on your existing profile and the projected mailbox growth percentage. There is an option to input different types of Tier profiles. The Existing user profile can be determined by using the Exchange profile analyzer scripts, mentioned above. Profile analyzer helps us to determine the messages sent & received per mailbox /day and average message size.

This part also has an important on IOPS and CPU Megacycles multiplication factor, which plays an important role for the users while designing mobile users & application users- as there is no clear information about the CPU and IOP’s requirement.
SRC2Mailbox Configuration

3. Backup Configuration: There is where we need to input the details of the required backup type, backup frequency and the log truncation tolerance days, in case of backup failure.
SRC3Backup Configuration

4. Storage configuration: Storage configuration is one of the most important factors during the design. This is where we input the type of disk you have for the Exchange database. Microsoft recommends an inexpensive SATA Just Bunch of Disk (JBOD) in the event there are three or more database copies. Exchange 2013\2016 also provides an option of multiple Database / volume, allowing for more than one database/volume on high disk capacity of 2-4 TB.
SRC4
Storage configuration

5. Processor Configuration: While this is considered “optional” to input factor, I would highly recommend you have the CPU cores determined with SPECint2006 Rate using the processor query tool and input under processor configuration for both primary and secondary datacenter mailbox servers.
SRC5Processor Configuration

6. Log Replication Configuration: This configuration is optional and it is only used if the database is replicated between physical locations. You just have to input the logs generated/ hour percentage, network bandwidth type, and available latency between the primary and secondary datacenter.
SRC6
Log Replication Configuration

7. Environment Customization: The Environmental Customization is actually optional. You’ll need to input the server names from both primary and secondary datacenter and DAG names, which will be used in the production environment. These names will be used for pictorial representation of the DAG, servers, and database. It is also used for DB creation scripts, which we will be discussing in the next part.

In this part we have covered all available input options in the Exchange Server Role Requirements Calculator. The Exchange calculator will use the imputed data and calculate the role requirement, storage design, network configuration, backup configuration, DAG configuration etc. for the organization and updates the results in the result worksheets.

Check out Part 2 – Exchange Server Role Requirements Calculator Explained

Until next time, Rob…

Understanding Windows Azure Pack – Reconfigure portal names, ports and deploy certificates – Part 6

happynewyear1 Windows Azure Pack
Happy New Year Everyone!!!  I know Azure Stack is just around the corner, but I still get lots of questions around configuring WAP and portals. So to follow-up my Windows Azure Pack (WAP) series, I am going to talk about reconfiguring server names and ports as well as assigning trusted certificates to my WAP Portals.

If you missed other parts of the series, check links below:
Part 1 – Understanding Windows Azure Pack
Part 2 – Understanding Windows Azure Pack – Deployment Scenarios
Part 3 – Understanding Windows Azure Pack – How to guide with Express Edition on Nutanix – Environment Prep
Part 4 – Deploying Service Provider Framework on Nutanix
Part 5 – Understanding Windows Azure Pack – How to guide with Express Edition on Nutanix – Windows Azure Pack Install

In this blog post, we will look at how you can change portal names and ports for the Tenant and Admin portals in WAP.

Once we are done with that, we are going to issue certificates from an Enterprise CA to the Admin portal as well as issuing a certificate to the Tenant Portal. As I don’t have a Public CA Certificate,  I’m going to use one from my Enterprise CA, but the concept for a Public CA is exactly the same as if I was using certificates from a trusted CA like VeriSign, DigiCert or similar.
wap-reconfig1 Windows Azure Pack
Windows Azure Pack Tenant Portal


Architecture:

Windows Azure Pack has different components which serve various functions as I mentioned in previous blog posts.
By looking at the roles being installed on a WAP Server for an express install, we can see a long list of Web Services running on the WAP Server. These different Web Services provide various roles within the WAP Infrastructure
In this lab scenario, we will be working with the following Web Services:

  • WAP Tenant Portal Service (MgmtSvc-TenantSite): Hosts the WAP Tenant Portal
  • WAP Tenant Authentication Service (MgmtSvc-AuthSite): Hosts the authentication for tenants
  • WAP Admin Portal Service (MgmtSvc-WindowsAdminSite): Hosts the Admin Portal
  • WAP Admin Authentication Service (MgmtSvc-WindowsAuthSite): Hosts the Admin Authentication

wap-config2 Windows Azure Pack

When a tenant accesses the WAP Tenant portal (exposed to the Internet) they will be redirected to the WAP Tenant Authentication Service to validate if the user is allowed to access the system, once the WAP Tenant Authentication service has validated the user, it will be redirected back to the WAP Tenant portal with access to WAP services. The tenant authentication service uses claim based authentication and can use different authentication methods like Active Directory Federation Services (ADFS) or .Net. In this scenario we are using default authentication (.Net), in the future blog post, I will tie in ADFS.

In the my lab setup these services are running on the same server (WAP01.contoso.com) as shown above..

A similar scenario happens when a WAP Administrator accesses the WAP Admin portal (only accessible on the internal network), the WAP admin portal will redirect the admin to the WAP Admin Authentication service which by default uses Windows Authentication. Once Windows Authentication service has authenticated the user, the user is redirected back to the WAP Admin portal with access to WAP.


Scenario:

After Installing and configuring Windows Azure Pack with the basic settings for the Contoso.com lab setup, the next steps are to configure the following:

  • Change WAP portal name.
  • Configure tenant and admin portals to run on port 443 (Https).
  • Replace the self-signed certificates with certificates provided by the enterprise CA (and consequently remove the warnings displayed in Internet Explorer due to the self-signed certificates).
  • Change the WAP Tenant Portal to use an internet facing url.
  • Change the WAP Tenant Authentication site to use the public web address that is also used by the WAP Tenant Portal.

The servers for this lab are configured as follows:

Role Name Function
Active Directory DC01.contoso.com Active Directory, ADFS, Certificate Server
Windows Azure Pack WAP01.contoso.com Windows Azure Pack Express Install
Service Provider Foundation SPF01.contoso.com Service Provider Foundation
SQL Server DB02.contoso.com SQL Instance hosting the WAP databases
Virtual Machine Manager VMM01.contoso.com Virtual Machine Manager 2012 R2 managing one Nutanix Hyper-V Cluster

The portals DNS names will be renamed to the following:

  • WAP Admin Portal: wapadmin.contoso.com port 443
  • WAP Tenant Portal Internal: WAPCloud.contoso.com port: 443
  • WAP Tenant Auth: wapcloud.contoso.com port: 444

Disclaimer: This environment is meant for testing only. This should not be considered guidance for production use, as several decisions made in this blog post are not targeting a production environment.

Reconfigure portal names for Windows Azure Pack

As the two WAP Portals by default (in our lab setup) are installed with https://wap01.contoso.com:30081 for the Tenant Portal and https://WAP01.contoso.com: 30091 for the Admin Portal we want to change these to use more portal friendly names.

To accomplish this, we need to do the following:

  • Create a DNS record for the new portals.
  • Install and configure an enterprise CA.
  • Request certificates for WAP Web Services from the CA.
  • Change ports and assign certificates for WAP Services.
  • Update Windows Azure Pack with the new web service modifications.

Create a DNS record for the new portals

  1. Logon to the DNS server.
  2. Start DNS Manager
  3. Expand dc01 > Forward Lookup Zone > <Yourdomain> (e.g. contoso.com)
  4. Right click on <Yourdomain> and select New Host (A-Record)
  5. Provide the DNS name and the IP address of the WAP Admin Server (e.g. Name: wapadmin, IP: 192.168.1.40)
    wap-reconfig4 Windows Azure Pack
  6. Create the other DNS name for the remaining portal (e.g. wapcloud,) and provide the WAP01 IP address as all roles are installed on the same server in the lab setup.
  7. Verify that the DNS records shows in the list.
    5wap-reconfig4 Windows Azure Pack
  8. Close the DNS Manager.

Use trusted certificates for the Windows Azure Pack

In order to use CA signed certificates in our Lab environment we need to do the following:

  • Install a CA Server
  • Configure the CA Server
  • Request Web Server certificates from the CA Server
  • Change Web Sites to use certificate.

Install a CA Server

  1. Logon to the server that will be running the CA Server (e.g. DC01)
  2. Start Server Manager.
  3. Select Dashboard on the left.
  4. Click Add roles and features.
  5. Click next to: before you begin, Installation type and server selection.
  6. In Server Roles select Active Directory Certificate Services under Roles.
  7. Click next to features.
  8. Under Role Services Select the following: Certification Services, Certificate Enrolment Policy.., Certificate Enrolment Web, Certification Authority..
  9. Accept the add-ons and click next to Web Role Services.
  10. Click Install.
  11. Verify that the install finishes with success.

Configure CA Server

  1. On the CA Server start Server Manager as a user that is member of Enterprise Admins.
  2. Select AD CS on the left.
  3. A message will show in the main window:
    wap-reconfig6 Windows Azure Pack
  4. Click on More.
  5. In the server task details click on Configure Active Directory Cert.
  6. Select All Roles to configure except for Web Service and click Next.
  7. Select Enterprise CA.
  8. Select Root CA.
  9. Select Create a new private key and click next.
  10. Click next to cryptography.
  11. Click next to CA Name and keep default. wap-reconfig8 Windows Azure Pack
  12. Keep 5 years and click next
  13. Click next to Certificate Database
  14. Select Windows Integrated auth.. and click next
  15. Under Server Certificate Select Choose and assign a certificate for SSL later and click next
  16. Click Configure
  17. Click Close

Change WEB Sites to use Certificate

Issue Certificate for the WAP Admin Portal

  1. Logon to the WAP Server as an administrator (e.g. wap01.contoso.com)
  2. Open IIS Manager on the WAP Portal Server
  3. Select the IIS server under connections
  4. In the main window select server certificates under IIS
  5. In the right windows select create a domain certificate
  6. Specify the following:
  7. WAPAdmin FQDN under common name (e.g. wapadmin.contoso.com)
  8. Organization: Contoso
  9. Organ unit: NA
  10. City NA
  11. State NA
  12. Click Next
  13. Select a CA and provide the friendly name for the certificate (e.g. wapadmin.contoso.com) wap-reconfig9 Windows Azure Pack
  14. Click Finish
  15. Verify that the certificate shows in the list of certificate wap-reconfig10 Windows Azure PackWe now have a web certificate, which we can use for the WAP Admin Portal.
  16. Request two more certificate following the same procedure:
    1. WAP Authentication: wap01.contoso.com
    2. WAP Tenant Portal Internal: WAPCloud.contoso.com
  17. There should now be three certificates in the Web Server Certificate list from Contoso CA. wap-reconfig11 Windows Azure Pack

Change ports and certificates for the WAP Admin Portal

  1. Logon to the WAP server as Administrator (This assumes it’s an express install).
  2. Start ISS Manager.
  3. Expand IIS Server > Sites.
  4. Right click on MgmtSvc-AdminSite and select edit bindings.
  5. Select https 30091 and select edit.
  6. Change port to 443.
  7. Set hostname to wapadmin.contoso.com.
  8. Select the certificate from the drop down list which was created earlier from the CA. wap-reconfig12 Windows Azure Pack
  9. Click Ok.
  10. Restart the Web Site.
  11. Right click on MgmtSvc-WindowsAuthSite and select edit bindings.
  12. Select the certificate from the list wap01.contoso.com.
  13. Click Ok.

Change ports and certificates for the WAP Tenant Portals

The following steps needs to be done in order to change ports and certificates for the tenant portal.

  1. Logon to the WAP server as Administrator (This assumes it’s an express install).
  2. Start ISS Manager.
  3. Expand IIS Server > Sites.
  4. Right click on MgmtSvc-TenantSite and select edit bindings.
  5. Select https 30081 and select edit.
  6. Change port to 443.
  7. Set hostname to wapcloud.contoso.com.
  8. Select wapcloud.contoso.com in the drop down list for certificates
  9. Click Close
  10. Right click on MgmtSvc-AuthSite and select edit bindings
  11. Select https 30071 and select edit.
  12. Change port to 444.
  13. Select wapcloud.contoso.com in the drop down list for certificates.
  14. Restart the MgmtSvc-TenantSite Web Site from the action menu.
  15. Restart the MgmtSvc-AuthSite Web Site from the action menu.

Update Windows Azure Pack with the new settings

Updating the Windows Azure Admin Portal

The TechNet documentation can be found here: Reconfigure FQDNs and Ports in Windows Azure Pack
To update WAP with our modifications the following commands needs to be executed, where we will use the values used in the scenario.

  • Set-MgmtSvcFqdn: This command will update the FQDN names for the modified services in the WAP Database.
  • Set-MgmtSvcRelyingPartySettings: This command will set the relay location for the WAP authentication service (Tenant or Admin)
  • Set-MgmtSvcIdentityProviderSettings: This command will update the authentication service where redirects will be redirected once verified.
We will be using the following arguments while executing the commands:
WAP Database Server:  db02.contoso.com
WAP Database user:    sa
Admin Portal FQDN:    wapadmin.contoso.com
Admin Portal Port:    443
Admin Auth Service:   wap01.contoso.com:30072
To update the modification made to WAP Services in the WAP database do the following.

  1. Logon to the WAP Server as a WAP Administrator.
  2. Start a PowerShell window.
  3. Import the WAP PowerShell module:

    Import-Module -Name MgmtSvcConfig

  4. Update WAP Admin Portal with the updated FQDN settings by running the following command:

    Set-MgmtSvcFqdn -Namespace “AdminSite” -FullyQualifiedDomainName “wapadmin.contoso.com” -Port 443 -Server “db02”
    3wap-reconfig12 Windows Azure Pack

  5. To set the WAP authentication service FQDN for the admin portal run the following command.Set-MgmtSvcRelyingPartySettings –Target Admin –MetadataEndpoint ‘https://wap01.contoso.com:30072/FederationMetadata/2007-06/FederationMetadata.xml’ -ConnectionString “Data Source=db02.contoso.com;User ID=sa;Password=*******”
    wap-reconfig2 Windows Azure Pack
  6. To set the authentication service redirection location to the admin portal run the following command:Set-MgmtSvcIdentityProviderSettings –Target Windows –MetadataEndpoint ‘https://wapadmin.contoso.com/FederationMetadata/2007-06/FederationMetadata.xml’ -ConnectionString “Data Source=db02.contoso.com;User ID=sa;Password=********”
    wap-reconfig17 Windows Azure Pack

Updating the Windows Azure Tenant Portal

The following attributes are used for configuring the WAP Tenant Portal.
WAP Database Server: db02.contoso.com
WAP Database user: sa
Tenant Portal FQDN: wapcloud.contoso.com
Admin Portal Port: 443
Admin Auth Service: wapcloud.contoso.com:444
To update the tenant portal do the following:

  1. Logon to the WAP Server as an Administrator.
  2. Start PowerShell.
  3. Import the WAP PowerShell module:
    Import-Module -Name MgmtSvcConfig
  4. Update WAP Tenant Portal with the updated settings by running the following command:

Set-MgmtSvcFqdn -Namespace “TenantSite” -FullyQualifiedDomainName “wapcloud.contoso.com” -Port 443 -Server “db02”
wap-config1 Windows Azure Pack

5. Update WAP Tenant Auth Site with the updated settings by running the following command:

Set-MgmtSvcFqdn -Namespace “AuthSite” -FullyQualifiedDomainName “wapcloud.contoso.com” -Port 444 -Server “db02”
wap-config2 Windows Azure Pack

6. To set the WAP authentication service FQDN for the tenant portal run the following command.

Set-MgmtSvcRelyingPartySettings –Target Tenant –MetadataEndpoint ‘https://wapcloud.contoso.com:444/FederationMetadata/2007-06/FederationMetadata.xml’ -ConnectionString “Data Source=db02.contoso.com;User ID=sa;Password=********”
wap-config3 Windows Azure Pack

7. To set the authentication service redirection location to the admin portal run the following command.

Set-MgmtSvcIdentityProviderSettings –Target Membership –MetadataEndpoint ‘https://wapcloud.contoso.com/FederationMetadata/2007-06/FederationMetadata.xml’ -ConnectionString “Data Source=db02.contoso.com;User ID=sa;Password=********”wap-config4 Windows Azure Pack

Verify the WAP modification works.

Pre-requisite: As we don’t have a public certificate for my lab setup we are going to install the CA certificate on the computers in the Trusted Certificates store from where we will access the WAP Portals.

  1. Login to a computer as a user that has WAP Admin Portal access.
  2. Start a browser.
  3. Type the URL that the WAP Admin Portal was changed to (E.g. https://wapadmin.contoso.com)

    Verify that the WAP Admin Portal loads using the new URL

wap-config5 Windows Azure Pack
Verify that the tenant portal works by opening a browser and go to https://wapcloud.contoso.com.
During the authentication sign-in process note the redirection to the wapcloud.contoso.com:444 authentication site.
wap-config6 Windows Azure Packwap-config7 Windows Azure Pack

Verify that after login the login redirects you back to the WAP Portal.

wap-config8 Windows Azure Pack

Summary

The goal with this blog post was to show how it’s possible to reconfigure portal names, ports and use certificates after deploying the Windows Azure Pack and I think I’ve done that.  But, as always, if you have any questions or comments, let me know…..

Until next time, Rob.