Welcome to the Repoflow blog

This blog is about its own design and building history using microservices, Kubernetes.

You can find all the code, articles about the implementation of different features, the bug fixes and the developement flow of a production system using Kubernetes.


The home section list the different services and their pods that are running for this blog in real-time using the Kubernetes REST api, this section will evolve overtime to show you more information about this production system.

  • auth-account-graph-service
    • Running auth-account-graph-deployment-657f6b67b7-6tgwl
    • Running auth-account-graph-deployment-657f6b67b7-nf7m9
    ClusterIP
  • auth-cache-service
    • Running auth-cache-stateful-0
    ClusterIP
  • auth-data-service
    • Running auth-data-stateful-0
    ClusterIP
  • auth-graph-service
    • Running auth-graph-deployment-55d787c44b-9v2rq
    • Running auth-graph-deployment-55d787c44b-kgb2s
    NodePort
  • auth-queue-service
    • Running auth-queue-stateful-0
    ClusterIP
  • auth-web-service
    • Running auth-web-deployment-c865d5dc8-46wz9
    • Running auth-web-deployment-c865d5dc8-hqkzp
    NodePort
  • blog-graph-service
    • Running blog-graph-deployment-7c4c99ccdb-bsx8d
    • Running blog-graph-deployment-7c4c99ccdb-d98dj
    NodePort
  • blog-web-service
    • Running blog-web-deployment-549494c488-9tpjv
    • Running blog-web-deployment-549494c488-cc8kg
    NodePort
  • home-graph-service
    • Running home-graph-deployment-86985b77b4-wfkz2
    • Running home-graph-deployment-86985b77b4-xtkkh
    NodePort
  • home-web-service
    • Running home-web-deployment-8586bd76c5-bhhnm
    • Running home-web-deployment-8586bd76c5-w6svh
    NodePort
  • resources-cache-service
    • Running resources-cache-stateful-0
    ClusterIP
  • resources-data-service
    • Running resources-data-stateful-0
    ClusterIP
  • resources-external-service
    • Running auth-account-graph-deployment-657f6b67b7-6tgwl
    • Running auth-account-graph-deployment-657f6b67b7-nf7m9
    • Running auth-cache-stateful-0
    • Running auth-data-stateful-0
    • Running auth-graph-deployment-55d787c44b-9v2rq
    • Running auth-graph-deployment-55d787c44b-kgb2s
    • Running auth-queue-stateful-0
    • Running auth-web-deployment-c865d5dc8-46wz9
    • Running auth-web-deployment-c865d5dc8-hqkzp
    • Running blog-graph-deployment-7c4c99ccdb-bsx8d
    • Running blog-graph-deployment-7c4c99ccdb-d98dj
    • Running blog-web-deployment-549494c488-9tpjv
    • Running blog-web-deployment-549494c488-cc8kg
    • Succeeded certificates-cronjob-1582592400-n65q5
    • Succeeded certificates-cronjob-1582678800-lb8wx
    • Succeeded certificates-cronjob-1582765200-g77rp
    • Succeeded certificates-cronjob-manual-5np-tg8pp
    • Running home-graph-deployment-86985b77b4-wfkz2
    • Running home-graph-deployment-86985b77b4-xtkkh
    • Running home-web-deployment-8586bd76c5-bhhnm
    • Running home-web-deployment-8586bd76c5-w6svh
    • Running resources-cache-stateful-0
    • Running resources-data-stateful-0
    • Running resources-queue-stateful-0
    • Running resources-web-deployment-7c65799559-78f2z
    • Running resources-web-deployment-7c65799559-hvlc5
    ExternalName
  • resources-queue-management-service
    • Running resources-queue-stateful-0
    ClusterIP
  • resources-queue-service
    • Running resources-queue-stateful-0
    ClusterIP
  • resources-web-service
    • Running resources-web-deployment-7c65799559-78f2z
    • Running resources-web-deployment-7c65799559-hvlc5
    NodePort

We belive that the best way to share our experiences is by having a real example in production. By implementing an apparently simple blog using Kubernetes we all can see and share all the involved components and workflows.


This is a diagram of the current architecture of the services with links to their respective files and code repositories.This diagram will be versioned to compare the changes feature to feature.


We use our tools to help us during all the microservices development of this blog, check them out! we are sure that those will help you as well.

linker-tool: A team focused tool to connect to Kubernetes service, ingress and nodes ports and replace services with local ports.
repoflow-tool: A tool focused on the development workflow with kubernetes and multiple repositories.