Category - Azure 4 ServerHuggers

Now what do I do? Next steps after signing up for an Azure Trial.

With the expanse of what Microsoft Azure can do – it can be daunting to roll up your sleeves and get started without further guidance. Let me get you on the fast track for learning what is possible in a way that is both simple to understand and relevant to what you are doing now.  Makes sense, doesn’t it?

A while back I started a Category called “Azure4ServerHuggers” – specifically designed to get you up and working with Azure if you are already experienced in the On-Premises world. I haven’t made the time to continue down that path of posts in a while – something I am going to change, starting now.

Lets set some ground rules about what you need to know in order to follow these ongoing posts.  Check out these two posts to get started:

  • Windows Azure–where do I sign up? – info on how to sign up for the Trial and all the background info you will need to know. Plus I do a “Quick Create” Windows Server virtual machine and connect up to it via RDP.
  • Installing the Windows Azure PowerShell Cmdlet. – Lets face it – you can start in the GUI, but ultimately you need to start working with cloud services in an efficient manner with the proper tools. Get used to working on it via PowerShell.

Now lets work on a baseline sample test environment. My friend Joe Davies and the Azure documentation team have created a set of environments I will be using as my lab setup for all of these “Azure4ServerHuggers” posts going forward. These documents are called “Test Lab Guides” and are designed to have a consistent sample environment from which to start tests. We will ultimately be using the “Setup A Hybrid Cloud Environment for Testing” which looks like the graphic below.

hybrid-cloud-config

This setup can be done on a single Hyper-V or other virtualization box that has a public IP address associated with 1 network card.  Your CLIENT1, APP1, DC1 will be running in an isolated network which has the dual nic RRAS1 box connected to the Public internet. This setup assumes you configure your “corpnet” as per the “Base Configuration for Windows Server 2012 R2 – Test Lab Guide” and then further configure the RRAS1 box to act as your gateway.

But we aren’t going to jump there just yet…This is our starting point.

CorpNet

I wanted to show you where I was heading – a Hybrid Cloud environment that allows seamless access of cloud resources through a gateway, probably the most tangible method of useful connectivity a ServerHugger like me can grasp.

Ultimately, in order to use Azure – you just need an internet connected machine, a trial account and then use the GUI portal or PowerShell (you really should learn to use PowerShell with Azure, have I mentioned that yet?).  Go ahead! Get started with creating a few machines via the portal.  Don’t Worry – any resources you make in Azure are “confined” inside the datacenter and your subscription until you OPEN endpoints from the internet. Until you create a gateway to your private network – all connectivity and traffic has to go across the public internet.

While I am encouraging you to “play” with this before this series gets started – DON’T FORGET: All Public Cloud Services are consumption based and you will be charged for running systems up in Azure and other cloud providers.  Azure bills VMs by the minute based on size of machine and time running.  An A1 machine (1 core, 1.75 GB ram) will cost you $0.002 US a minute (approx. $0.13 an hour) to run but our largest G5 series machine (32 cores, 448 GB ram) costs $0.13 a minute (approx. $7.80 an hour).

Make sure you shutdown any machines you create which are not required after working with them in the lab – I’ll show you how to automate this in a future post.

If you are looking some consumable video content before we get started – I’d suggest checking out this list of courses on Microsoft Virtual Academy.

A couple of topics I will be covering in this series (list will grow over time):

  • Quick Create of a VM via new portal.
  • Creating a VM via Powershell
  • Creating Multiple VMs on the same vNet
  • Scale OUT (multiple VMs) and Scale UP (VM size and performance optimization)
  • Designing IaaS for higher availability to minimize service interruptions
  • Creating a Hybrid Environment
  • Having a PaaS Azure Website talk to a VM on a vNet
  • Migrating on-premises / other Cloud Provider VMs to Azure

Do you have suggestions for additional topics? Leave them in the comment area!

Trust. You have to build it one step at a time

I think the title says it all. Working in Cloud environments with various cloud providers you start to realize your comfort level with their services comes down to how much you Trust your provider and the services they provide.  When issues come up – how they are handled and what measures are put in place to prevent them from happening again are small steps forward to continuing to build trust. I get asked the trust question a lot by customers who are considering using cloud services.

