# Sentry Node Architecture Overview

**URL:** <https://forum.cosmos.network/t/sentry-node-architecture-overview/454>\
**Category:** Validation\
**Created:** [July 11, 2018, 10:04pm UTC](https://forum.cosmos.network/t/sentry-node-architecture-overview/454 "2018-07-11T22:04:58Z")\
**Posts on this page:** 1\
**Showing post:** 33

<div class="post-metadata">

**Author:** ![gkrizek](https://avatars.discourse-cdn.com/v4/letter/g/9d8465/32.png) [@gkrizek](https://forum.cosmos.network/u/gkrizek)\
**Post date:** [July 27, 2018, 8:09pm UTC](https://forum.cosmos.network/t/sentry-node-architecture-overview/454/33 "2018-07-27T20:09:32Z")

</div>

I think there are some important distinctions to make here. First, what I was referring to was a type of HA setup for the Validator only. (nothing to do with Sentry Nodes). We were discussing how you would run more than 1 Validator in order to make it High Available. We determined that it _theoretically should_ be possible to run a Validator and a Full Node side by side behind a type of Load Balancer or Proxy. You could have some kind of health check running on the validator and if it fails, it turns the Full Node into a Validator (with the same key) and routes traffic to it. This isn’t really “load balancing” because there is only 1 server receiving traffic at all times. But a load balancer could be used to achieve it. I hope that makes sense.

Another thing to note with this setup, is you would need a way to manage state between the two Validators. Like when a new Sentry comes online, you could use the `/dial_peers` endpoint to add it to the Validator. But you would have to make sure the secondary Validator knows about the new Sentry as well in case of failover.

* * *

For the Sentry Nodes specifically, that’s something I’m try to dig into now. I’m not familiar enough with them and how they work yet, so I can’t really speculate on how to handle those. Maybe someone could answer a question I have regarding those…

Where does the `node_id` come from and what is it used for? It seems like maybe it’s derived from the `~/.gaiad/config/node_key.json`? I understand that other peers are expecting that node\_id to match the node\_id of the Sentry they are connecting to, but what’s stopping you from running 10 Sentrys with the same node\_id? For example, if I had a load balancer on the domain `validator.example.com` and I have 10 Sentrys behind that load balancer all with the same node\_id, wouldn’t that work fine for others to connect? I’m probably missing something there…

---

_[View the full topic](https://forum.cosmos.network/t/sentry-node-architecture-overview/454)._
