How does your team is working with cloud infrastructure?
Cloud Native Topics
- Development process
- System design
- Builds and packages
- Deployments
- Release
- Cloud infrastructure
Development process
When working with cloud systems the proven methods to develop and run applications in production is DevOps
DevOps is the practice of code > build > test > deploy > release > repeat
DevOps is about bridging the gap between development to production
System design
You can use different methods of designing applications but if your applications are stored in the cloud then Microservices might be better to implement, otherwise why use on-premise approach when you can enable the benefits of using cloud infrastructure?
Builds CI and packages
Containers by now are the default approach to build applications as its comfortable to ship and deploy
Its easy to start local development environment using containers and work on your application
CI is an integral part as this will initiate your committed code to get build and get deployed
Deployments
Deployments to production is easier when the application is packaged as a container image
This is the next step after builds as this is the confirmation that the tests are ok and the container image with the latest code already pushed to the image repository and ready for deployment to production
Release
This is the step after the deployment is successful and the new image is used in production
Now the choice is when to enable new features using feature-toggle
Once the new features are enabled the release step is complete
Cloud Infrastructure
To manage the containers and successfully implement Microservices you’ll need Kubernetes cluster to orchestrate the containers runtime
Other services like sending email, databases, load balancers and more, can be integrated with your Kubernetes cluster to be used for the entire stack
Summary
Cloud Native is proven to have better results and happy developers
but Hey! you can always start a long running VM and install some stuff on it