Tag Archives: Azure

Connecting to your Azure site-to-site VPN over NAT

Creating a site-to-site connection to your Azure virtual network is desired in a lot of scenarios. Think hybrid cloud, new workloads, communicating with internal systems from Azure and so on. And in demo scenarios when you’re out travelling you might need that access too. Well, looking at the list of supported devices (below) we can find Windows RRAS for example.

Supported VPN devices: https://msdn.microsoft.com/en-us/library/azure/jj156075.aspx

And reading the guide (below) we’ll see how it’s actually done.

Configure Site-to-site VPN: https://msdn.microsoft.com/en-us/library/azure/dn133795.aspx

According to the last link you’ll need an external IPv4 that’s not behind NAT: “Obtain an externally facing IPv4 IP for your VPN device. This IP address is required for a site-to-site configuration and is used for your VPN device, which cannot be located behind a NAT.

That last statement has been discussed quite a lot, and when you read the RFC (RFC 3715, http://tools.ietf.org/html/rfc3715)  of course that IPsec connection will work over NAT. It’s just not supported by Microsoft, meaning that we can’t help you configuring your firewall to allow passthrough, hence we want your gateway to be directly connected to the internet.

For IPsec to traverse your NAT you’ll need to forward some ports (often called port forwarding in your router).

IKE – UDP 500
Encapsulating Security Payload (ESP) – IP protocol 50
Authentication Header (AH) – IP protocol 51
IPsec NAT traversal – UDP 4500

My setup consists of a Telia router with an external IP of 78.72.172.xx, my internal ip range is 192.168.1.0/24. This is added as a local network in Azure.

azure_local2

I then create a new virtual network in Azure and create a dynamic gateway. This will be assigned an ip address.

azure_vnet_disconnected

After that I’ve installed a VM on my local network running Windows Server 2012 R2 and configured it with RRAS. If you download the VPN device configuration script from the Azure portal it’ll set everything up for you, including installing the role. I’ve also configured the port forwarding in my router.

portforward

 

As you can see in the screenshot above the rule “IPSEC_500” forwards all traffic to 192.168.1.150.

Once you have your port forwarding up and running you can have your RRAS server connect.

rras_connected

Give the portal some time (or refresh it) and it’ll show connected too

azure_vnet_connected

I’ve deployed two VM’s in Azure and turned off the firewall to be able to verify connectivity using ping.

 

connected

 

In the screenshot above I’ve verified connectivity to 10.0.0.5 in Azure with ping, and I’ve done a traceroute. The timeout is from the Azure gateway that doesn’t respond to ICMP. Internal address of RRAS server can be seen in the lower window.

Note that this is unsupported by Microsoft – but works according to RFC.

Nya tider, ny teknik, nytt datacenter

När Microsoft tidigare har gjort affärer med företag och även privatpersoner har vi sålt licenser. Du köper X antal licenser av oss som ger dig rätt att använda Windows, Office och kanske några andra produkter. Det har historiskt sett varit en väl fungerande affärsmodell och alla parter har varit nöjda med det upplägget. Windows som klientoperativsystem, stationär PC som arbetsstation och fysiska arbetsplatser är däremot tre områden där det hänt väldigt mycket. Många företag som tidigare kanske hade en bärbar dator / Windows-tablet för sin personal klarar sig idag med en telefon. Se t.ex. Mathem där man som kund signerar sin leverans direkt på chaufförens mobilskärm. Den stationära PC’n är något som också fått stå tillbaka, de bärbara datorerna har kraftigt sjunkit i pris, särskilt om användningsområdet är Office, epost och surf. En portabel arbetsstation för t.ex. grafiskt arbete kostar fortfarande mycket pengar. Numera använder personal allt ifrån mobiltelefoner, plattor och vanliga datorer.

 

Tittar vi på datacentret så går utvecklingen rasande fort där också. Virtualisering var det som först ändrade hur vi ser på datacentret. Det har gått från att virtualisera själva servern till att vi nu pratar ”software defined X”. Där X numera är compute, lagring och nätverk. Alla delar i vårt datacenter kan numera virtualiseras. Ser vi till vad Microsoft vill åstadkomma med Azure så är det kanske inte i första hand virtualisering vi tänker på, även om IAAS-delarna erbjuder detta. Vi vill att företag till ett konkurrenskraftigt pris ska kunna bygga ut sitt datacenter när man är i behov av testmiljöer, utveckling, belastningstoppar och självklart även ”vanliga” servrar. Lanseringen av nya funktioner sker regelbundet, t.ex. ”network security groups” för att filtrera trafik mellan subnät och multi-nic-maskiner för att kunna ha flera nätverkskort i virtuella servrar. Övrig arkitektur bygger väldigt mycket på att tänka nytt, särskilt om man ska flytta ut eller migrera servrar t.ex. nu när Windows Server 2003 skall ut. Man bör se över hur man gör med applikationer och vara medveten om Azure Web Sites, Azure SQL mfl funktioner som möjliggör modern drift.

 

Det som är viktigt att komma ihåg både som företagsledare, it-chef och driftschef är att verksamheten ofta är känslig för byråkrati, pris och leveranstider. Begreppet ”skugg-it” torde vara välkänt vid det här laget. Det är det som uppstår när verksamheten skaffar sig tillgång till SAAS-applikationer utan att passera IT-avdelningen. Några som är vanligt förekommande är Salesforce och Projectplace. Inte nog med att IT-avdelningen inte har koll på den leveransen, identiteterna som används kan vara användarnas egna gmail/outlook.com-konton. Problemet med det är inte uppenbart förräns någon beter sig illa eller slutar. Då har man inte längre kontroll på vem som kan logga in och var. Azure Active Directory är ett exempel på hur vi dagligen hjälper företag att hålla koll på vilka användare som har tillgång till vilka applikationer. Funktioner som att återställa sitt lösenord om man glömt det eller att ha multifaktorsauthenticiering för att säkra känsliga applikationer kan vi också lösa.

 

Vi på Microsoft hjälper dig gärna. Från ett första möte där vi diskuterar allt från hur Microsoft förändras i dessa tider, till legala krav i din verksamhet och tekniska aspekter. Vill du gå vidare hjälper vi dig självklart med workshops och designsessioner i hur din verksamhet skulle kunna fungera med modern IT som stöd.

Vill du lära dig mer om Microsoft Azure rekommenderar jag varmt MVA – Microsoft Virtual Academy. Kolla in följande kurser:

Introduktion till IAAW och Microsoft Azure – Med Ola Skoog
Moving to Hybrid Cloud with Microsoft Azure
Microsoft Azure IaaS Deep Dive Jump Start
The Microsoft Hybrid Cloud: Best practices guidelines
Microsoft Azure: Site-to-site VPN

TechDays 2014 – Sessionsmaterial

Här kommer som utlovat (dock senare än sagt) sessionsmaterialet från min Azure-session på Techdays 2014. Jag skyller min sena postning på att jag faktiskt ramlade av scenen…

I filen hittar du ppt-presentationen. Du hittar även 4 XLM-filer för nätverkskonfigurationen i Azure. Notera att dessa inte går att importera i din befintliga subscription om du redan har nätverk konfigurerade, men du kan å andra sidan kika på hur jag löst det med flera nätverk eller multi-hop-routingen i fil 3 och 4. I PowerShell-filen hittar du hur du gör en virtuell maskin med flera nätverkskort och hur du konfigurerar Network Security Groups. Frågor? Posta dom i kommentarsfältet!

För att förgylla er dag kan jag även bjuda på inspelningen av min session, särskilt då fallet. Spola fram till 12:55 i filmen.

Presentationsmaterial: Presentationsmaterial TechDays2014

SWE: Lär dig Azure #4 – En virtuell server. Med Minecraft!

Lär dig Azure #4 – En virtuell server. Med Minecraft!

 

I del nummer fyra ska vi kolla närmare på hur man skapar en virtuell maskin. För att göra dig till hjälte i hemmet ska vi också installera Minecraft i servern så att barnen kan få en egen Minecraft-server.

 

En virtuell server tillhör det vi kallar IAAS, Infrastructure As A Service. Företag kan installera sina egna programvaror på servrarna, och när dom inte används har företaget ingen kostnad för dom. Den här guiden hjälper dig att installera en virtuell server så att du får en känsla för hur lätt det är.

 

FÖRSTA STEGET – INSTALLERA SERVERN

 

Vi börjar med att logga in i portalen på http://manage.windowsazure.com och i den vänstra kolumnen klickar vi på ”Virtual machines”, nummer tre uppifrån. Ser ut som en tv J

 

Om det här är din första virtuella server är det tomt i den högra rutan. Har du redan några så ser du en lista.

 

Välj ”New” längst ner till vänster vid plustecknet, när menyn kommer upp väljer du ”From Gallery”. Om du inte ser det alternativet klickar du på ”Compute”, sedan ”Virtual Machines” och SEN på ”From Gallery”.

 

I galleriet har vi förberett massa olika installationer. Dels har vi såklart Windows och SQL Server. Sedan har vi SharePoint och Visual Studio. Oracle har valt Azure som den enda supporterade molntjänsten och vi har en uppsjö olika Linux-distributioner att välja på.

 

För vår uppgift idag väljer vi ”Windows Server 2012 R2 Datacenter”, överst i listan. Markera den genom att klicka på den och klicka på pilen längst ner till höger.

 

I formuläret på nästa sida har vi fler alternativ:

 

Version release date: När installerades senast säkerhetsuppdateringarna i imagen. Välj senaste datumet.

Virtual machine name: Namnet som servern kommer få i Windows (alla datorer heter något).

Tier: Basic har inte en lastbalanserare, Standard har. Väldigt enkelt förklarat. Vi väljer Basic.

Size: Storlek på den virtuella maskinen, ju större desto dyrare. A0 eller A1 räcker utmärkt. Det går även att byta storlek senare.

New user name: Administratörskontot på servern. Kan inte vara ”administrator” som är vanligast. Kom ihåg vad du skriver i den här rutan.

New password: Lösenordet. Måste uppfylla komplexitetsregler. Glöm INTE det här!

Klicka högerpil.

 

Nytt formulär.

 

Cloud service: Lägg med servern i en ny eller befintlig cloud service. En cloud service används för t.ex. lastbalansering.

Cloud Service dns name: Det externa dns-namn din tjänst får.

Region/affinity group/virtual network: Var vi ska placera vår server. Välj West eller North Europé.

Storage Account: I vilket storage-konto servern ska lagras. ”Use an automatically…” duger fint.

Availability set: När två maskiner levererar samma tjänst (t.ex. en websida) lägger man dom i ett availability set för att säkerställa att tjänsten alltid är igång.

Endpoints: En endpoint är den port/ar som servern lyssnar på. En webserver lyssnar till exempel på port 80 som protokollet http går över. Minecraft lyssnar på port 25565. I rutan där det står ”Enter or select a value” skriver du Minecraft, välj TCP som protokoll och både public och private port ska alltså vara 25565.

Högerpil, här går det undan!

 

Låt rutan ”Install the VM agent” vara ikryssad. Klicka på bocken nere till höger.

 

I listan kan du nu ser hur Azure installerar din server. Det tar 5-10 minuter, garanterat längre om du sitter och stirrar på skärmen. Dags att hämta en kaffe, eller gå ut med hunden. Eller dra på Lenny Kravitz nya platta ”Strut” och fuldansa i köket.

 

När det bakom ditt servernamn står ”Running” så är server uppe och snurrar. Dags för minecraft!

 

Om man tycker att formuläret är lite tidsödande och krångligt så tycker man rätt. Vanligtvis gör man hela den här operationen med PowerShell istället.

 

Klicka på servernamnet, och sedan på ”Connect” nederst på skärmen. När frågan ”Do you want to open or save…” dyker upp klickar du på “Open”. Nästa ruta är ”Remote Desktop Connection”, klicka på ”Connect” nere till höger. Välj ”Use another account”. I rutan ”User name” skriver du ”servernamnetanvändarnamn”, t.ex. ”minecraft01joachim” och i rutan ”Password” skriver du in lösenordet du valde.

 

I nästa ruta väljer du ”Yes

 

Efter ett tag loggas du in på din server och ser skrivbordet.

 

Nu är det dags för vår Line Of Business-applikation!

 

MINECRAFT

 

Det finns en ypperlig instruktion på http://minecraft.gamepedia.com/Tutorials/Setting_up_a_server#Windows_instructions hur man installerar Minecraft för Windows. Kör du fast här så kika in där.

 

Eftersom det är en server vi installerat måste vi först se till att kunna surfa på internet. I programmet som är öppet i din server, ”Server Manager”, klickar du på ”Local Server” i kolumnen till vänster. Leta sedan reda på där det står ”IE Enhanced Security Configuration” och klicka på ”On”, välj ”Off” på bägge ställena och klicka ”Ok”.

 

Starta Internet Explorer från startmenyn och surfa till https://minecraft.net/download. Under rubriken ”Multiplayer Server” hittar du ”minecraft_server.1.8.exe”. Ladda hem den, och kör. Klart! Nu kan du från barnets (eller din) dator ansluta med Minecraft mot det namn din Cloud Service fick. Kolla i portalen vad det står under rubriken ”DNS Name”, ange det i minecraft under servernamn när du ska ansluta.

 

Om ditt barn vill ha massa plugins till Minecraft rekommenderar jag dock att du väljer Java-versionen istället. Kolla in guiden jag länkade till ovan för hur du bär dig åt då!

 

Hur man skapar en virtuell maskin i Azure: http://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-tutorial/

Minecraft: https://minecraft.net/

 

Lycka till och återkom om det är några frågor!

 

/Jocke

Creating and uploading your Azure RemoteApp template image

Creating and uploading the image for RemoteApp turned out to be a challenge for some odd reasons. For the script Upload-AzureRemoteAppTemplateImage.ps1 to work you need to make sure you fulfill the prereqs it needs. Which can be found if you read the script 😉

If Upload-AzureRemoteAppTemplateImage.ps1 fails for “odd” reasons you need to make sure that you’re running PowerShell as Admin and that you’re starting “Windows Azure PowerShell” or have the Azure module loaded.

Here’s my short list of what you need to do:

  • Create a new Hyper-V VM with a 40 GB FIXED dynamic (now supported) size disk.
  • Install Windows Server 2012 R2 (only OS supported)
  • Install RDSH role and Desktop Experience feature (both needed)
  • Reboot (needed to make sure application installations are aware of RDS)
  • Login
  • Install the applications you want to publish to your users
  • From an elevated CMD, run “fsutil behavior set disableencryption 1” (disables EFS encryption of file system)
  • Reboot (makes sure EFS disable is written to registry)
  • Login
  • Run “sysprep /oobe /generalize /shutdown”

Once your machine is turned off you need to start PowerShell as administrator with the Azure cmdlets.

Run the script provided by the portal, find your VHD-file and you should be on your way!

Uploading the file

upload4

 

 

The portal states the template status as “uploading”

upload3

Azure Automation – Using the assets

After yesterdays post about getting started I’ve gotten some questions about the assets library. Thought I’d explain how to use some of the assets (or at least how I’ve figured it out I’d say, might be totally off but at least it works)…

Looking at the assets library we have a “Connection”-object containing our subscription ID. This could be an ID to another subscription, might be useful for IT to deploy services to a developers subscription or something like that.

We also have a “Certificate”-object where we also uploaded the corresponding certificate to our collection of management certificates in Azure, this needs to be done on the right subscription then if you’re managing multiple ones, keep that in mind…

Automation assets

 

 

 

 

 


<# .DESCRIPTION .NOTES Author: Joachim Nässlander, TSP Datacenter, Microsoft #>

workflow Start_Azure_Demo_VM
{
param()

$MyConnection = “Internal Subscription Connection” # <— The name of your Connection object in assets
$MyCert = “InternalSubscriptionCertificate” # <— The name of your Certificate object in assets

# Get the Azure Automation Connection
$Con = Get-AutomationConnection -Name $MyConnection # <— Connect to your subscription
$SubscriptionID = $Con.SubscriptionID
$ManagementCertificate = $Con.AutomationCertificateName
$Cert = Get-AutomationCertificate -Name $Con.AutomationCertificateName # <— Get the certificate from assets

write-output “Subscription ID: $SubscriptionID”

write-output “Certificate Name: $Con.AutomationCertificateName”

}

 

And since this is the internet. How are you using Azure Automation and the assets library, feel free to comment!

Have a nice weekend, and don’t miss The Fratellis to keep you company over a beer!

Getting started with Azure Automation

Azure automation is currently in preview so you might not see it in your portal if you haven’t enrolled already. You can enroll for Azure Automation at http://azure.microsoft.com/en-us/services/preview/and also find all other services currently in preview. It’s a good place to frequently check out, fun things emerge here!

So what is Azure Automation? Well, it’s the ability to run PowerShell workflow scripts from Azure, targeted at your Azure resources.

Once you’re enrolled into the preview program you can create your first automation account. An account can be seen as a container that you can fill with runbooks and assets needed by the runbooks. An asset can be for example a certificate allowing you to connect to your (or another) Azure subscription.

 

Automation dashboardThe overview over your runbooks looks like this. It’ll show you the number of runbooks, number of activites,  number of minutes you’ve ran your scripts and a whole lot more.

 

 

 

 

 

 

 

Now that you’re enrolled you might want to quickly just test it out, personally I love just getting a feel for things before diving into documenation. You can find example scripts and a how-to at http://azure.microsoft.com/en-us/documentation/articles/automation-create-runbook-from-samples/. One thing to note when creating your runbook is that your scripts name in the portal need to correspond to your workflow name. Ie if your workflow is named “Join-Servers-Domain” your runbook must be named the same.

 

Automation runbooks overviewLooking more at the portal, if you click “runbooks” up top, you can see your runbooks listed with their latest run time and status. This gives you a quick overview without having to look at each runbook individually.

 

 

 

Detailed view of runbook

Selecting one specific runbook gives you a chart over how it has ran over the some periods of time. Here you can also drill down into each script run and view script output and any input parameters.

 

 

 

 

 

Published runbookClicking on “author” while in detailed view takes you to the published version of the script. Here you can view your script and start it manually if you want to.

 

 

 

 

 

Runbook draftIf you opt for “draft” instead you’ll be able to edit your script and insert things from your assets library or other runbooks, allowing for runbooks to interact with each other. Here you can also test your runbook before publishing it.

 

 

 

 

 

Automation assetsThe assets library contains building blocks needed for your scripts to function properly. And it’ll make it easier for you to develop scripts for multiple subscriptions too.

In my example we have:

  • Connection to a subscription
  • A certificate which allows us to connect to this subscription (find a guide for that here)
  • PowerShell credentials so we don’t have to enter username/password each time
  • A module containing PowerShell cmdlets

 

 

You can read more about getting started with PowerShell workflows at http://technet.microsoft.com/en-us/library/jj134242.aspx.

Downgrading you ClearDB MySql database in Azure

Are you running a website or application in Windows Azure with data stored in MySql? I upgraded my database from the free database with a maximum of 20 Mb to the 1 GB option, costing me $9.90 a month. Well, I cleared it out and was going to do a downgrade from payed to free again. Well, it seems ClearDB doesn’t really like downgrading since the Revenue stream goes sour… So you’re on your own and need to create a new database and manually (woop!) migrate data. Feels like we’re back to 1886.

Steps:
Login to ClearDB site
Create a new database in the free plan
Copy server name, user name and password to a textfile, or just remember it all 🙂
Download MySql Workbench from Oracle (http://dev.mysql.com/downloads/tools/workbench/)
Install Workbench (next, next, finish)
Get the server name, user name and password to your existing database, wp-config.php has it or check the connection strings for your Azure website.

ClearDB01
 

 

 

Configure MySql Workbench to connect to old server
 Dump database

ClearDB02

 

 

 

 

 

 

 

 

Edit dump file to reflect new server and database name. Or make corresponding changes in Workbench, but this is easier to explain.

ClearDB04

 

 

 

 

 

 

 

Import/restore to new database in Workbench

ClearDB03

 

 

 

 

 

 

 

 

Edit wp-config.php to reflect new server name

ClearDB05

 

 

 

 

 

 

 

Verify it all works by reloading your website in your browser. (important!)

Delete old database on ClearDB site. This will also clear your payment plan. Login to Amazon and verify your payment authorizations to make sure.

SCUG-dagarna (SWE)

I september, 22-24:e, går SCUG-dagarna av stapeln. Det är System Center User Group (SCUG) som anordnar detta. Den 22:a är det en labbdag, 23:e är datacenterdag och 24:e är fokuserad på klienter.

Den 22:a kan man rösta på vilka produkter man vill labba med:

  • Configuration Manager
  • Operations Manager
  • Orchestrator
  • Virtual Machine Manager
  • Service Manager
  • Data Protection Manager
  • Windows Azure Pack
  • Windows Intune
  • App Controller

Labbandet sker på LabCenter.

Anmälan till den 22:a: http://scuglabday-eorg.eventbrite.com/

 

Datacenter-dagen 23/9

Den preliminära agendan för datacenterdagen ser ut såhär:


08:30 – 09:00 Registrering

09:00 – 09:10 – Vision

Välkommna Stefan Schörling 

09:10 -10:15 – Vision

Using the R2 releases to build your Private Cloud – Mikael Nyström

10:45 – 12:00 – Vision

Levereing the Cloud in your own datacenter – Joachim Nässlander

12:00-12:45 – Lunch

12:45 – 14:00 – Vision

Massive Data warehouse reporting that will rock the boat with System Center– Patrik Sundqvist 

14:15-15:30 – Vision

Cooking up gourmet automation solutions with System Center – Anders Bengtsson

15:45-17:00 – Vision Service Delivery System Center R2 better together– Robert Hedblom

17:15 – Mingel

 

Anmälan till datacenterdagen: http://scugdcday-eorg.eventbrite.com/ (59 platser kvar 28/8)

 

Klientdagen går av stapeln den 24/8, preliminär agenda även här:

08:30 – 09:00 Registrering

09:00 – 09:10 – Vision

Välkommna Dag 2 Stefan Schörling

09:10 – 10:30 Vision

System Center Configuration Manager 2012 R2 – Anders Ahl Microsoft

10:45 – 12:00 – Vision

Managing and configuring UE-V, MBAM and DaRT in CM2012 R2 – Andreas Stenhall

12:00-12:45 – Lunch

12:45 – 14:00 – Vision

How to Build your IT Infrastructure to support BYOD – Jörgen Nilsson / Anders Olsson

14:15-15:30 – Vision

OSD enhancements in MDT 2013 and ConfigMgr 2012 R2 – Johan Arwidmark

15:45-17:00 – Vision

TBA – Björn Axell

 

Anmälan till klientdagen: http://scugclientday-eorg.eventbrite.com/