Jump to content
xh3b4sd

How manages Ripple infrastructure to run validators?

Recommended Posts

Hello folks, 

I was wondering how Ripple runs its applications. Do we have people in here who take care about application deployment and infrastructure administration? Some devops or SREs? I am thinking about doing a showcase of running a Ripple validator in Kubernetes. Would that make sense to you? I am curious what you are thinking. 

 

All the best, Tim. 

Share this post


Link to post
Share on other sites
5 minutes ago, xh3b4sd said:

Hello folks, 

I was wondering how Ripple runs its applications. Do we have people in here who take care about application deployment and infrastructure administration? Some devops or SREs? I am thinking about doing a showcase of running a Ripple validator in Kubernetes. Would that make sense to you? I am curious what you are thinking. 

 
2

Why would you want Kubernetes? Try deploying rippled in a docker container first.

Edited by T8493

Share this post


Link to post
Share on other sites

Running rippled in a container is included in this story. Reason to use Kubernetes is because of its administrative advantages. Managing monitoring, alerting, logging, capacity management and deployment strategies works super well using Kubernetes. I think Kubernetes is the Ripple of automated infrastructure management. 

Share this post


Link to post
Share on other sites
2 minutes ago, xh3b4sd said:

Running rippled in a container is included in this story. Reason to use Kubernetes is because of its administrative advantages. Managing monitoring, alerting, logging, capacity management and deployment strategies works super well using Kubernetes. I think Kubernetes is the Ripple of automated infrastructure management. 

 

Well, you usually need only one rippled. Docker (without Kubernetes) suffices in this case because you have only one container.

I'm not sure what are you trying to achieve but for rippled (not Kubernetes) showcase Kubernetes sounds like an overkill.

 

 

Share this post


Link to post
Share on other sites

Since I have quite some experience of operating distributed systems in production I can ensure you that just having a container running is not good enough for production purposes. I can imagine that Ripple does not simply run some containers for their rippleds and be fine with this. This is not how production workloads are operated, for reasons. If using Kubernetes to run rippled is overkill is up to be judge by experienced Ripple employees. We both do not seem to be such. This is why I asked if there are Ripple devs or SREs in here. Note that I am not here to sell Kubernetes. I am interested in how Ripple operates their infrastructure and what they think about the showcase I proposed. I am personally interested in Kubernetesd because I work with it on a daily basis and have quite some experiences with it. There just happened this: https://ripple.com/insights/how-we-are-further-decentralizing-the-ripple-consensus-ledger-rcl-to-bolster-robustness-for-enterprise-use/. So my intention was to help pushing it by making it more easy for people to run validators. 

Share this post


Link to post
Share on other sites

I don't know if any of our devops or SRE people are on xrpchat, but I'll point them in the direction of this thread.

You're right - we don't just spawn a container and let it churn away behind the scenes. There's a whole lot more going on, unseen, to make sure everything is running smoothly, it's up to date, secure and generally happy. I'm a bit hesitant to discuss details of our infrastructure, but it's a big operation and it's being managed by truly talented people.

If someone wants to run a server at home, then Kubernetes is probably overkill, but certainly if you're managing a cluster (or clusters) of servers, you need to put up the right infrastructure below it.

I wouldn't mind watching such a demo.

Share this post


Link to post
Share on other sites
1 hour ago, nikb said:

If someone wants to run a server at home

My intention was to help pushing the decentralization goals Ripple has by providing examples of easy to use production ready examples. IMO people running validators at home have only little chance to get listed in the UNL. Validators listed there help the network essentially. Providing blueprints to run it the right way would benefit this process. At least this was my personal thinking to help pushing towards Ripples vision. 

Share this post


Link to post
Share on other sites
25 minutes ago, xh3b4sd said:

My intention was to help pushing the decentralization goals Ripple has by providing examples of easy to use production ready examples. IMO people running validators at home have only little chance to get listed in the UNL. Validators listed there help the network essentially. Providing blueprints to run it the right way would benefit this process. At least this was my personal thinking to help pushing towards Ripples vision. 