Today MSFT takes one more step forward by announcing we’re the first provider to adopt and adhere to ISO/IEC 27018 – an international standard for cloud privacy. It is one of many different ISO certifications and attestations that our cloud services achieve. This one is very cool as it relates specifically towards privacy and “Your Data”.  I suggest you have a read at Brad Smith’s blog post to get some more specific info and links.  Some quick points from his post I found interesting:  By adhering to ISO 27018, we’re committed to protecting your privacy and data in a number of ways:

  • You are in control of your data. Adherence to the standard ensures that we only process personally identifiable information according to the instructions that you provide to us as our customer.
  • You know what’s happening with your data. Adherence to the standard ensures transparency about our policies regarding the return, transfer, and deletion of personal information you store in our data centers. We’ll not only let you know where your data is, but if we work with other companies who need to access your data, we’ll let you know who we’re working with. In addition, if there is unauthorized access to personally identifiable information or processing equipment or facilities resulting in the loss, disclosure or alteration of this information, we’ll let you know about this.
  • We provide strong security protection for your data. Adherence to ISO 27018 provides a number of important security safeguards. It ensures that there are defined restrictions on how we handle personally identifiable information, including restrictions on its transmission over public networks, storage on transportable media, and proper processes for data recovery and restoration efforts. In addition, the standard ensures that all of the people, including our own employees, who process personally identifiable information must be subject to a confidentiality obligation.
  • Your data won’t be used for advertising. Enterprise customers are increasingly expressing concerns about cloud service providers using their data for advertising purposes without consent. The adoption of this standard reaffirms our longstanding commitment not to use enterprise customer data for advertising purposes.
  • We inform you about government access to data. The standard requires that law enforcement requests for disclosure of personally identifiable data must be disclosed to you as an enterprise customer, unless this disclosure is prohibited by law. We’ve already adhered to this approach (and more), and adoption of the standard reinforces this commitment.

Go read Brad’s article and check out the additional links – it makes for a good read.

High Level Docker Overview – for IT Pros

A while back I shot a quick video with Madhan Arumugam and Ross Gardler talking about what this containerization technology is all about. Looking for information to understand the concepts and options yourself? Have a look at this High Level explanation / whiteboarding of container technologies and their advantages over individual processes and traditional IaaS Virtual Machines.

Madhan Arumugam, Principal Program Manager with the Azure compute team

Ross Gardler, Sr. Technical Evangelist with Microsoft OpenTech

Azure IaaS for IT Pros and SysAdmins

960x250-Banner_Azure_IaaS_v04

This has been a long time coming, but it is finally here.  I am pleased to announce the event I have been wrangling for months has now finally come to fruition. It’s a 4 day LiveStream activity (December 1st to December 4th) with over a DOZEN engineers from a number of teams – all focusing on various aspects of Azure specifically targeting IT Pros and SysAdmins.  Yup – a soup to nuts interactive event covering everything from windows workloads to hybrid connectivity, Linux and OSS to PaaS and SharePoint solutions.

I’ll be acting as Host and will be joined by some very cool folks! Here is just a sample of some of the heavy hitters who will be involved in the delivery of this event.

  • Mark Russinovich, CTO of Microsoft Azure will kick the event off with a session on what’s important for IT Pros and SysAdmins
  • Corey Sanders, Partner Group Program Manager for Azure IaaS team diving deeper into all things IaaS and changes to the IaaS platform
  • Drew McDaniel, Principal PM Manager on Corey’s team will guide us though the Windows Server workload best practices and architecture
  • Madhan Arumugam, Principal PM Manager on Corey’s team will cover off the Linux and OSS workloads running on Azure

This is just the tip of the iceberg of what’s lined up. Stay tuned for more details and full agenda for this event.

Go to http://aka.ms/levelupazure to register and reserve your spot for this free LiveStreamed event

Installing the Windows Azure PowerShell Cmdlets.

I am assuming you have used the online graphical portal a bit and now you want to be more productive and start some rudimentary automation. We don’t expect you do use the portal for everything. For an IT Pro – the logical choice is to use PowerShell and work like an admin from your workstation. Before I go into more depth on all sorts of components and features/capabilities of Windows Azure, let’s prep your workstation for some automation.

Step 1: Download the files.

Head on over to the download page from the Windows Azure site. http://www.windowsazure.com/en-us/downloads/

AzurePowershellDL1

This will kick off the download of the Web Platform Installer. This tool will be available on your system to download the current version as well as all the updates we periodically make to the cmdlets.

Step 2: Use the Web Platform Installer to install cmdlets and dependencies.

It’s not just the cmdlets that will download – it’s also all the dependencies that come down and get updated as well. don’t worry – the Web Platform Installer (WebPI) has you covered for ensuring everything is up to date.

