Installation Guide

Welcome to the AppNet installation guide. This document provides step-by-step instructions on how to set up AppNet and its dependencies.

Note: The following scripts are tested on Ubuntu 20.04. We plan to add support for other platforms soon.

Cloning the Repository

First, clone the AppNet repo:

git clone --recursive
cd appnet

Before you start, make sure you have the following installed:


Install the CLI

appnetctl is a command line program to manage the AppNet control plane. To install the CLI, follow these steps:

  1. Create a Conda environment:
conda create -y -n appnet python=3.10
conda activate appnet
  1. Run the installation script:
. ./
  1. Verify the CLI and other tools are running correctly:
user@h1:~/appnet$ appnetctl version
Version: v0.1.0
user@h1:~/appnet$ appnetctl verify
Verifying AppNet installation status...
✔ Python installed.
✔ Rust installed.
✔ Kubernetes installed.
✔ protoc installed.
✔ Istio installed.
  1. Lastly, install the CRDs into the cluster:
make install



To install a Kubernetes cluster, we recommend using kubeadm. Follow the steps below:

  1. Install the Control Plane:
. ./utils/
  1. (Optional) Set Up Worker Nodes:
  • First, prepare the worker nodes:
. ./utils/
  • Then, join the cluster using kubeadm join. Run the following command on the control plane node to get the join command:
kubeadm token create --print-join-command

Note: if you plan to use a multi-node cluster, make sure you can ssh other nodes from the control plane node.

  1. Verify Installation:
kubectl version

For additional installation options (e.g., KIND, Minikube), visit this page

(Optional) We highly recommend installing k9s for visualizing your clutser.


Istio can be installed in either sidecar mode or ambient mode. Choose the one that best fits your requirements:

  • Sidecar Mode
. ./utils/
  • Ambient Mode
. ./utils/


Install Go by running the following command:

sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.22.1.linux-amd64.tar.gz

echo "export PATH=$PATH:/usr/local/go/bin" >> ~/.bashrc
source ~/.bashrc


Install Rust by running the following command:

curl --proto '=https' --tlsv1.2 -sSf | sh


Install the Protocol Buffers Compiler and the necessary Go plugins with these commands:

sudo apt -y install protobuf-compiler


See this page for installation instructions.

For Ubuntu users:

wget -O