DevOps Tools and Practices

· GITHUB: GitHub enables our team to efficiently manage, share, and track changes in our codebase. This platform plays a pivotal role in enhancing our project’s transparency, facilitating seamless collaborations among team members, and ensuring code quality through features such as pull requests, code reviews, and issue tracking. Our project comprises multiple repositories, each specific to the frontend, backend, and other microservices. The technology used for code development is NodeJs, NEXT. We have added a GitHub actions workflow for the code’s CI/CD on the server and in the cluster. We also pushed Dockerfile and other required files for building the code and triggering GitHub actions.

· IAM: AWS Identity and Access Management (IAM) is a web service that helps us securely control access to AWS resources for application users. We use IAM to control who can use AWS resources (authentication) and what resources can be used in which ways (authorisation). Granular access management is also done through this process.

· Amazon Elastic Compute Cloud (EC2): Amazon EC2 will launch as many or as few virtual servers as we need, configure security and networking, and manage storage. We can add or reduce capacity (scale up or scale down) to handle spikes in website traffic or compute-heavy tasks, such as monthly or yearly processes.

· Cloudwatch: Amazon CloudWatch monitors AWS resources and the applications we run on AWS in real time. We use CloudWatch to collect and track metrics and logs for our resources and applications. We also set alerts on the threshold breach.

· AWS S3: AWS S3 is an object (images/files) storage service that offers scalability, data availability, security, and performance. When we upload a file, we can set permissions on the object and any metadata. We can also view access logs for each bucket and its objects, choose the geographical region where AWS S3 will store the bucket and its contents, and control access to it (i.e. who can create, delete, and list objects in the bucket).

· AWS VPC: AWS VPC enables users to create isolated virtual networks within the AWS cloud. It provides control over network settings such as subnets, route tables, security groups, and gateways. This ensures secure and customisable environments for hosting applications and connecting to on-premises data centres.

· Amazon Simple Email Service (SES): Amazon SES is a cloud-based email service provider that can integrate into any application for high-volume email automation. You only pay for what you use, regardless of whether you use email software to send transactional emails, marketing emails, or newsletter emails.

Last updated