Posts Tagged: devops
Learn how to implement DevOps practices, tools, and methodologies to improve collaboration, automation, and continuous delivery in your organization.
Posts In 2023
Observed No. 12 - Removing Pre-Commit Dependencies With Docker (Article)
Published by Stuart Blackler on: 2023-05-01. Tagged:devops
Welcome to the 12th edition of Observed! The newsletter delivers a tip you can implement across many categories like AWS, Terraform and General DevOps practices in your infrastructure. This week’s edition looks how we can use Precommit with existing docker images.
Observed No. 11 - Saving Costs on AWS (Article)
Published by Stuart Blackler on: 2023-04-24. Tagged:devopsaws
Welcome to the 11th edition of Observed! The newsletter delivers a tip you can implement across many categories like AWS, Terraform and General DevOps practices in your infrastructure. This week’s edition looks at AWS Cost Savings.
Every company seems to be cutting costs in one way or another. Let’s look at different ways you can visualize and reduce costs.
Observed No. 10 - Chaos Engineering on AWS (Article)
Published by Stuart Blackler on: 2023-03-20. Tagged:devopsaws
Welcome to the 10th edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at the practice of Chaos Engineering.
Observed No. 9 - SLIs vs SLOs vs SLAs (Article)
Published by Stuart Blackler on: 2023-03-13. Tagged:devops
Welcome to the 9th edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition examines the differences between SLIs, SLOs and SLAs.
Observed No. 8 - Continuous Integration vs Continuous Delivery vs Continuous Deployment (Article)
Published by Stuart Blackler on: 2023-03-06. Tagged:devops
Welcome to the 8th edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at the differences between continuous integration, continuous delivery and continuous deployment.
Observed No. 7 - Well Architected (Article)
Published by Stuart Blackler on: 2023-02-27. Tagged:devopsaws
Welcome to the seventh edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at the Well-Architected framework.
Unlocking the Best of AWS Route 53 (Video)
Published by Stuart Blackler on: 2023-02-26. Tagged:devopsaws
In this video, I will show you the power of wildcards, health checks, and, my favourite, a Netflix-style multi-region DNS setup for scenarios on AWS Route 53. You’ll learn about the many capabilities of this service and how to use it to your advantage. Each section is accompanied by Terraform code. This video was originally was posted under DevOpsWithStu, but since then I have merged the channels together.
How to Use AWS IAM Identity Centre With Terraform (Video)
Published by Stuart Blackler on: 2023-02-26. Tagged:devopsaws
This video will look at how to log in with AWS IAM Identity Centre and what to do when Terraform doesn’t work out of the box! Learn some of the inner mechanics behind AWS SSO Login. This video was originally was posted under DevOpsWithStu, but since then I have merged the channels together.
Create Terraform Modules Like a Pro (Video)
Published by Stuart Blackler on: 2023-02-26. Tagged:devops
In this video, we’ll look at a technique you can use to upgrade your Terraform modules. Over the course of the last 4/5 years, I’ve noticed that there is always a trend within companies to build modules for specific things/use cases. Rarely do I see these teams account for the one thing they need to operate the infrastructure they make. This video was originally was posted under DevOpsWithStu, but since then I have merged the channels together.
Observed No. 6 - Service Meshes (Article)
Published by Stuart Blackler on: 2023-02-20. Tagged:devops
Welcome to the sixth edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at service meshes. What is a service mesh? A service mesh is dedicated infrastructure for managing service-to-service communication within a microservices architecture. It provides a way to manage the complex network of microservices by adding a layer of abstraction between the services and the underlying network. Observed No. 5 - MACH Architectures (Article)
Published by Stuart Blackler on: 2023-01-30. Tagged:devops
Welcome to the fifth edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at MACH architectures.
Observed No. 4 - Emerging Pattern: Centralised Ingress (Article)
Published by Stuart Blackler on: 2023-01-23. Tagged:devopsaws
Welcome to the fourth edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at a common pattern emerging across the industry: Centralised Ingress.
Observed No. 3 - Understanding Split Horizon DNS: How It Works and How to Implement It in AWS (Article)
Published by Stuart Blackler on: 2023-01-16. Tagged:devopsaws
Welcome to the third edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at Split Horizon DNS.
Observed No. 2 - Upgrade Your Terraform Modules (Article)
Published by Stuart Blackler on: 2023-01-09. Tagged:devops
Welcome to the second edition of Observed! Your weekly newsletter, where I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at a technique you can use to upgrade your Terraform modules.
Observed No. 1 - VPC Endpoint Policies (Article)
Published by Stuart Blackler on: 2023-01-02. Tagged:devopsaws
Welcome to the very first edition of Observed! Each week I bring you a tip you can implement in your infrastructure across many categories like AWS, Terraform and General DevOps practices. This week’s edition looks at VPC endpoint policies in AWS. What Are VPC Endpoints? VPC endpoints are network interfaces you can create in your VPC to enable communication between your VPC and other AWS services without using an Internet gateway, VPN, or VPC peering.
Posts In 2022
Live: Serverless SaaS (Video)
Published by Stuart Blackler on: 2022-09-01. Tagged:devopsaws
In this session, I’m going to build out a design for a serverless SaaS solution on AWS. This takes into account things like budgetting and technology choices. The aim will be to to deploy a regionally independent solution.
Live AWS System Design: Payments Gateway (Video)
Published by Stuart Blackler on: 2022-08-18. Tagged:devopsaws
In this session, we are going to design a typically Payments Gateway that you would be expected to design as part of the hiring process for a FinTech. We will about some of the considerations to take into account when facing this question in a systems design interview.
Live: AWS Multi-Account Structure Design (Video)
Published by Stuart Blackler on: 2022-08-11. Tagged:devopsaws
In this session, we are going to design an AWS Multi-Account structure and the networking behind it. We will learn how to connect different accounts together and some of the considerations to take into account when facing this question in a systems design interview.
Live: Systems Design - Stock Tick API (Video)
Published by Stuart Blackler on: 2022-08-04. Tagged:devopsaws
In this session, we are going to design a fairly typical stock trading API. We are going to go through some of the considerations that you need to have as well as looking at some of the curve balls that you may face. This will help you design distributed systems and data intensive applications using an event driven architecture.
How to Set Up OpenTelemetry Collector on Kubernetes (Video)
Published by Stuart Blackler on: 2022-07-26. Tagged:devopsopentelemetry
OpenTelemetry loves Kubernetes, which is clear to see from the OpenTelemetry Operator for Kubernetes. In this video, you will learn:
- How to install the OpenTelemetry Operator
- How to automatically inject a sidecar into a pod
- How to create a new collector configuration
- How to add automatic instrumentation for supported languages
Running an OpenTelemetry Collector Locally With Docker (Video)
Published by Stuart Blackler on: 2022-07-19. Tagged:devopsdotnetopentelemetry
Recently we’ve looked into adding logs, metrics & traces using console exporters. In reality, we want to send this telemetry to one or more places. Collectors allow your service to offload data quickly, standardise access to protected exporter endpoints and can take care of additional handling like retries and batching.
In this video, you will learn:
- The difference between the standard collector and the contributors collector
- How to run an OpenTelemetry Collector using docker compose
- How to configure an OpenTelemetry Collector
Push Code to a Different Repo With Github Actions #Shorts (Video)
Published by Stuart Blackler on: 2022-07-03. Tagged:devops
This Github Actions tutorial will show you how to commit files to a different Github repository inside a Github Workflow. Source code available to all of my sponsors on the link below.
Github Issue Templates: A Look at the New Issue Templates (Video)
Published by Stuart Blackler on: 2022-06-28. Tagged:devops
In this video - we take a look at how I’ve setup my personal project to use the new issue templates which are currently in beta at the time of recording (2022-06-21).
Publish Release Assets With the Github CLI #Shorts (Video)
Published by Stuart Blackler on: 2022-06-24. Tagged:devops
Learn how to publish an artifact to a Github Release quickly and easily using the Github CLI on Github Actions. Source code available to all of my sponsors.
Creating a Private Helm Repository Using Github Pages Enterprise (Article)
Published by Stuart Blackler on: 2022-01-15. Tagged:devops
In this article, we’re going to take a look at how to create a private Helm repository with Github Pages. This guide requires you to have a Github Enterprise license as private Github Pages are only available to enterprise customers. I’m showing this approach for the scenarios where setting up something like ChartMuseum isn’t possible or unwanted. Although this guide uses helm as the example, you can extend this to host anything under a privately authenticated Github page.
Posts In 2021
My 3 Commonly Used Github Actions and Their Benefits (Video)
Published by Stuart Blackler on: 2021-05-10. Tagged:devops
In this Github Actions Tutorial, we take a look at three Github Action Workflows that I use on a regular basis for different projects that I work on, including:
- Validation of commit messages (follow on from my previous Githooks video)
- Ensuring that a file is edited inside of a PR, and
- Updating all of my NuGet packages inside of 1 PR (rather than dependabots’ 20)
You can use the principals of the workflows shown and customise to your specific use cases to speed up your workflows.
Use Git Hooks to Automate Your Workflow (Video)
Published by Stuart Blackler on: 2021-03-26. Tagged:devops
Git is a powerful version control system, but often we need to ensure certain patterns and practises are followed. Some of these workflows can be automated with Git Hooks. In this video, we will focus on client side git hooks and I’ll show you how to write a quick commit message validation hook.
Using Certificates From AWS Private Certificate Authority in .NET (Article)
Published by Stuart Blackler on: 2021-01-17. Tagged:dotnetdevopsaws
As more and more companies get hacked, there is a strong resurgence in the community for the desire to have TLS for everything, everywhere. There are many valuable projects, tools and resources, such as LetsEncrypt available to help both individuals & companies secure their resources. One of those tools is AWS Private Certificate Authority.
Posts In 2020
Publish Metrics to Cloudwatch in .NET Core (Article)
Published by Stuart Blackler on: 2020-12-13. Tagged:dotnetdevopsaws
In a previous post I took a look at how we can utilize .NET event counters to record metrics in our applications. However, I never covered the implementation of how I write the metrics to either CloudWatch or DataDog. In this article, I’m going to take a look at how to publish metrics to CloudWatch and one way of integrating it with the aforementioned blog series.
Building a Zero Trust Architecture in AWS (Article)
Published by Stuart Blackler on: 2020-12-05. Tagged:dotnetdevopsaws
In the vast majority of companies that I’ve been in, software engineering & infrastructure best practises have often been left as something that needs to be updated later because building the product comes first. This is completely understandable as if you don’t have a product, you don’t have employment. This presents problems later when companies are beginning to scale rapidly and become popular. Not only does the company becomes a target for malicious actors, but security-related incidents can easily occur by leaving storage devices open accidentally. Once a malicious actor is in your system, you usually have pretty big problems unless you design your architectures with Zero Trust in mind.
A Look Into CloudEvents (Article)
Published by Stuart Blackler on: 2020-11-21. Tagged:dotnetdevops
Over the past few months, I’ve been looking into the internal architecture setup for Checkout.com and seeing how we can scale it for the next few years. As part of that research, I’ve been looking into the CloudEvents specification as a potential option as the basis for a common event schema across teams.
Setting Up a Repository Template in Github for K6 (Article)
Published by Stuart Blackler on: 2020-10-11. Tagged:dotnetdevops
In my previous article, we took a look at setting up a template repository for our .Net projects. Repository templates can massively help with the consistency and startup speed of a new project. In this article, we will take a look at a different repository template that I’ve been using for work for running our performance tests.
Setting Up a Repository Template in Github for .Net (Article)
Published by Stuart Blackler on: 2020-10-10. Tagged:dotnetdevops
Over the past few weeks, I’ve been updating some of my projects to latest standards, adding in Github Actions where appropriate etc. Most recently I’ve setup a template repository in Github.
My Favourite Git Aliases (Article)
Published by Stuart Blackler on: 2020-07-11. Tagged:dotnetdevopsgit
Git aliases are used to create new git commands that can either invoke a function, or be used to create commands that map to longer commands. For example, we could map
git co
togit checkout
or havegit undo
undo our previous commit. In this article, I’m going to show you some of my favourite git aliases.
Posts In 2018
Quick Tip: Accessing a Azure DevOps Secret From Within a Scripted Step (Article)
Published by Stuart Blackler on: 2018-12-26. Tagged:devopsazure
In today’s quick tip, we are going to see how we can access a secret that we’ve defined in a variable group as part of a Azure DevOps yml based build.
Building a Custom Build Agent Image With Docker and Azure DevOps Pipelines (Article)
Published by Stuart Blackler on: 2018-12-24. Tagged:devopsazure
In this article, we will learn how to use a custom dockerfile as the bases for a customised Azure DevOps build agent. There are many reasons why you might want to do this, including running custom tooling that takes a while to setup or tooling that isn’t supported yet.
Building Service Fabric Apps With VSTS YML Build Definitions (Article)
Published by Stuart Blackler on: 2018-06-30. Tagged:dotnetdevops
In my previous article, we setup a standarised build using the new YML build definitions within VSTS, using the .Net CLI tooling. In this article, we will use the same setup as our base, but we will build and publish a service fabric application.
Automated Builds in VSTS With YML Build Definitions (Article)
Published by Stuart Blackler on: 2018-06-17. Tagged:dotnetdevopsaspnetcore
In this article we will explore a preview feature inside of Visual Studio Team Services (VSTS) called YML Build Definitions. In essence, this allows you to change your build process from a
.yml
file in your git repository much in the same way as you can do with other services such as AppVeyor. During the article, we will setup a build definition for an Aspnet Core website.
Posts In 2017
Ensuring Samesite Cookies With URL Rewrite (Article)
Published by Stuart Blackler on: 2017-06-11. Tagged:dotnetdevopsseo
In this article, we will increase our websites level of protecting against Cross-Site Request Forgery and Cross-Site Script Inclusion attacks by appending an additional modifier to the
Set-Cookie
HTTP header.Ensuring Secure Cookies With URL Rewrite (Article)
Published by Stuart Blackler on: 2017-06-11. Tagged:dotnetdevopsseo
In this article, we will take a look at secure cookies, that is by appending an additional modifier to the
Set-Cookie
HTTP header.Ensuring HttpOnly Cookies With URL Rewrite (Article)
Published by Stuart Blackler on: 2017-06-06. Tagged:dotnetdevopsseo
In this article, I will give a brief overview of cookies, why we want them to be httpOnly and how we can ensure this via URL Rewrite. We will also be creating our first outbound rewrite rule with a pre-condition.
Removing Trailing Slashes With URL Rewrite (Article)
Published by Stuart Blackler on: 2017-06-05. Tagged:dotnetdevopsseo
In the previous post, I explained why canonical urls are important and how to enforce them . In this article, I will show you how to have a canonical host url.
Canonical Host Urls With URL Rewrite (Article)
Published by Stuart Blackler on: 2017-06-04. Tagged:dotnetdevopsseo
In the previous post, I gave a brief intoduction to URL Rewriting and showed you how to get from HTTP to HTTPS. In this article, I will show you how to have a canonical host url.
Up and Running With URL Rewrite - Going From HTTP to HTTPS (Article)
Published by Stuart Blackler on: 2017-06-03. Tagged:dotnetdevopsseo
In this series, I am going to take you through a few
web.config
snippets that have come in handy for me when using URL Rewrite on IIS. Firstly, I am going to introduce the URL Rewrite module then show a sample of going from HTTP to HTTPS.
Posts In 2015
Up and Running With Git and Powershell (Article)
Published by Stuart Blackler on: 2015-02-23. Tagged:dotnetdevopsgit
We’ve all experienced a time where we use our pc’s for a prolonged period of time, accumulating a ton of crap along the way as we try out various technologies and fads. After a while, the pc begins to do funny things like crash for no apparent reason. This week, I needed to rebuild my dev machine and decided to change from Atlassian’s Source Tree over to Powershell and raw git.
3 Easy Steps to Configuring Azure With Powershell (Article)
Published by Stuart Blackler on: 2015-02-17. Tagged:dotnetdevopsazure
Recently, I had to automate some tasks in Azure. This is the easiest way I could get started.
DevOps (Article)
Published by Stuart Blackler on: 2015-01-24. Tagged:dotnetdevopsdevelopment
As part of my role as a .Net Developer, I have recently been getting to grips with the build and deployment features of both Teamcity and Octopus Deploy. This has been making me think about the industry buzz word “DevOps” and exactly what that means.