Azure Virtual Machines – Two major cost optimizations everyone should know!

Introduction

For today I’ll show you two major cost optimizations for your Azure Virtual Machines ;

  • Reserved Instances
  • Windows Licensing

 

As the baseline for the cost projections, I’ll be using a commonly used “D2v3”-machine (deployed in West Europe & currency set to Euro) ;

For the Cost Optimization calculations, I’ll be using VMchooser, which returns the following results ;

So what to make of this? Let’s dive into those two topics!

Continue reading “Azure Virtual Machines – Two major cost optimizations everyone should know!”

Advertisements

Using B-series for your Dev VM in Azure

Introduction

Earlier this week I tweeted my excitement of using an Azure B-series machine for my Dev VM in Azure. And Jan was curious to know what type I used…

Which got a response from Sven that I would probably blog on it…

So…

Continue reading “Using B-series for your Dev VM in Azure”

Inbox Zero – How I (still) do it after about 10 years…

Introduction

A bit less than 10 years ago I posted about “Inbox Zero“. Though for as long as I’ve known the concept, I’ve been an avid fan/believer of it. Over the course of the years, I’ve evangelized about the concept to many, where a lot of people typically asked me : “Isn’t that really time-consuming?!?”. My answer has always been ; “It is a habit… And indeed, you invest a bit of time into it, though the gains of not having to pick up the same email(s) over and over again is where you easily win!”.

 

Theory

The basic premise of Inbox Zero is that your inbox is at all times.. EMPTY!

For a lot of people this seems impossible to achieve, though you realize this by going though the following flow for each mails that comes in… at the time it comes in. So yes, you “immediately” (as in the moment you open your mailbox) process all new mails. How do you do that, by the following rule set…

  1. Do I/we need to care?
    1. No, Delete.
    2. Yes. Great! Is the mail something I should do?
      1. No, Delegate (forward).
      2. Yes. Interesting! Can I reply in less than 2-3 minutes?
        1. Yes, Respond (reply).
        2. No, Defer (flag for follow-up). => And schedule times to where you’ll focus on burning through your “backlog” (read: deferred mails), so Do.

 

Practical Guidance

That sounds quite simple to do? So why don’t we all do it?!? From what I’ve seen, it starts with not knowing / being taught the system. And on the other had, it also requires a given level of discipline / organization to achieve it. Though in my mind, it can be accomplished by all if you are just given a bit of practical guidance. That’s what we’ll be talking about today!

Continue reading “Inbox Zero – How I (still) do it after about 10 years…”

When your Single Page App needs CORS and meets Azure API Management with a Function Backend

Introduction

When you have an SPA (Single Page App), all your code is being run inside of your browser. This means that, from a network perspective, you’ll be talking to the APIs directly. It’s often (rightfully) said that SPAs are an untrusted client, where a typical server-side app is seen as a trusted client. Why is an SPA seen as untrusted? Because from the publisher side (the one providing the service/app), you do not control the device running the code. So this has a huge effect on the security risks involved and how you should mitigate them.

 

One of those mitigations is “CORS” ;

Cross-origin resource sharing (CORS) is a mechanism that allows restricted resources (e.g. fonts) on a web page to be requested from another domain outside the domain from which the first resource was served.[1] A web page may freely embed cross-origin images, stylesheets, scripts, iframes, and videos.[2] Certain “cross-domain” requests, notably Ajax requests, are forbidden by default by the same-origin security policy. (Source : Wikipedia)

 

With CORS, the request will indicate from which domain the calls would originate (and what actions / headers it would like to do). Therefore, the backend can check if the call is warranted or not…

Continue reading “When your Single Page App needs CORS and meets Azure API Management with a Function Backend”

PowerApps & Functions – Where low/no-code meets serverless… organizations can create apps faster!

Introduction

Like many organization, you’re probably also looking for a more “rapid development” track for a subset of your applications. I’ve heard a lot of reasons for this… Going from rapid prototyping to having small apps that make life a lot easier within the organization (like typical approval flows). For this we’re going to see how we can combine PowerApps & Azure Functions! By using PowerApps we want to take a low/no-code approach to creating the front-end, where Functions (or even Logic Apps as an alternative) will allow us to provide specific back-end data.

Recipe for today

Today we’ll be using the following ingredients as a base for the recipe of the day ;

Here we’ll be building a small powerapp that’ll call an API (OpenAPI Spec) that is hosted as an Azure function. So basically connecting a low/no-code app to a serverless API.

Continue reading “PowerApps & Functions – Where low/no-code meets serverless… organizations can create apps faster!”

Azure Subscription Management – Beyond the 101… aka The Advanced Topics

Introduction

Today’s post will cover three more advanced topics that I’ve seen surfacing on a regular basis ;

  • Transferring a Subscription versus Changing the Directory of a Subscription
  • Moving resources between subscriptions with different AAD (Azure Active Directory tenants
  • Understanding the relationships between components when leveraging an Enterprise Agreement (EA)
  • Various advanced scenarios on how AAD in intertwined between subscriptions & the EA

Transfer vs Change Directory

Apparently there is a bit of confusion between the “Transfer” and the “Change Directory” buttons for a subscription ;

In essence ;

Transfer Subscription = Change the Owner AND Change the Directory

What does that mean?

  • If you want to transfer the billing of a subscription, you do a “Transfer“.
    (Do note: Transferring a subscription will also change the directory to the one linked to the new owner. If this is a different one, then you’ll be linked to a new AAD Tenant.)
  • If you do not want to transfer the billing, and just change the directory, you do a “Change directory“.
    (Do note: Changing a directory will not remove the account owner. And (s)he’ll still have owner rights on it! Also be aware that all rights set linked to the previous tenant will disappear. So you’ll have to reinstate IAM. For which you can easily leverage management groups...)

Continue reading “Azure Subscription Management – Beyond the 101… aka The Advanced Topics”

Replatforming Azure Functions into an Azure Functions Container

Introduction

A while ago I talked about  “Faas/Serverless” in relation to vendor lock-in. Today we’ll be continuing in that road, where we’ll be doing a small proof-of-concept (PoC). In this PoC, we’ll be replatforming existing Azure Functions code into an Azure Functions container!

 

Things to know

Since Azure Functions 2.0 (in preview at the time of writing this post), you are able to leverage containers. Though be aware that there are several known issues. Do check them out first before embarking on your journey!

 

Testdriving 2.0

So first, we’ll start off with testing the Azure Functions Core Tools!  If you’re looking to follow this guide, be sure to have the Azure Functions Core Tools installed, which also depends on .NET Core 2.0 and Nodejs. Once you have those installed, do a “func –help”, and you’ll see what capabilities are at hand…

Continue reading “Replatforming Azure Functions into an Azure Functions Container”