Category: Azure

Immutable storage for Azure Storage Blobs

If you have storage blobs containing things like backups or files then Azure now has Immutable storage available for Azure Storage Blobs generally available in all public regions.

Immutable means that it is unable to change or be changed and this means that if a customer has let’s say a backup then they can store this unchanged which for some companies is very nice to have.

To take advantage or to test out immutable storage lets go through what we need to do to test it out.

  • First of all, create a storage account.
  • Click on Containers and create a new container, give it a name and choose Private (no anonymous access).
  • Once created click on the name of your new container and then upload some files.
  • Once you have uploaded some files click on Access Policy on the left-hand side, notice we have 2 sections, Stored access policies and Immutable blob storage, under Immutable blob storage, select Add policy.
  • We now have 2 options to choose from
    • Time-based retention
    • Legal hold

Time-based retention allows us to add a number of days value between 1 day and 400 years, this also makes the files immutable.

Note:- You cannot change this value to 0 at any time. Once the interval you add expires – Upon the expiration of the retention interval, the data will continue to be in a non-modifiable state but can be deleted. Retention policy changes may require some time to take effect. 5 edits are permitted to the policy.

Legal hold retention means you add a tag to the blob container – each legal hold policy needs to be associated with 1 or more tags. Tags are used as a name identifier, such as a case ID, to categorize and view records.

You cannot delete or modify any files with the container whilst there is either a Time-based retention policy or a Legal hold policy, however if you delete the legal hold policy you can then delete or modify files with the container.
With Time-based retention, you can allow additionally protected appends and change the retention interval.
Time-based retentions need to be locked in order to be active and to add a lock click on the 3 dots and choose Lock policy.

Note:- Once you apply the lock you cannot delete the lock and just before you click save on applying the lock you will see the following reminder:-

Summary
I can see some people having the need to keep backups and have them immutable for a number of legal reasons and this new feature will be very handy for them.

Don’t forget to subscribe to my YouTube Channel.



Azure Certification Prep

Hi folks, this blog post comes to you as part of the Azure Back to School community event ran by Dwayne Natwick.

Many thanks to Dwayne for allowing me to take part.

You can read more about the event on the official website

I am talking to you today about Azure Certification Prep, let’s not waste any more time and dive right in.

Whether your starting your Azure certification journey or along ways down the road the first thing you need to do is some homework on the exams:-

  • Which exam is the right one for you at this time?
  • Have you read the official exam page from Microsoft?
  • Have you read up on any changes about the exam that may have taken place?

I always suggest people start with the AZ-900 Azure fundamentals exam and this is for everyone, including experienced Azure users. This exam will set you up for the following if you are new to the exams or haven’t done any exams in a while:-

  • Learn to study (learn to take notes and try to remember the content you’ve read)
  • Get you into the habit of reading, trying to recall information, sitting practice tests.
  • There is also the no small feat of booking the actual exam and sitting it, lots of people put this off and dread exams.

Skills Measured
This area is key to your success in the actual exam, the content in this section is in essence what Microsoft will be testing you on, ensure you are comfortable with all of this content before taking the exam. Exams are usually broken down into 4 maybe areas and you’ll see a percentage scoring next to each section. An example of this would be the AZ-900 exam which has the following:-

Describe Cloud Concepts (15-20%)

This means that 15-20% of your exam will be on this subject area, some exams have areas as much as 35-45% so this is the area you want to be very sharp on as lots of questions will be around this area.

Advice
Whilst studying you tend to get a feel for how it is going, I would advise you try some practice tests and try to gauge from them if your ready or not. Book your exam as this will then help concentrate your mind and ensure you study, nothing like an exam deadline coming up to make you want to read the content, learn and pass your exam.

So a this point we have checked out the official exam guide, we know what topics we are going to be tested on, lets assume we are sitting the exams at home, we have to know what to expect when sitting an exam from home.

Sitting an exam in your house

