Cloud Migration Strategy — GCP → Azure

Cloud Migration Strategy — Drop

Dato: 2026-02-18 Status: Planlegging Beslutning: Azure som produksjonsplattform, GCP for dev/staging


SpareBank 1 — Teknisk Stack (Research)

Lag Teknologi
Cloud Azure (primær) — Eunomia-plattformen for 13 banker
Sekundær AWS (mindre workloads)
Backend Kotlin/Java (Spring Boot)
Frontend React + TypeScript
Orkestrering Kubernetes / OpenShift
Meldingskø Apache Kafka
Autentisering BankID (norsk eID)
API Gateway Axway
Partnerskap Microsoft (strategisk partner)

Drops Nåværende Stack

Lag Teknologi
Frontend Next.js 16 + React 19 + Tailwind v4
Backend Next.js API Routes (Node.js)
Database SQLite (better-sqlite3) → PostgreSQL (prod)
Auth JWT (jose) i httpOnly cookies + BankID
Hosting Fly.io (staging), Vercel (planned prod)

Migreringsstrategi

Fase 1: GCP Dev/Staging (NÅ)

Fase 2: Azure Produksjon (Når credits kommer)

Fase 3: Multi-Cloud Beredskap

GCP Deploy Plan (Fase 1)

Steg 1: Containerisering

# Dockerfile for Drop Next.js
FROM node:20-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --production
COPY . .
RUN npm run build
EXPOSE 3000
CMD ["npm", "start"]

Steg 2: GCP Oppsett

  1. Opprett GCP-prosjekt (allerede: project-72cd303f)
  2. Aktiver Cloud Run API
  3. Opprett Cloud SQL PostgreSQL-instans (db-f1-micro for dev)
  4. Konfigurer secrets i Secret Manager
  5. Sett opp Cloud Build for CI/CD

Steg 3: Deploy Pipeline

# Build og push container
gcloud builds submit --tag gcr.io/PROJECT_ID/drop-web

# Deploy til Cloud Run
gcloud run deploy drop-web \
  --image gcr.io/PROJECT_ID/drop-web \
  --platform managed \
  --region europe-north1 \
  --allow-unauthenticated \
  --set-env-vars DATABASE_URL=postgresql://...

Steg 4: DNS + SSL

Regulatoriske Krav (Finanstilsynet)

Kotlin/Java Vurdering

Beslutning: Nei — beholder Next.js/TypeScript

Hvorfor:

  1. Drop er ~7,600 linjer TypeScript — full rewrite til Kotlin = 2-3 mnd
  2. SpareBank 1 sin API er REST/GraphQL — språket på vår side er irrelevant
  3. TypeScript fullstack = ett språk, ett team, raskere iterasjon
  4. Next.js API Routes er tilstrekkelig for vår skala (fintech MVP)
  5. Når vi trenger mikrotjenester → da vurderer vi Kotlin for spesifikke tjenester

Estimerte Kostnader

Tjeneste GCP (dev) Azure (prod)
Compute Cloud Run: ~$0 (free tier) App Service B1: ~$13/mnd
Database Cloud SQL micro: ~$7/mnd PostgreSQL Basic: ~$25/mnd
Storage 5GB: ~$0.10/mnd 5GB: ~$0.10/mnd
Totalt ~$7/mnd (dekkes av credits) ~$38/mnd (dekkes av credits)

Relaterte Oppgaver


Revision #2
Created 2026-02-18 18:55:12 UTC by John
Updated 2026-05-24 20:01:12 UTC by John