Giter Site home page Giter Site logo

akash-helm-charts's Introduction

Documentation

Please refer to the https://docs.akash.network for Helm-Chart based installation instructions.

Charts

Chart Description
akash-node Installs an Akash RPC node (required)
akash-provider Installs an Akash provider (required)
akash-hostname-operator An operator to map Ingress objects to Akash deployments (required)
akash-inventory-operator An operator for inventory discovery, labeling, and reporting (required)
akash-ip-operator An operator required for ip marketplace (optional)

The following sections will be moved to https://docs.akash.network eventually.

Troubleshooting

To troubleshoot you'll need to know the following.

  • We run an ingress-nginx pod on every Kubernetes worker node
  • This ingress-nginx pod binds all of the ports listed above to 0.0.0.0 on every Kubernetes worker node
  • The DNS A record config above should therefore include all Kubernetes worker nodes so that connections are balanced
  • Similarly the firewall ports need to be opened to all Kubernetes worker nodes
  • There are Kubernetes Ingress resources (kubectl get ingresses -A) that map the DNS CNAMES to backend services
  • Therefore connections from outside can hit ANY Kubernetes worker node and ingress-nginx will proxy to the correct service
  • Services (kubectl get services -A) are creates in the akash-services namespace pointing to the pods. These map the Ingress to the Pods.
  • The pods in the akash-services namespace created by the Helm charts can run on any Kubernetes worker node and are found by the service by label

For troubleshooting the pods in the akash-services namespace you can tail the logs with kubectl logs -n akash-services <pod name>. For the Akash Node and Akash Provider Helm charts you can add --set debug=true which will add a long sleep to any failing containers. You can then exec into the pod using kubectl exec -ti -n akash-services <pod name> -- bash to debug.

Setting up Kubernetes on your laptop to test

You can try a lightweight Kubernetes k3s, it brings you a fully fledged Kubernetes in under 30 seconds! Quick hint on k3s to save your time: install k3s using curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--disable=traefik" sh -s - command OR delete traefik LoadBalancer after k3s installation with kubectl -n kube-system delete svc traefik command so to not interfere with ingress-nginx-controller used for Akash deployments.

After installing k3s you will want configure the client:

mkdir ~/.kube
sudo cat /etc/rancher/k3s/k3s.yaml | tee ~/.kube/config >/dev/null

kubectl get nodes

Then, you need a funded wallet on the network that you would like to setup. In this documentation we'll use the mainnet which is the default in the chart. But you can override values to point to any other net.

Setting up Kubernetes on Bare Metal

We recommend using Kubespray or Rancher Kubernetes Engine when deploying to bare metal.

akash-helm-charts's People

Contributors

88plug avatar andy108369 avatar arno01 avatar boz avatar chainzero avatar cloud-j-luna avatar sacreman avatar sadfroghk avatar troian avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.