There are some rules which you need to adhere to when taking an exam from your office / home and some of these are as follows: –

  • There is no bit of paper allowed for taking notes so if you need to take notes then there is a way to do this on-screen within the test, get familiar as you may need this.
  • No one is allowed to enter the room at any time during your exam, and you cant leave either.
  • You’re not allowed to read the exam questions out loud, cover your face or leave the webcam perimeter box for any reason, if you do you’re very likely to fail.
  • You have to take photos of your identification and the desk your siting at, behind where you are sitting, to the left, and to the right of where you are sitting.
  • The rules are there for people to read so be sure you know what you can and cannot do otherwise you run the risk of an instant failure which would not be fun.

Advice
Ensure your pc / laptop is charged, arrive 30 minutes early and go through your identification steps as soon as you can as it can be a little unsettling at times and you don’t want to be flustered before the exam begins.

Learning Resources
I always go in search of good learning resources for an exam and I always start off with Microsoft Learn. Here you will find learning paths for your exam and you can go through them at your own pace, make sure not to miss these as they really are excellent.

My favorite Learning Resources

Practice Tests
Whilst studying I always think its a good idea to do some knowledge checks, you may read some content week 1 and forget it week 2, practice tests help reinforce my learning and help me recall things I need to know for each exam. I have used practice tests from several different places and here are some of the people who have good training as well as good practice tests:-

Advice

  • Don’t start studying and then put it off would be my advice, you’re likely to forget some of what you learned.
  • Book the exam 2 weeks out and then this will focus your mind.
  • Read the questions carefully even in the practice tests.
  • No exam question has answers which are wildly wrong, Microsoft don’t do this anymore so you wont be able to rule lets say 2 from 4 answers right away for being wildly wrong with regards to the question.
  • Take the exam once your fairly confident you know what the answers to most of the questions, you wont get them all right but try to wait till your at least some what confident in your knowledge.
  • ALWAYS check the official exam page in case the skills measure area has been updated – exams are updated regularly and you don’t want caught out.

Wrap Up
No one likes sitting exams, but just think of the amount of things you have learned, and don’t be afraid to fail an exam, I have failed 3 and it just made me more determined to pass the next time and learn what I didn’t know the first time around.

If you need advice about anything exam related, please do reach out on twitter.

Don’t forget to subscribe to my YouTube Channel.



GitHub Actions 101

In this blog post series I am going to cover my journey to learning about GitHub Actions.

To get started with learning about GitHub Actions lets start by describing what they are.


So what exactly are GitHub Actions?

“GitHub Actions makes it easy to automate all your software workflows, now with world-class CI/CD. Build, test, and deploy your code right from GitHub. Make code reviews, branch management, and issue triaging work the way you want.”

GitHub Actions help you automate your software development workflows in the same place you store code and collaborate on pull requests and issues. You can write individual tasks, called actions, and combine them to create a custom workflow.

You can write your own actions to use in your workflow or share the actions you build with the GitHub community

Workflows are custom automated processes that you can set up in your repository to build, test, package, release, or deploy any code project on GitHub.


To get started with learning about GitHub Actions lets start off by listing some of the best resources I have come across for getting started.

Don’t forget to checkout my YouTube Channel.



A New Adventure

I’m very excited to share with you the news that I have accepted a position as an Azure Architect at a company in the Netherlands called Intercept.

Intercept has very recently been awarded Microsoft Partner of the Year 2020 in the Netherlands beating off strong competition from 18 other companies.

Intercept are Microsoft Azure Management Elite Partners and Gold Partners in 7 areas at present which is pretty impressive.

I start my new role on September 1st, I will be working in and around Azure daily and that is what I want to be doing, so to say I am excited is an understatement.

During Covid-19 I was furloughed due to a customer not being able to support remote workers and during this time a great number of people from Twitter and LinkedIn reached out to me asking if I would be interested in working with them. I thank each and every one of you as being furloughed was not much fun but to be asked if I would like to work with you and your companies, that was neat, to say the least.

I interviewed at a number of companies and had numerous fantastic offers given to me but ultimately my new role ticked more boxes than the rest and I couldn’t say no.

The job role as well as the people I had spoken to at Intercept were the deciding factors for me.

Again thank you to everyone who reached out to me, you have no idea how much I appreciated it, beers are on me if we manage to meet in person, going forward.