AzurePowershellDL3

Step3: Put the install location into your path

This is optional, but helpful if you will be using the cmdlets a lot. There a a number of ways to do this, but in my opinion, the least invasive way is to update your PATH environment variable with the Azure cmdlets install path.

The cmdlets are installed (by default) in C:Program Files (x86)Microsoft SDKsWindows AzurePowerShellAzure

Pull up your system properties. (I right click on “This PC” or My Computer and choose properties). Click on Advanced System Settings.

AzurePowershellDL4

Click on Environment Variables

AzurePowershellDL5

Update the path statement to include C:Program Files (x86)Microsoft SDKsWindows AzurePowerShellAzure. Don’t forget to go to the end of the line and add a ; before overwriting your path!

AzurePowershellDL6

Close off all your windows with the OK buttons and you are good to go.

Step 4: try it out in PowerShell and PowerShell ISE

Just to make sure – check it out in your PowerShell window and tool of your choice.

AzurePowershellDL7

AzurePowershellDL8

Fairly simple and straight forward – but surprisingly hard to find out how to set it up in the easiest way possible. From now on – this system is ready to go with the Azure PowerShell cmdlets.

Step 5: Simplify Your Settings

When you need to run a command against your Windows Azure subscription, the session will need some settings to be referenced a lot. This means you will get a window pop-up to login to your Microsoft Account or account you are using to manage and interact with your subscription via the portal. To make your life WAY easier – if this is your “management workstation” that you maintain and secure, you can download your Azure Publish Settings file including your management certificate. Trust me – it will make your life easier if you do this.  It’s so simple.

From a PowerShell prompt, type in:

PS C:> Get-AzurePublishSettingsFile

That will require authentication to the Azure Portal in order to create your Settings File.

AzureSettingsFile

It will prompt you to download and save it to a secure location. Change to that location in your PowerShell window and then type in:

PS C:> Import-AzurePublishSettingsFile

If you were not in the proper directory where the file resides, you will need to include the full path and name of the file.

To check if the settings file worked correctly – check what subscription is active in the PowerShell console session by typing in:

PS C:> Get-AzureSubscription

This should respond with details of your subscription, including details on the management certificate which will be valid for one year.

That’s It – You Are DONE!

Step 6: What about Updates?

That’s simple! Periodically run the WebPI utility to ensure there are no updates.

AzurePowershellDL9

Notice the date for Windows Azure PowerShell AND that there is no option to “add” it anymore as it has already been installed.  If updates are available that button will become active once again.

That’s about it – if there was an update, it would come down to the appropriate path that has already been added to the system path and therefore all new PowerShell windows and ISE sessions would automatically be updated with new functionality.

Windows Azure–where do I sign up?

(NOTE 3/11/14: clarification on billing with “spending limits feature” has been added. See italicized text in bullet points for additions)

No seriously – where do I get it?

Do I have to get some sales guy to come and sell it to me? Do I contact a software reseller to sell me a copy? Do I need gobs of cash to be able to try this out?

In short – the answer is NO.

The fastest and simplest way to get started is to get your own free trial.

go to www.windowsazure.com

AzureSignup

I think it is relatively apparent where you go for the Free Trial – but I thought I’d highlight the arrows with more arrows in red.

