This guide demonstrates the key features and capabilities of the CNOE GCP Reference Implementation through practical examples focused on GCP services and infrastructure.
- All changes through Git
- Declarative configuration
- Automated reconciliation
- Workload Identity for GCP authentication
- Secret management with External Secrets
- TLS everywhere with cert-manager
- Configuration stored securely in GCP Secret Manager
- Self-service via Backstage templates
- Integrated tooling in single interface
- Documentation as code
- Infrastructure as Code
- Automated DNS and certificate management
- Comprehensive monitoring
- Centralized configuration management
- Prerequisites
- Getting Started: Explore the Platform
- Argo Workflows
- Demo Scenarios
- Reading Material
- Feedback and Contributions
- Complete installation following the instructions in the README.md file
- All prerequisite GCP resources (GKE cluster, Cloud DNS zone, Secret Manager) are properly configured
- Access to Backstage UI at your configured domain
- Default user (
user1) credentials from Keycloak
After you installed the platform, before performing any operations/scenarios we recommend you first explore the platform.
This section will provide you with instructions on you can access the UI for each component for you to explore.
To begin the task get:urls command can be used to fetch all the URLs.
An ingress has not been deployed for Crossplane, but there is a UI for it.
If you wish to access the Crossplane UI, you can first run:
kubectl port-forward service/webui -n crossplane-system 8080:80Then access the Crossplane UI at localhost:8080.
See the Crossplane Documentation for more information.
To start exploring Keycloak, open the URL for your Keycloak instance in a web browser and login with the credentials for cnoe-admin:
# Get Keycloak admin password
kubectl -n keycloak get secret keycloak-config -o yaml | yq '.data.KEYCLOAK_ADMIN_PASSWORD | @base64d'See Keycloak's Server Administration Guide for more information
SSO is enabled with all other services being integrated with Keycloak. Fetch the credentials for user1 with the following command:
# Get user password
kubectl -n keycloak get secret keycloak-config -o yaml | yq '.data.USER1_PASSWORD | @base64d'To start exploring ArgoCD, open the URL for your ArgoCD instance in a web browser and login with the Keycloak credentials for user1.
See the ArgoCD User Guide for more information.
To start exploring Argo Workflow, open the URL for your Argo Workflow instance in a web browser and login with the Keycloak credentials for user1.
See Argo Workflows Documents for more information and workflow examples can be in the argoproj/argo-workflows repository.
To start exploring Backstage, open the URL for your Backstage instance in a web browser and login with the Keycloak credentials for user1.
Once logged in, explore the Backstage UI.
Note: at the time of writing, all available templates are for AWS and therefore may not work if you attempt to create a component using them
See the Backstage Documentation for more information
@TODO creating templates for GCP is still to be completed [link to issue to be attached]
Previously linked reading material and more:
- Backstage Documentation
- ArgoCD User Guide
- Argo Workflows Examples
- Crossplane Documentation
- CNOE Project
- GCP Workload Identity
Found an issue or have suggestions?
- Open an issue in the repository
- Submit a pull request with improvements
- Join the CNOE community discussions