7 votes
Accepted

How to deploy multiple dependent micro services

Such question could be an indication of a poor architectural slicing into microservices. From What are Microservices?: These services are built around business capabilities and independently ...
user avatar
6 votes
Accepted

Making thousands of microservice/dockers with different IPs

Linux, without docker In Linux, you can create arbitrarily many IP address for each interface. A comment in https://serverfault.com/questions/328146/max-number-virtual-ip-addresses-per-nic reports ...
user avatar
  • 4,716
6 votes

What is a "mesh"?

The concept of service discovery works like this: When a server, such as a database, starts up, it contacts a central registry and says Hi, I am a database, and these are my connection details. Then ...
user avatar
  • 1,076
5 votes

How can I ensure consistency between new microservices?

I'll add an answer of what my solution is so far, but I'm still really interested in hearing how other organisations are solving this problem and the best practices they have. To resolve the issue of ...
user avatar
  • 1,345
5 votes
Accepted

When your micro service in production needs a secret, where is the secret stored and retrieved from?

Short answer Ideally, you should store secrets as environment variables, and retrieve them from a secrets management system like Hashicorp's Vault or AWS Parameter store. Long answer I saw your ...
user avatar
  • 1,332
5 votes
Accepted

Blue/green deployment with micro services and DNS

You should have 3 names when you're willing to do a blue/green deployment. Two set of names, one for blue, one for green, which will works as is, and a production entrypoint which will point to ...
user avatar
  • 11.1k
5 votes

Digital Ocean vs AWS EC2 for Laravel based application

We faced exactly the same choices for our live service that deploys a laravel API and multiple react apps. There is no generic correct answer to a question "what tool/provider is better?" as it ...
user avatar
  • 1,162
4 votes
Accepted

CI/CD for microservices in monorepo on Gitlab

Monorepos are nice because it eliminates the technical constraints between multiple projects. This does however open the door to other complications within your repository (naming conventions, cross-...
user avatar
  • 2,993
4 votes
Accepted

Teaching an old dog new tricks: Finally adopting the micro-service architecture

In your approach I see a few scalability problems - I'm judging from a Google App Engine (GAE) context, where scalability is achieved via breakdown of the work in small tasks/work items and strict ...
user avatar
4 votes
Accepted

How do you monitor Node Micro services running inside of Docker Containers?

This is an area where Kubernetes has the correct model, there should be a load balancer between all systems which should have functional health checks. Once you start to add Nagios, Zabbix or other ...
user avatar
  • 366
4 votes

How do you monitor Node Micro services running inside of Docker Containers?

One commonly used solution(not container-specific) is to build a health check API within your service which tests all the functionality you want monitored (say availability of DBs and other ...
user avatar
  • 324
4 votes

How can I ensure consistency between new microservices?

Use a configuration management/automated deployment system. This is what these were designed for. Things like Kubernetes, Puppet, Chef, Ansible and Salt Stack are designed for just this purpose and ...
user avatar
  • 3,674
4 votes
Accepted

What is a "mesh"?

The metaphor of "mesh" is "many interconnected things". We might describe TCP/IP as a "mesh technology" as it is the technology that connects many things and performs useful services like resending ...
user avatar
  • 1,162
4 votes
Accepted

Gitworkflow and testing short lived feature branches in Openshift/Kubernetes

I'm not altogether sure if there actually is a problem you're trying to solve, or whether you are looking for confirmation that you are on the right track. Some thoughts: Internally openshift ...
user avatar
  • 4,716
3 votes

How can I ensure consistency between new microservices?

This question is broad so if my answer is a little off-base feel free to add context and specific examples so that I have a better understanding. Using a machine image such as AWS' AMI would allow ...
user avatar
  • 31
3 votes

How to visualize dynamic microservice architecture running with Consul?

I recommend that you take a look at the NetworkX library for Python. With a script you could query Consul and build a graph of linked nodes which could be rendered to an image file and served with a ...
user avatar
3 votes

Ansible playbook for configuring runit to supervise an uberjar?

So both have their place. On one hand, putting service definitions in the package helps to keep the number of "moving pieces" to a minimum. On the other, it also requires a more complex package build ...
user avatar
  • 1,197
3 votes
Accepted

In a Database Per Service model - should i include the database in the service container?

Keep the DB containers separate. The concept of microservices and containers is to allow each part to be independently updated without introducing changes and outages to the rest of the application ...
user avatar
  • 2,765
3 votes

Docker Deployment strategy for microservices project

I'll ignore your usage of the word "VM" here, since you have "Docker" in the title and "container" in the tags. One would indeed not deploy each microservice in their own VM, which would be an ...
user avatar
  • 4,716
2 votes
Accepted

In kubernetes, using an nginx ingress controller what is recommended way of adding back end services?

What you have installed, the ingress controller, is only one part of the story. The other part is an ingress: in an ingress you define what pods/services should receive traffic of what domain and ...
user avatar
  • 171
2 votes

In kubernetes, using an nginx ingress controller what is recommended way of adding back end services?

Ingress controllers allow you to not manually wire stuff up, that's the whole point. If you'd rather do it manually You could have an nginx array (either inside Kubernetes our outside of it) and just ...
user avatar
  • 381
2 votes

How do you change a secret that half of your production applications use right now?

This question ties in heavily with your other question with where the secrets are set and where they retrieved from. I assume your question is asking about 'canary deployments' where you change the ...
user avatar
  • 1,332
2 votes

How to deploy Envoy EDS/SDS

Putting it behind a DNS name with a load balancer across multiple SDS servers is a good setup for reasonable availability. If SDS is down, Envoy will simple not get updated, so it's generally not the ...
user avatar
  • 121
2 votes

Consul with Nginx, not using docker

I have done this in the past using https://github.com/hashicorp/consul-template. What consul-template does it generate a configuration file (for nginx) based on a certain template you provide. And ...
user avatar
2 votes

Is this an appropriate architecture, or can improvements be made?

My largest concern is around the MS SQL Server implementation. Coupling the read only instances so tightly to the services feels wrong. Is there a better way to do this? Essentially what you have ...
user avatar
2 votes

How to add rules to Kubernetes NGINX Ingress controller from different yml definitions?

I was able to combine your two example files by first converting them to JSON. foo.json { "apiVersion": "extensions/v1beta1", "kind": "Ingress", "metadata": { "name": "nginx-ingress" }, ...
user avatar
  • 585
2 votes

Mysql with Kubernetes

I would suggest to only run stateless apps in k8s. One should run statefull apps like databases in dedicated database solutions like AWS RDS.
user avatar
  • 12.6k
2 votes
Accepted

What percentage of microservice architectures employ polyglot programming models?

A good source for statistics could be stackshare.io. In general, polyglot services i.e. teams delivering different stacks could create silos, and additional overhead for diverse toolchains; ...
user avatar
2 votes

How to monitor a micro-service oriented solution?

Prometheus is a popular tool for monitoring microservices deployed to the cloud in combination with Grafana. For a better understanding of your inter-service issues, a distributed tracing tool is ...
user avatar
  • 925
2 votes
Accepted

Practical reasons for 200 limit of AWS resources in CF templates

The 200 limit can be raised, however this is a grinding process that can take months. You work through customer support to get "elevated" as a client to more AWS privileges. Resources: - Worked under ...
user avatar

Only top scored, non community-wiki answers of a minimum length are eligible