4 Multi-Cloud infrastructure
This chapter covers:
- Define and manage the infrastructure required by your applications
- The challenges of managing your own application infrastructure components
- The Kubernetes way to deal with infrastructure (Crossplane)
In the previous chapters, we installed a walking skeleton, we understood how to build each separate component using Service Pipelines and how to deploy them into different environments using Environment pipelines. We are now faced with a big challenge: dealing with infrastructure, meaning creating environments where our applications will run. It is normal and expected that these applications require other components to be there to work correctly, such as Databases, Message Brokers, Identity Management solutions, Email Servers, etc. While there are several tools out there focused on how to automate the installation or provisioning of these components for On-Premises setups and in different cloud providers, in this chapter, we will focus on just one that does it in a Kubernetes way. This chapter is divided into three main sections:
- The challenges of dealing with infrastructure
- How to deal with infrastructure leveraging Kubernetes constructs
- How to provision infrastructure for our walking skeleton using Crossplane.io
After covering these sections we will talk about building platforms on top of Kubernetes, a challenge that sooner or later will come knocking on your door.