# GSP --- ## What is GSP * A Kubernetes distribution designed to evolve with the common needs of GDS programmes running digital services. * A preconfigured suite of components making it easy to adopt best practices of continuous delivery, obserability, availability, security. --- ## This Quarter missions... * Supporting Verify Eidas * Reducing the amount of stuff we manage * Developing GSP Local * Improving our release process * Planning for GSP in a post "gsp team" world --- ## "manage less" Migration to EKS-based control-plane * Much less terraform to maintain! * Control-plane upgrades! * Node upgrades from AWS provided AMIs! --- ## "manage less" Migration to single cluster per-programme * Significantly less complex; no sharing of config between clusters * Significantly more user friendly; single grafana for a programme, single authentication setup etc --- ## "manage less" Use concourse for more * Dropped our custom fork of Flux (signature checking) * Improved visibility of deployment rollout to teams * Simplified access to concourse (gsp namespace == concourse team) --- ## "manage less" Switched from cert-manager to ACM * No need to run cert-manager (let's encrypt component) * Arrg `Ctl+Z` `Ctl+Z` DCS will need mutual TLS support!!! --- ## GSP Local Alpha * Deploy the full GSP stack to a locally provisioned kubernetes cluster so that people can develop applications/deployment configs without needing a "real" cluster * Learn more about what users need from their local environments --- ## GSP Local Alpha * Modified GSP so that we can disable AWS specific bits * Did some DNS hackery so that you can simulate ingress * Created a startup script to provision a local cluster * Exposed an insecure Sandbox HSM for wiring up to local --- ## GSP Local Alpha ...with Kubernetes in Docker (Kind): * Fast provisioning, stable * Problems running concourse (docker in garden in docker in docker in VM on OS X) * Maybe revisit later? --- ## GSP Local Alpha ...with minikube (OS X hyperkit): * Pretty fast, stable * Fights with the Cisco AnyConnect client * But everything works! * Tested with user research --- ## Release pipeline The Canary Test: * Is the docker registry working... canary ok? * Is the notary/clair working... canary ok? * Is the concourse working... canary ok? * Is the ingress routing working... canary ok? * Is the alert routing working... canary ok? * Is the prometheus working... canary ok? --- ## Release pipeline * Log shipping Tests: * Are pod logs getting shipped to cloudwatch for storage? * Conformance Tests: * Is the kubernetes platform acting as it should? * Nearly there: New pipeline to produce releases before rolling out to other clusters. --- ## Release pipeline Closed up holes in our "two-eyes" process (stop pushing various things to docker hub by hand!) --- ## Supporting Verify Eidas Migrating deployments to new EKS-based GSP * 3x clusters -> 1x cluster * Improved build, release, deploy pipelines --- ## Supporting Verify Eidas Restricting access * Decentralize cluster config repos gsp-teams -> verify-cluster-config * admin/sre/dev roles now configured via git (two-eyes) * removing aws admin access --- ## Supporting Verify Eidas Lock. It. Down. * Migrated our routing system from Nginx to Istio * Restricting data exfiltration paths * Mutual TLS / authentication --- ## Supporting Verify Eidas Protective monitoring (around HSM) * Logs, lambdas, lambdas and logs * Fighting VPC flow logs --- ## Supporting Verify Eidas Architecture / Consulting / Support * Helping refactoring applications/pki to conform to eidas spec * Helping with architecture of "multi-country" node --- ## Supporting Verify Eidas automating cloudhsm pki/metadata * Automate PKI using non-extractable keys in HSM * Certificate generation * Signed SAML metadata XML --- ## Supporting Verify Eidas * Connected to Netherlands! --- ## GSP CE v1.0.0 "community edition" ### If there won't be a team, who builds the platform? You do. We built a great base to build upon, it's now up to all of us to keep it evolving. --- ### Firebreak... Looking for a firebreak task?... we have some fun issues/spikes: #### https://github.com/alphagov/gsp
{"metaMigratedAt":"2023-06-14T22:31:15.263Z","metaMigratedFrom":"Content","title":"GSP","breaks":true,"contributors":"[{\"id\":\"54773c8b-0bd2-4fd4-af0c-dd8e838f6c20\",\"add\":4404,\"del\":139}]"}
    239 views