You’ve got links to a FAQ, a phone number you can call to answer questions and $200 in credit to spend on your trial. I suggest you take a moment to read the FAQ. There are a lot of preconceived notions that are either false or greatly out of date with regards to signing up for a free trial. I’ll highlight a couple below:

  • You can use the $200 to try out any number of services without restriction (except the $200 credit limit or 30 days – whichever comes first).
  • The trial is absolutely FREE – you will not be charged for anything above and beyond the $200 credit.
    • MYTHBUSTER: we do not charge you for overages or “mistakes” you make during this trial because you are unfamiliar with how billing works and you are in  a “learning phase”.  In the past we did not have a “cap” that could be added to protect early adopters from getting bills they didn’t expect.
  • CreditCard and Microsoft Account are required.
    • MYTHBUSTER: as mentioned above – we do not charge your card for this free trial.  You are welcome to use your business or personal card – they are used for identification purposes only.  I mean – come on- we don’t want people spinning up services and VMs to do BitcoinMining things without knowing who they are.
  • If you exceed the $200 credit limit on this trial or hit 30 days, the services and account will be automatically suspended.  You are welcome to convert the trial into a simple “Pay-As-You-go” option to maintain your services and will be billed accordingly for services use.
    • The Spending Limit feature is targeted to the MSDN and Partner Cloud network members. It is not available on the Pay-As-You-Go or consumption plans. It was designed to ensure these members won’t get billed while they are developing solutions on the Azure Platform.
    • You are able to sign up for Billing Alerts to warn you when you are approaching thresholds and want to proactively scale back before incurring charges. See this article for more details.
  • Azure Free Trials are available in all countries/regions where Azure is commercially available. Windows Azure is currently (as of March 1st, 2014) available in the following 84 countries/regions: Algeria, Argentina, Australia, Austria, Azerbaijan, Bahrain, Belgium, Brazil, Bulgaria, Canada, Chile, Colombia, Costa Rica, Croatia, Cyprus, Czech Republic, Denmark, Dominican Republic, Ecuador, Egypt, El Salvador, Estonia, Finland, France, Germany, Greece, Guatemala, Hong Kong, Hungary, Iceland, India, Indonesia, Ireland, Israel, Italy, Japan, Jordan, Kenya, Korea, Kuwait, Latvia, Liechtenstein, Lithuania, Luxembourg, Macedonia (FYRO), Malaysia, Malta, Mexico, Montenegro, Morocco, Netherlands, New Zealand, Nigeria, Norway, Oman, Pakistan, Panama, Paraguay, Peru, Philippines, Poland, Portugal, Puerto Rico, Qatar, Romania, Saudi Arabia, Serbia, Singapore, Slovakia, Slovenia, South Africa, Spain, Sri Lanka, Sweden, Switzerland, Taiwan, Thailand, Trinidad and Tobago, Tunisia, UAE, UK, United States, Uruguay, Venezuela, Belarus, Kazakhstan, Turkey, Ukraine, and Russia.

Note regarding the Credit Card requirements: All online “cloud” services space require a credit card for identity verification and trials these days. It’s the minimum bar for entry to ensure some level of validation / accountability.  If you don’t have one, you might be able to register one of those “pre-paid charge cards” from a store, provided you registered your information for online purchases – but I’ve never tried it myself.

If you want more details on the plans and how the Spending Limit works – check out this article. If you want to know how to setup Billing Alerts, check out this article.

Fill out the registration details with validation text message or automated voice call.

AzureSignup2

Once the code gets validated, the payment information becomes available. Once confirmed, you should end up at the Subscriptions page with a “pending status” as we get things setup for you.

AzureSignup3

This can take some time – click on the (Click here to refresh) option to check on it’s status.  When I wrote this blog post it took all of a minute to be ready.  Once you are listed as “Active” (my screenshot shows “Pending”) you can click on the blue Portal area up in the right corner.

Once you progress to the portal – a quick tour option is available to walk you through the very basic functionality of what the Management portal can do and it’s various notification areas that are context sensitive.

AzureSignup4

Once you have gone through the quick 5 slices of info – you are dropped into the Management Portal for your Windows Azure account. You’ll be spending some time in here working with the services and setting things up. I’ll be going over a bunch of things I’ve done in here as part of this ongoing series. Take some time, explore a bit and check out the Help in the bottom right corner of the management portal.

image

Lets have some quick fun – something all of us ServerHuggers can embrace and understand – Lets make a Windows Server 2012 R2 Virtual Machine and RDP into it!. To keep things REAL simple – I suggest you try out the Quick Create of a VirtualMachine from the big NEW button at the bottom left of your portal.

quickCreate

Fill in a unique DNS name (I use my initials RJC with demoVM to make RJCDemovm), create a local admin user name and confirm a admin password. Finally, choose a region/affinity group (where will it be hosted) and click on “Create Virtual Machine”. Once the info has been submitted – Azure will start the provisioning process and give you a status update in the portal. You can see from the shot below – mine is provisioning, it has a name of rjcdemo.cloudapp.net and you can see a job to finish it’s provisioning is running by the animated green bars in the bottom right corner of the portal.

quickCreateVM

Notice it takes some time to spin up – think of a VHD being copied out of a VM Library and then being assigned into your storage and finally being started for the first time. It has to go through the initial Sysprep like first boot activities and have configuration settings passed through to it via a custom made unattend.xml file (where do you think it got the username and password to create from?).  Eventually it will come up to a Running state.

Once it hits that Running State – you have the billing meter running (against your $200 free credit) to the tune of about $0.10 / hr for a small instance. It’s billed by the minute and you are NOT charged when it is Shut Down – so don’t forget to shut it down when you are done playing with it.

