Skip to content

Instantly share code, notes, and snippets.

@Ciloe
Last active October 8, 2021 08:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Ciloe/c714b87378ee9e4cb70fd2505a98fae8 to your computer and use it in GitHub Desktop.
Save Ciloe/c714b87378ee9e4cb70fd2505a98fae8 to your computer and use it in GitHub Desktop.
Besoins Rue des vignerons

Définition des besoins :

Les conteneurs :

  • PHP (latest)
  • Nginx (latest)
  • ELK (latest) (elastic cloud kubernetes)
  • Redis (latest) (managé)
  • Postgres (latest) (managé => impossible : extension custom) (replica)
  • PG Bouncer
  • RabbitMQ (latest) (managé) (google pub/sub)
  • Traefik (latest) (pas forcément besoin)
  • React (latest)

L'infrastructure :

  • Déploiement par Github
  • Déploiement A/B Testing + Canary
  • Sécurisation complète
  • 99,99% de fonctionnement
  • Environnements preprod + staging + prod
  • Génération et gestion des certificats HTTPS multiples domaines (.fr, .com, .co.uk). Avec Traefik ?
  • Certificats SSL

Hébergement :

  • GCP / GKE
  • CDN fichiers statiques React + images (sur cloud storage)

Questions subsidiaires :

  • Les différents environnements de développement ont leur propre banche sur Github
  • Le code est déjà conteneurisé avec docket et fonctionne en standalone. Des .env permetent de les configurer
  • Le code réact discute en HTTPS avec l'aPI graphql en PHP. Mais PHP fonctionne aussi via des webhook ou encore un espace connecté et admin
  • L'API est sécurisé avec des token JWT
  • Le projet permet d'uploader des images. Elles sont stockées sur un cloud storage (d'où l'utilisation d'un CDN)
  • Logstash a son dossier de log via un volume partagé avec PHP, Nginx et React
  • Estimation du ratio écriture/lecture sur la BDD : 20% / 80%
  • Traffic estimé : 50K utilisateurs uniques par jours

Le plus :

  • Déploiement des espaces de développement (création de pull request)
  • Info gérance
  • Possibilité de déployer des sides projects à la demande

Besoin :

  • Logs : React + Nginx + PHP + PG
  • Dashboard : Perfs + Alerte + Filtrages de logs
  • Webhooks pour les envs de dev

Utilisation :

  • Terraform : Configuration GCP
  • Kustomize : Configuration des pods
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment