Skip to content

Pupmos/kennel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pupmos/kennel

kennel

What is kennel?

Kennel is a collection of the custom ansible playbooks, roles and scripts that we've put together over the past year for running and managing nodes and related services on Cosmos-based chains. Feel free to use the resources below as you see fit, based on your needs/requirements.

We predominately use OVHCloud for our global infrastructure, with a sprinkling of services from MEVSpace. Some of our playbooks require a provider parameter to be passed given that both these providers provision bare metal slightly differently. If you're using a completely different provider, please raise a PR for the playbook in question as we'd like to support as many as possible.

Registry

A registry of all Cosmos chains that can be used with our ansible playbooks. The registry contains the default configuration (such as seeds, peers, min gas fees, repository url - amongst others) for each of the chains that Kennel supports. The registry can be found here.

Playbooks

The Kennel ansible playbooks.

Docker Swarm

Primarily used for running clusters of RPC/gRPC and API nodes.

Name Description Repository
docker-swarm Setting up a new Docker Swarm cluster. Pupmos/ansible-docker-swarm
docker-swarm-service Deploying services on a Docker Swarm cluster. Pupmos/ansible-docker-swarm-service

Other

Used for running nodes on bare metal or VPS.

Name Description Repository
nodes Setting up new Cosmos validators and RPC/gRPC/API nodes. Pupmos/ansible-cosmos-nodes
restake restake.app on Cosmos. Pupmos/ansible-cosmos-restake
seed Setting up a new Cosmos seed node. Pupmos/ansible-cosmos-seed
ts-relayer Setting up ts-relayer. Pupmos/ansible-ts-relayer

Roles

These are not intended to be used in isolation, but rather with the playbooks above.

Name Description Repository
common Initializing a new Cosmos full-node. Pupmos/ansible-cosmos-roles-common
node Configuring a new Cosmos full-node. Pupmos/ansible-cosmos-roles-node
rpc Configuring a Cosmos full-node with public RPC/gRPC/API access. Pupmos/ansible-cosmos-roles-rpc
monitoring For monitoring. Pupmos/ansible-roles-monitoring

Packages

Auxiliary Services

Name Version Description Package
proxy v1.0.1 nginx reverse proxy for Docker Swarm clusters. Download
monitor v0.4.0 DataDog Cosmos RPC monitor for Docker Swarm clusters. Download

Chains

Chain Version DB Backend Package
chihuahua-1 v6.0.1 goleveldb Download
cosmoshub-4 v16.0.0 goleveldb Download
jackal-1 v3.2.0 goleveldb Download
juno-1 v22.0.0 goleveldb Download
meme-1 v1.0.0 goleveldb Download
neutron-1 v3.0.2 goleveldb Download
omniflixhub-1 v4.0.0 goleveldb Download
sommelier-3 v7.0.0 goleveldb Download
stargaze-1 v13.0.0 goleveldb Download
stride-1 v22.0.0 goleveldb Download
teritori-1 v2.0.6 goleveldb Download

TODO

  • Akash support.
  • Dynamic hostnames in docker/proxy/nginx.conf.
  • Upgrade all docker images to PebbleDB.

Acknowledgements/Credits