You’ll notice at the bottom, when the machine is selected you can Connect, Restart, Shut Down, Attach / detach disk, capture and Delete. Click on the CONNECT button.

quickCreateVM2

A familiar open/save dialogue opens up – save the file someplace – it’s just a RDP file that has the Fully Qualified Domain Name to your VM and the special non-standard listening port for the RDP connection (in my case it’s rjcdemovm.cloudapp.net:52778). This gets re-mapped to the proper 3389 port by Azure (more on this later). Launch this connection and sign in with the Admin ID and password you filled out in the Quick Connect form and Voila!

quickCreateVM3

NOTE: In case you didn’t know, if you sign in with a .{username} it signifies that you are logging in to the LOCAL account database of the system (since it’s not domain joined AND since I am running this demo from my corporate machine – you can see me authenticate correctly in the middle with local creds).

Accept the certificate warning and the RDP session opens to your new desktop of a server running in the cloud on an ISOLATED network that has been NAT’ed behind the Azure firewall.  Feels like home, eh?  Go ahead – poke around, check out and explore all the sort of stuff you would do when you rack a server or spin up a VM for the first time. Kick the tires and play around – all seems very familiar, eh?

ok – that’s enough for this post.  Once you are done playing around, log off the Virtual Machine and return to the Azure Management Portal.  From there, select the machine and choose SHUTDOWN from the bottom bar.  This will gracefully shutdown the VM and stop the charges for the machine in order to preserve your credit.  If you forget – it’s going to cost you $1.20 to run this overnight for 12 hrs or so – not exactly going to break the bank.

Congrats on taking the first step towards this Cloud thing as a ServerHugger.

it wasn’t so bad now, was it?

P.S. One last thing:

If you are from the developer side of the house in IT – you might already have an MSDN subscription that includes reoccurring monthly credits and benefits that can be activated. If you’re an IT guy who sits on the Infrastructure side of the house – you might want to check to see if your developer brethren have already started using this benefit and see if you can get in to the action. You see – you can have multiple admins and access to subscriptions for access to these benefits.  But really – you probably want your own space to play in and learn.

“Server Huggers” guide to Windows Azure–new series

WP_20140307_13_38_38_ProAs you may or may not know – I am a Server Hugger – heck I even have a pin to prove it. But – as I like to take on challenges, I thought I would transition my expertise out of on-premise server architecture and infrastructure and walk on the wild side for a while. I’m on a personal mission to get my head around everything there is to know about Windows Azure – from a Server Hugger’s perspective.

WP_20131031_12_32_29_Pro (340x640)Since I’m making this transition and embarking on a fully immersive Azure experience – I thought I’d document it along the way here on the blog. Don’t worry – I won’t be abandoning all things Windows Server / Storage / On-Premises – that will be continuing. I’ll be able to transition my skills to be more “cloudy” based on everything I’ve read and come out for the better on the other side.

I’ll be tagging my posts in a new category “Azure 4 Server Huggers” so you can find them amongst the stuff I have going on here. I will also caveat that each entry will be date specific as technologies evolve extremely fast in the Azure space. I’ll do my best to keep them updated as things change.

Finally – all content in this series will be coming from the perspective of a Server Hugger with 25+ years experience working in on-premises IT environments. There will be minimal “dev” stuff going on – other than how to support and work with them along the way. I’ll be bringing my architect experience along with me.

I hope you enjoy it.

signature


Warning: sizeof(): Parameter must be an array or an object that implements Countable in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\project-nami-blob-cache.php on line 416

Fatal error: Uncaught WindowsAzure\Common\ServiceException: Fail: Code: 400 Value: The account being accessed does not support http. details (if any): <?xml version="1.0" encoding="utf-8"?><Error><Code>AccountRequiresHttps</Code><Message>The account being accessed does not support http. RequestId:3fa618be-c01e-0086-522e-ac9c9d000000 Time:2021-09-18T01:41:47.8789107Z</Message><AccountName>ritgcache</AccountName></Error>. in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php:382 Stack trace: #0 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php(275): WindowsAzure\Common\Internal\Http\HttpClient::throwIfError(400, 'The account bei...', '\xEF\xBB\xBF<?xml versio...', Array) #1 D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\RestProxy.php(141): WindowsAzure\Common\Internal\Http\HttpClient->send(Array, Object(WindowsAzure\Common\Internal\ in D:\home\site\wwwroot\wp-content\plugins\projectnami-blob-cache\library\WindowsAzure\Common\Internal\Http\HttpClient.php on line 382