So I look forward to rolling my sleeves up again and changing career direction ever so slightly. I am a renewed Azure MVP and that’s where I want to be working and learning day to day. I cannot wait to get started and helping people even more in the future.

November 2017 I set myself a goal of becoming an Azure Architect and gaining as much knowledge as I could with Azure – the exams have helped and I look forward to using Azure daily.

I remind myself that I am less than 3 years into my journey, I have a blog, YouTube channel, 11 Azure certification badges as below and I all whilst being a development manager of 10+ people and not using Azure daily.

All it takes is hard work, goals, determination and you can do anything.

Don’t forget to subscribe to my YouTube Channel and you can find me on twitter @gregor_suttie.


Tags:


DP-900 Azure Data Fundamentals

Happy to share that I sat the Beta for this exam and passed – here is a link to my study guide https://gregorsuttie.com/2020/06/09/dp-900-microsoft-azure-data-fundamentals-exam-study-guide/

Another exam done, and the data side of Azure is something I would love to explore further if I ever get the chance.

Don’t forget to subscribe to my YouTube Channel.




Think of the next person

I have been lucky enough to work with one manager who was very good at being disciplined and I wanted to share with you some of my learnings and talk about some stuff I have seen of late which really isn’t helpful and how easy they are to remediate.

So what is IT industry discipline, well it’s not something you read much about or will find in books, for example, it’s just something you pick up as you progress in your career and is much easier to pick examples of what not to do and then have a way to make things better.

Making things better should always be at the back of your mind in the IT industry, how can we make things better. I have a developer background so most of what I will talk about will cover some basic stuff yet I still see it on almost every project that I come across.

If you think about the above paragraph of making things better here is a good rule of thumb, imagine the next person who comes along has even less knowledge about whatever the thing is your doing, how can you help make their lives a little bit easier?

Here is a list of some examples

  • Don’t leave server folders lying around like New Folder, New Folder(1) – instead, have a proper naming convention and stick to it (think of the next person coming along).
  • Don’t leave crap lying around with xxx appended to the start or have DELETEME items lying around anywhere – instead source code everything and delete the rest (think of the next person coming along).
  • Don’t leave old deployments lying around instead archive them off, or have a process to delete the last x number of deployments (think of the next person coming along).
  • Don’t have one person having vital knowledge about a system in their head, document it, and share with as many people deemed reasonable – instead document everything, yes everything, there I said it, we all have things we should have documented yet we don’t (think of the next person coming along).
  • Don’t let people leave your company without doing a proper handover – companies have on-boarding processes, where is your off-boarding process? (think of the next person coming along).
  • Don’t move to the Cloud and suddenly we don’t have any diagrams – instead diagram your architecture and keep it up to date, have a process in place to check this diagram is still valid (think of the next person coming along).

The above is much more than technical debt, everyone has technical debt but this is about thinking about the next person.

We can improve, we should improve processes today not tomorrow or next week. Small improvements over time make a big difference.

I am going to be adding to this blog post over time as more things come to me but for now, think of the next person each time you do something on a project or when its related to work – go that little bit extra and before you know it you’ll enjoy working on the project when the processes in place are right.

Don’t forget to subscribe to my YouTube Channel.




Changing Azure VM’s Default Locale

I had a task at work where I was asked if I could ensure that all new Azure Virtual Machines created had the default of being set up for English (United Kingdom) rather than English (United States), not an unreasonable request by any stretch, so last week I had a look into doing just that.

The customer project I am working on uses Virtual Machines for people to do their work and the new Virtual Machines are deployed using Octopus Deploy with some ARM templates and PowerShell – all good so far.

My initial thought was I wonder why you can’t have this as an option to choose when installing a new Virtual Machine from the portal, turns out its unlikely because in fact there are a number of settings you need to change in order for the new Virtual Machine to truly be set up for English (United Kingdom) rather than English (United States).

I started off by looking at running some PowerShell into a custom extension and running that when the Virtual Machine starts, after a lot of fiddling around and trying things it does work.

The PowerShell I was using looked something like this:-

