-
Notifications
You must be signed in to change notification settings - Fork 26
Glossary
Autopilot: This is a managed mode of operation for Google Kubernetes Engine (GKE) where Google handles most of the cluster management and configuration, including: Node provisioning and scaling; Security patching and updates; Networking and monitoring: and, Cost optimization
Cloud Shell: A web-based terminal environment that allows you to: Access and manage GCP resources; Develop and test code; and, Learn and explore GCP. Key features include: a pre-configured environment; integrated authentication; a persistent home directory: and, it is free and accessible. Think of Cloud Shell as a convenient and portable way to interact with your GCP environment, especially useful for quick tasks, learning, and initial setup. It promotes agility and simplifies development and management of your cloud infrastructure.
Declarative configuration: A powerful approach to managing infrastructure, applications, and other cloud resources. It emphasizes what you want rather than how to get it. If focuses on outcomes, not procedures. It simplifies operations, reduces errors, and promotes efficient and collaborative cloud practices.
Config Connector (KCC): An open-source Kubernetes add-on that allows you to manage Google Cloud Platform (GCP) resources directly through the Kubernetes API. This means you can: Declare your desired GCP resource configurations; Automate resource provisioning and updates; Leverage Kubernetes tools and workflows; and, Maintain consistency and visibility. Think of Config Connector as a bridge between your Kubernetes cluster and your GCP environment. It allows you to manage your entire infrastructure with familiar Kubernetes tools and workflows, simplifying cloud operations and promoting infrastructure as code (IaC) principles.
Config Controller: Config Controller creates and manages Google Cloud resources with a declarative, Kubernetes model. Config Controller is a hosted version of Config Connector that simplifies installation and maintenance. Config Controller also includes Policy Controller and Config Sync.
Config Sync: Config Sync as part of your GKE cluster acts as the Continuous Integration system against your GIT repository. It helps to keep your infrastructure deployed through config controller in sync with your declarative code.
GitOps: An operational framework that integrates Git version control with infrastructure and application deployment, enabling declarative, auditable, and automated management of cloud-native systems. It leverages the following key principles: Declarative Configuration (eg. uses manifest files like YAML); Single Source of Truth (eg. source is git); CI/CD Pipeline (eg. its automated); and, Automated Reconciliation (eg. operators can easily ensure the system converges to desired state).
Guardrails: The GC Cloud Guardrails project will host the minimum guardrails as part of the GC Cloud Operationalization Framework. The purpose of the guardrails is to ensure that departments and agencies are implementing a preliminary baseline set of controls within their cloud-based environments.
Infrastructure as code (IaC): refers to the practice of managing and provisioning infrastructure resources using code instead of manual configuration. This code defines infrastructure components like virtual machines, storage buckets, and network configurations in a declarative way, allowing for: Automation, Version Control, Repeatability, and Scalability. Think of IaC like a blueprint for your cloud infrastructure, allowing you to build and manage it in a controlled, versioned, and scalable manner.
Kubernetes (k8s): A powerful open-source system used for managing containerized applications across multiple hosts. In the context of this repo, the "PubSec Declarative Toolkit", Kubernetes is used with Kubernetes Config Connector and Config Controller to deploy a Landing Zone.
Landing Zone: A landing zone is a modular and scalable configuration that enables organizations to adopt Google Cloud for their business needs. A landing zone is often a prerequisite to deploying enterprise workloads in a cloud environment.
Service: In the context of this repository, we define a service as a reusable or repeatable package that is more fine grained than a complete packaged solution. For example: a Bastion Host is considered a service. Services are packages that can be pulled into your solution as a sub-package, this sub-package method allows for separation of updating the core solution and the services.
Solutions: In the context of this repository, a solution is made up of a collection of cloud resources that once created are fully configured and running. Solutions may contain templated services.