Book 05
DevOps & Cloud
Tools and practices for building, testing, packaging and shipping software to production.
Contents
- 01Ansible1Ansible is an open-source automation tool that configures servers and deploys applications by running YAML playbooks over SSH, with no agent on the machines.
- 02Autoscaling2Autoscaling is the automatic adding or removing of computing resources, such as servers or containers, based on demand to keep performance steady and costs low.
- 03AWSAmazon Web Services3AWS (Amazon Web Services) is Amazon's cloud platform: more than 200 pay-as-you-go services for servers, storage, databases and much more.
- 04AzureMicrosoft Azure4Microsoft Azure is Microsoft's cloud computing platform, offering hundreds of on-demand services such as virtual machines, databases and AI models worldwide.
- 05Blue-Green Deployment5Blue-green deployment is a release strategy that uses two identical production environments and moves all traffic from the old version to the new one at once.
- 06Canary Deployment6A canary deployment releases a new software version to a small share of users first, checks its health, and then gradually rolls it out to everyone.
- 07CDNContent Delivery Network7A CDN is a network of servers spread around the world that stores copies of website content and delivers it to each user from the nearest location.
- 08Chaos Engineering8Chaos engineering is the practice of deliberately injecting failures into a system, such as crashing servers, to confirm that it keeps working as expected.
- 09CI/CDContinuous Integration / Continuous Delivery9CI/CD is a set of automated practices that build, test, and release code changes frequently, so software can be delivered to users quickly and safely.
- 10Cloud Computing10Cloud computing is the on-demand delivery of computing resources, such as servers, storage, and databases, over the internet with pay-as-you-go pricing.
- 11Configuration Management11Configuration management is the practice of defining the desired state of servers and software in code and using tools to apply and keep it automatically.
- 12Container12A container is a lightweight, isolated package that bundles an application with its dependencies and runs it on the host's shared operating system kernel.
- 13Container Registry13A container registry is a storage and distribution service for container images, letting teams push built images and pull them onto any server that runs them.
- 14DevOpsDevelopment and Operations14DevOps is a set of practices and a culture that brings software development and IT operations together to deliver software faster and more reliably.
- 15Distributed Tracing15Distributed tracing is a technique that follows a single request as it travels through many services, recording how long each step took and where it failed.
- 16DNSDomain Name System16DNS is the internet's naming system that translates human-readable domain names like example.com into the numeric IP addresses computers use to connect.
- 17Docker17Docker is an open-source platform for packaging an application and everything it needs into a container that runs the same way on any machine.
- 18Docker Compose18Docker Compose is a tool for defining and running multi-container applications, such as a web server plus a database, from one YAML file with one command.
- 19Edge Computing19Edge computing runs code and processes data close to where users or devices are, instead of in a distant central data center, to reduce latency.
- 20Environment Variable20An environment variable is a named value set outside a program, by the operating system or runtime, that the program reads to configure its behavior.
- 21Feature Flag21A feature flag is a switch in code that turns a feature on or off at runtime, letting teams deploy code without releasing it to every user at once.
- 22GitHub Actions22GitHub Actions is GitHub's built-in automation platform: YAML workflows in a repo run tests, builds and deployments on events like a push or pull request.
- 23GitOps23GitOps is a way of managing infrastructure and deployments where Git holds the desired state of a system and an automated agent keeps the live system in sync.
- 24Google CloudGoogle Cloud Platform24Google Cloud is Google's public cloud platform, offering compute, storage, data and AI services on the global infrastructure behind Google's own products.
- 25Grafana25Grafana is an open-source tool for building dashboards that turn metrics, logs and traces from many data sources into live charts and alerts in one place.
- 26Helm26Helm is the package manager for Kubernetes: it bundles an app's configuration files into a chart you can install, upgrade and roll back with one command.
- 27IaaSInfrastructure as a Service27IaaS (infrastructure as a service) is a cloud model where you rent virtual machines, storage and networks on demand and manage the OS and above yourself.
- 28Immutable Infrastructure28Immutable infrastructure is an approach where servers are never changed after deployment; every update replaces them with new, freshly built ones.
- 29Infrastructure as Code29Infrastructure as code is the practice of defining servers, networks, and other infrastructure in version-controlled files that tools apply automatically.
- 30Jenkins30Jenkins is an open-source automation server that builds, tests and deploys software through pipelines, and one of the oldest and most widely used CI/CD tools.
- 31kubectl31kubectl is the command-line tool for Kubernetes: it sends requests to a cluster's API server to deploy applications, inspect them and change them.
- 32Kubernetes32Kubernetes is an open-source system that automates deploying, scaling, and managing containerized applications across a cluster of machines.
- 33Linux33Linux is an open-source operating system kernel that powers most servers, cloud platforms, containers, and Android phones, usually packaged as a distribution.
- 34Load Balancer34A load balancer is a server or service that spreads incoming traffic across several backend servers so no single one is overloaded and the app stays available.
- 35Logging35Logging is the practice of recording timestamped messages about events in a running program, such as errors and requests, so people can investigate them later.
- 36Metrics36Metrics are numeric measurements of a system collected over time, such as request rate, error rate and CPU usage, used for dashboards, alerts and planning.
- 37Object Storage37Object storage is a way of storing data as whole objects, each with a unique key and metadata, in flat buckets that scale to huge numbers of files over HTTP.
- 38Observability38Observability is the ability to understand what is happening inside a running software system by collecting and analyzing its logs, metrics, and traces.
- 39OpenTelemetry39OpenTelemetry is an open standard and set of tools for collecting traces, metrics and logs from software and sending them to any monitoring backend.
- 40PaaSPlatform as a Service40PaaS (platform as a service) is a cloud model where you deploy your code and the provider runs everything under it: servers, operating systems and scaling.
- 41Pod41A pod is the smallest deployable unit in Kubernetes: one or more containers that share a network address and storage and are scheduled together on one node.
- 42Postmortem42A postmortem is a written review after an incident that explains what happened, why it happened, and what the team will change so it doesn't happen again.
- 43Prometheus43Prometheus is an open-source monitoring system that collects metrics from apps and servers, stores them as time series and alerts when values cross a limit.
- 44Reverse Proxy44A reverse proxy is a server that sits in front of web servers, accepts client requests on their behalf, and forwards each request to the right backend server.
- 45Rollback45A rollback is the process of returning software to a previous, known-good version after a new deployment causes errors, outages, or other unexpected problems.
- 46SaaSSoftware as a Service46SaaS (software as a service) is software delivered over the internet as a subscription; users sign in while the provider runs, updates and secures it.
- 47Serverless47Serverless is a cloud model in which the provider runs your code on demand, manages all the servers, scales automatically, and bills only for actual use.
- 48Service Mesh48A service mesh is an infrastructure layer that manages traffic between microservices, adding encryption, retries, routing, and monitoring without code changes.
- 49Site Reliability Engineering49Site reliability engineering is a discipline that applies software engineering to operations, keeping services reliable with automation and measurable targets.
- 50SLAService Level Agreement50An SLA (service level agreement) is a provider's commitment to customers about the level of service, such as 99.9% uptime, and what happens if it isn't met.
- 51SLOService Level Objective51An SLO is a measurable reliability target for a service, such as 99.9% of requests succeeding over 30 days, that tells a team how reliable is reliable enough.
- 52Terraform52Terraform is an infrastructure-as-code tool: you describe cloud resources in configuration files, and one command creates or updates them to match.
- 53Virtual Machine53A virtual machine is a software-based computer that runs its own operating system on shared physical hardware, isolated from other machines on the same host.
- 54YAMLYAML Ain't Markup Language54YAML is a human-readable data format that uses indentation instead of brackets, widely used for configuration files in DevOps tools and CI/CD pipelines.