A cloud provider centric note, with Microsoft finally releasing managed MySQL and PostgreSQL as well as open sourcing their service fabric, Amazon ECS gaining service discovery, and GCP extending the usefulness of their Cloud Shell.
Azure MySQL and PostgreSQL
One of my main complaints regarding Azure has been the lack of a managed MySQL service. Last year at Microsoft Build they announced both MySQL and PostgreSQL support, but it took almost a year for it to become generally available. The advantages of a managed database service are likely clear to many of you, and Azure has done a good job here by ensuring you get a highly available service that is still flexible and easy to scale. Automated backups are a standard feature for managed MySQL, but similar to how AWS Aurora works it looks like they’ve separated the storage and compute layers of the database so they can be independently scaled1.
In addition, they’re working on a MariaDB solution which is always a welcome addition.
“Service Fabric is a distributed systems platform for packaging, deploying, and managing stateless and stateful distributed applications and containers at large scale.” That’s the description of the GitHub repo that contains the newly open sourced Service Fabric.
From what I understand2, it is an orchestrator that is already in heavy use within Azure itself. That said, I doubt it is intended to compete with something like Kubernetes but is more an attempt to make the underlying layer of Azure itself more open. It’s good to see Microsoft opening up so much of its underlying code and what I find interesting about it is that while they’re in the process of open sourcing the whole stack, it is the Linux components that are available first.
ECS Service Discovery
Service Discovery was released for ECS, although it’s relatively limited at the moment. It uses Route53 to create a private zone that contains A records for each task, but this means that it only works with
awsvpc networked tasks. In case you’re not intimately familiar with the networking types within ECS, the
awsvpc type creates an ENI for every instance of the task and is therefore also the only type available for Fargate.
While I may sound a little negative, this is a useful addition to ECS. For most other cases you will be able to use a load balancer for your service discovery, although you will need to create any Route53 records yourself, that was harder with the
awsvpc tasks. The steps to set it up still take a bit of work though, so I recommend you to read the documentation.
GCP Cloud Shell Improvement
GCP’s Cloud Shell, like Azure’s equivalent, is a handy tool that gives you a dedicated container from which you can run commands against your environment. As anything you install on this container persists across sessions, it gives you a lot of freedom in a secure and authenticated way and can replace bastion instances. Up until now this only worked within a browser, but they’ve added the ability to SSH into the shell and even let you mount the storage on your local machine.
Related content you might like:
- Week 25, 2018 - AKS; Daemons in ECS; Docker Application Designer; Private API Gateways
- Week 18, 2018 - ACI Generally Available; Aqua MicroScanner; Netflix Titus
- Week 7, 2018 - ECS Target Tracking; User Account Best Practices; APN Cloud Warrior
- Week 4, 2018 - Go in AWS Lambda; AWS Auto Scaling; Cloud AutoML
- Week 46, 2017 - AWS's New Hypervisor; AWS PrivateLink, GCP DNSSEC