Eline Henriksen

Platform Engineer @ SKIP

Statens Kartverk

eliine

eliine

eliine.dev

SKIP

Statens Kartverks Infrastrukturplattform

Hvorfor?

Brukeropplevelse - UI/UX

"Jeg trenger verktøy for å bygge

gode produkter for brukerene"

DASK - Dataplattform

"Jeg vil transformere og dele data"

SKIP - Infrastruktur

"Jeg vil kjøre en applikasjon"

Plattform

Behovet

  • Akselerere leveranser
  • DevOps
    • Autonomi
    • Passende for produktteam
  • Moderne teknologi
    • Rekruttering
    • Trivsel
  • Innebygget sikkerhet
  • Skape et helhetlig økosystem for moderne utvikling

Standardiserte verktøy

Innebygget sikkerhet

Terraform

Crossplane

SLSA

GitHub Advanced Security

Intrusion Detection

Hemmelighets-hvelv

Selvbetjening & Autonomi

Hva er SKIP?

LGTM-stack

Metrikker

Logger

Tracer

Dashboard

Google Cloud

Cloud SQL

Hybrid Cloud

Stabile byggeløyper

GitHub Actions

Etablerte best practices

Kubernetes

Containere

Kostnads-overvåkning

Automatisk skalering

Zero trust

Nettverk

Sertifikater

Sårbarhetsscanning

Service Mesh

Dokumentasjon

Standardiserte verktøy

Innebygget sikkerhet

Terraform

Crossplane

SLSA

GitHub Advanced Security

Intrusion Detection

Hemmelighets-hvelv

Selvbetjening & Autonomi

Eller sagt på en annen måte:

Det som SKIP gjør for dere

LGTM-stack

Metrikker

Logger

Tracer

Dashboard

Google Cloud

Cloud SQL

Hybrid Cloud

Stabile byggeløyper

GitHub Actions

Etablerte best practices

Kubernetes

Containere

Kostnads-overvåkning

Automatisk skalering

Zero trust

Nettverk

Sertifikater

Sårbarhetsscanning

Service Mesh

Dokumentasjon

Det jeg bruker

Skiperator

ArgoCD

GitHub &

GitHub Actions

Grafana

Nacho SKIP

Pharos

Litt om containers

Hva er en container?

  • Tenk på en shippingcontainer
  • Abstraherer bort underliggende infra
  • Lar deg konsentrere deg om å bygge applikasjonen
  • Kan inneholde hva som helst (java, python, etc)
  • Eksponerer porter (API) og skriver til disk
  • Deploye uten å bestille servere

Containers vs. virtualization

Hva er Docker?

  • Populæriserte containers
  • En prosess per container
  • Isolert filsystem
  • Bygger og kjører containere basert på Dockerfile
  • Brukes ofte til utvikling
  • Brukte propritært format, bruker nå OCI format
    • OCI kan kjøre hvor som helst

Hva er Kubernetes?

  • Container-orkestrering
  • Produksjonsklart
  • Håndterer skalering, monitorering, lagring, nettverk.. Alt rundt
  • Mikrotjenester
  • Leveres som skytjenester, kan også kjøre selv
  • https://kind.sigs.k8s.io

Hva er GDC-V

(Anthos / GKE Enterprise)

Facts

  • Utviklet av Google
  • Hybridsky-delen av Google Cloud Platform
  • On-prem støtte for VMWare og bare-metal
  • Sky-støtte for GCP, AWS og Azure
  • Multi-cloud
  • Helhetlig leveranse med flere støttesystemer
  • GCP cloud console som GUI
  • Integrert med AD

Service Mesh

Mye greier!

SKIP abstraherer bort kompleksitet

Brukerfokus: Lager hjelpeverktøy som gjør deres jobb enklere

Skiperator

  • Enklere administrasjon av applikasjoner
  • Skiperator Applikasjons- manifest
  • Hver applikasjon definerer enkle opsjoner
  • Abstraksjon over noe mer komplisert
  • Forenkler oppsett av Zero Trust-nettverk, Service Mesh, Autoskalering, Autentisering mot GCP...

Hva kan det gjøre for meg?

Stabilitet

(Auto)skalerbarhet

Jobber (oneshot & cron)

Synlighet

Innebygget sikkerhet

Innebygget Sikkerhet

OPA - Trust, but verify

Hybrid sky

Cloud Run - Serverless

Infrastructure as Code (IaC)

Økosystem

GitHub

  • De-facto standarden for versjonskontroll
  • Kodelagring - Samarbeid om kode
  • GitHub Actions - CI/CD
    • YAML-filer
    • Økosystem med tredjeparts actions
  • Pull Requests, Issues
  • GitHub Teams
  • Advanced Security
    • Verdikjede-sikkerhet
    • SAST - Kodeanalyse

Argo CD

  • Dedikert deployment-system for Kubernetes
  • GitOps
  • Synker fra git repo til cluster
  • Innsyn i hva tilstanden til applikasjonen er
  • Brukervennlig
  • Preview deployments

Terraform

  • "Infrastructure as Code"
  • Laget av Hashicorp
  • Deklarativt - Skriv hva du vil ha, Terraform finner ut hvordan
  • Skriv filer i HCL-format
  • Providers og moduler
  • Økosystem med Terraform providers
  • Kan kjøres via CI/CD
  • Støtter alle skymiljøer

Secret Manager

  • Sikker lagring av hemmeligheter
  • Laget av Google
  • Programmatisk uthenting
  • Lagre strenger, filer, sertfikater, etc.
  • Integrert i Spring Boot og andre verktøy
    • @Value("...")
  • Tilgangskontroll
  • Auditable

Skiperator

  • Enklere administrasjon av applikasjoner
  • Basert på Custom Resource Definitions (CRD-er)
  • Abstraksjon over noe mer komplisert
  • Eksempel: CRD for å sette opp applikasjon
  • Forenkler oppsett av Zero Trust, Service Mesh, Autoskalering, Autentisering mot GCP...

Instana

  • Monitorering, Application Performance Managment (APM), tracing
  • Application Perspectives
  • Website monitoring
  • Varsling til Slack, etc.
  • Custom JMX og Prometheus-metrikker

Grafana

  • Monitorering, Application Performance Managment (APM), metrikker, tracing
  • Correlations
  • Custom dashboards
  • Alarmer
  • Varsling til Slack, etc.
  • Custom JMX og Prometheus-metrikker

Kurs

  • SKIP har lisenser på kurs
  • Videokurs tilgjengelig på nett
  • Produsent er Cloud Guru
  • Docker, Kubernetes, Google Cloud, og mye mer
  • Kun 6 lisenser p.t. så ta kontakt for å få plass i køen

.. I fremtiden

  • Public Cloud
  • Feature Flags
  • Brukerinnsikt
  • Hendelsesbasert programmering med Apache Kafka/PubSub
  • Serverless

Demo!

Fin

https://slides.com/eliihen/skip-intro

Intro til SKIP

By Eline H

Intro til SKIP

  • 148