Think it's a great idea. What do you think are the hardware specs to run your own? Is it possible to run a validator on a Mac (also with a kinda noobs installation proces)?

Share this post


Link to post
Share on other sites
19 minutes ago, kanaas said:

What do you think are the hardware specs to run your own? Is it possible to run a validator on a Mac

I really don't know. Never ran rippled. Some insider may chime in. I can imagine that this also depends on the configuration used to run the validator. IMO when you want to run it on your Mac you will never be listed in the UNL, which would be my personal target. Get more nodes from different parties into the list. This is why e.g. Kubernetes will be a good fit. It is made to run production workloads. I can imagine Ripple uses openshift, puppet, chef, ansible, salt, or whatever. Many ways lead to Rome. When I would run validators myself I would like to have a three node Kubernetes cluster to run 2 rippleds, Prometheus, Alertmanager, Grafana and ELK components. Machine capabilities would need to be something around 8 cores, 32GB RAM and 250GB SSDs to be able to make some kind of serious business. I might be pessimistic here. Bigger always works better but this is also about money. Something like this could potentially be the minimum to run 2 rock solid Validators listed in the UNL. But again, I never ran a rippled and do not know all the details and requirements it has. So the actual setup does potentially differ to what I just described. Based on my current limited knowledge about the validator, I can feel this could work. Devil is in the details of course. 

Share this post


Link to post
Share on other sites
3 hours ago, xh3b4sd said:

This is not how production workloads are operated, for reasons. 

 

You wanted to showcase rippled. But showcase and production use are two different things. If you showcase something, people must understand and see what are you doing. If you use Kubernetes to orchestrate tens of containers on X different nodes, no one will be able to comprehend what is going on.

Edited by T8493

Share this post


Link to post
Share on other sites
1 hour ago, xh3b4sd said:

My intention was to help pushing the decentralization goals Ripple has by providing examples of easy to use production ready examples. IMO people running validators at home have only little chance to get listed in the UNL. Validators listed there help the network essentially. Providing blueprints to run it the right way would benefit this process. At least this was my personal thinking to help pushing towards Ripples vision. 

 
 
 

People who can afford to pay for enough nodes that can run a rippled cluster, probably don't need a blueprint on how to run this cluster. They'll come up with their specific configuration. For example, they probably need to implement their own load balancing/failover strategies and if they run this cluster in a public cloud, the public cloud will provide all facilities for running rippled cluster/servers (in the form of containers and/or VMs) anyway.

Edited by T8493

Share this post


Link to post
Share on other sites

I personally think that it would be more beneficial for the ripple community if we had:

maintained docker container

packages for apt based linux distributions

some estimates of minimal resources (especially disk IOPS/memory) that are needed for specific types of workloads (for example, for a validator, for development work, etc.). Currently, it looks like that running a rippled node 24/7 on major public cloud VMs is certainly not cheap and we need cheaper, more practical alternatives (especially in the cases when the workload is "bursty", for example when you run integration etc. tests)

 

 

 

 

Edited by T8493

Share this post


Link to post
Share on other sites
9 hours ago, T8493 said:

You wanted to showcase rippled. But showcase and production use are two different things. If you showcase something, people must understand and see what are you doing. If you use Kubernetes to orchestrate tens of containers on X different nodes, no one will be able to comprehend what is going on.

I prefer a helm chart to some arcane process generating an RPM (have you looked into how the official package gets generated? :bad:)

If you already understand how Kubernetes works, it is not that hard to get how rippled works on top of it, however if you only get told to "integrate rippled" somewhere I guess most people would start with very different approaches.

Running a validator off-premise should be a VERY red flag imo, I would not accept more than 1 validator running on some "cloud" provider in the same jurisdiction in my UNL if it were possible to get this info somehow. Registering a domain + getting a free SSL certificate on the other hand is a very low hurdle...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...