Jenkins automation server
Deployment stage: Deployment/release stage should be performed quickly and has minimum downtime and human interaction. AWS provides us a set of flexible services to realize DevOps best practices such as Infrastructure as Code (IaC), Continuous Integration (CI) and Continuous Deployment - Delivery (CD). Depending on tasks, we can use other tools (e.g. Jenkins to support our complex scenarios. To minimize downtime, we also should to be familiar with different deployment strategies, such as rolling updates, blue-green and canary release.
Production-Grade Container Scheduling and Management
Plan stage: In this stage, we often collect and evaluate requirements, then select appropriate AWS services. It requires basic knowledge and experience on many AWS services across domains from network, computation, storage, management, security to developer tools. If the target is a production environment, PaaS should be preferred over IaaS, such as Aurora over MySQL installed on EC2. However, do not limit yourself and avoid vendor lock-in, sometimes combination with other SaaS (e.g., Slack or open source solution (e.g., Kubernetes can create great solutions.
Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.
A Java wrapper to run Spring, Jersey, Spark, and other apps inside AWS Lambda.
Design stage: In this stage, we often configure services and decide how they communicate together. Multi-tier, serverless and micro-services are very common architectures which an architect should be familiar with. There are three common types of design task: new solutions, existing solutions improvement and migration. The first one, design for new solutions, we start from zero, but we may enjoy flexibility in decisions. We should determine requirements from multiple views including security & control, scalability & availability & reliability, and performance & cost. The second one, continuous improvement for existing solutions, we often troubleshoot and determine improvement strategy based on Well-Architected Framework. The last one, migration plan, we may start with a legacy application on-premises, and such tasks are sometime not easy due to a lot of unmaintained resources. We need to measure current workloads, select migration tools & services, and implement 6R’s strategies (rehosting, replatforming, refactoring / re-architecting, retire and retain)
A Beginner's Guide to Understanding DevOps
4 projects | dev.to | 26 Feb 2023
How to Develop and Test an Automated CI/CD Workflow with Cassandra
3 projects | dev.to | 21 Jun 2022
Hasura: Building Scalable and Real-Time Applications - An Extensive Guide
2 projects | dev.to | 3 Mar 2023
How we build and deploy updated packages with Lerna and Jenkins + K8s deployments
5 projects | dev.to | 15 Jul 2022
Securing Kubernetes Deployments
4 projects | dev.to | 8 Nov 2021