Set-WinSystemLocale en-GB
Set-WinUserLanguageList -LanguageList en-GB -Force
Set-Culture -CultureInfo en-GB
Set-WinHomeLocation -GeoId 242
Set-TimeZone "GMT Standard Time"

# restart virtual machine to apply regional settings to current user. You could also do a logoff and login.
Start-sleep -Seconds 40
Restart-Computer

Note that the above PowerShell works, the only caveat to this is that once the Virtual Machine is available to connect to you can check the system local from

Control Panel > Clock and Region > Region > Administrative Tab >

Above, we can see that the Virtual Machine still defaults to English (United States) but with a reboot that will change to English (United Kingdom).

We want this to be the case for all users who might log onto the Virtual Machine, we could use PowerShell DSC (desired state config) to do this or a number of other ways.

When I reached out to twitter for some help and guidance on this I had a number of replies but this one was the solution I went for https://twitter.com/stuartpreston/status/1284096930981847045

Stuart was very kind to even create a GitHub repo to tackle this issue and you can find his solution to the problem there, he adds a custom script variable, passes in the commands to run and a timezone variable and “it’s basically using a combination of stuffing your script into customdata and having additionalUnattendContent run that script in a first logon.

To wrap this up it works: –

  • using PowerShell
  • using a custom extension with a PowerShell script
  • or by adding content to an Arm Template that runs a script upon user logon


QuickStart: How to get started with Azure Maps

A while back I took part in a really cool hackathon at the Microsoft offices in Edinburgh and part of it was displaying data on an Azure Map. Now we found the docs a little less than straightforward so I put together a quick blog post and a GitHub repo

Log into Azure and create an Azure Maps Account, once you have done this gran the authentication key from the Authentication area and then grab the primary key, and then I pasted this into the html file.

I used this in the Azure Advent Calendar Maps page just zoom in to see more people.

Anyways Azure Maps has a tonne of functionality which you can read about a bit more.

Don’t forget to checkout my YouTube channel.

Enjoy!



DP-900 Microsoft Azure Data Fundamentals exam Study Guide

Describe core data concepts (15-20%)

Describe types of core data workloads




Azure CLI – Interactive Mode

If you are using the Azure Portal to do some tasks it may be time to take a look at using the Azure CLI (Command Line Interface) as this can be a good way to learn to start automating some tasks. Handily the Azure CLI has an interactive mode.

You can use Azure CLI in interactive mode by running the az interactive command. This mode places you in an interactive shell with auto-completion, command descriptions, and examples

Read the blog post and then checkout my video tutorial at the bottom of the article.

You can read more on the Azure CLI interactive mode docs.

Screen shot of the AZ CLI

If like me you like to automate tasks (for numerous reasons) then the Azure CLI can be harassed to script out repetitive tasks into lets say a deployment script.

Imagine the scenario where I need to work with Virtual Machines and I want to learn the Azure CLI commands for listing the VM’s I have and then go ahead and create a brand new VM. Lets take a look at how to do that below: –

Create a Resource Group using the Azure CLI
az group create –name myDemoRG –location westeurope

Create a Resource Group using AZ CLI interactive mode
az >> group create –name myDemoRG –location westeurope

The difference here is something called scoping and you can learn about scoping. It’s the same command we type but we don’t need the az at the start as we are currently scoped at the top level.

If you have read about scoping in the above link lets now take a look at working with virtual machines.

Create a Virtual Machine using the Azure CLI
az vm create –resource-group myDemoRG –name myDemoVM –image win2019datacenter –admin-username gsuttie

Create a Virtual Machine using AZ CLI interactive mode
az vm>> create –name myDemoVM –resource-group myDemoRG –image win2019datacenter –admin-username gsuttie

The difference here is something called scoping and you can learn about scoping. It’s the same command but this time in the Azure CLI interactive mode we are scoped to working with Virtual Machines, this is accomplished by typing %%vm and means we can create, list, delete VM’s whilst scoped to using Virtual Machines.

Summary
If your not familiar with using the Azure CLI then take a look at trying out the Interactive mode which will give you defaults and examples.

Lear more :-