Background
Instana is the fully-automated Application Performance Management (APM) solution designed specifically for the challenges of managing microservices and cloud-native applications. It supports self-hosted installation which can be deployed on Kubernetes.
In this post, I will share with you a GitHub project that can help you quickly launch an opinionated sandbox that runs the self-hosted Instana for Kubernetes in a local KIND cluster in five minutes or even less than five minutes! This can be a great tool for developers, tech sales, customers, or any other people who are interested in Instana, want to give it a try, do some assessments, set up a quick demo environment, create a PoC against it, or look for a dev environment for agent development, and so on.
About the Sandbox
Typically, you need two Ubuntu VMs:
Machine |
Resource |
machine1 |
16 core, 32G memory, 250G disk |
machine2 |
16 core, 64G memory, 250G disk |
- Use machine1 to install Instana databases and NFS service (for tracing spans persistence).
- Use machine2 to install KIND cluster and Instana workloads run on it.
Launch the Sandbox
To launch the sandbox, you can clone the Git repository to each of your above machines.
git clone https://github.com/morningspace/lab-instana.git
Then, go into the project root folder and run install.sh
to start the installation. Before you install, make sure you define the following settings using environment variables:
export INSTANA_DOWNLOAD_KEY="your download key"
export INSTANA_SALES_KEY="your sales key"
On the machine that runs KIND cluster and Instana workloads, please also define the hostname for the machine that runs Instana databases:
# the hostname for the machine that runs Instana databases, e.g. machine1
# please note it is the hostname, not the IP address
export INSTANA_DB_HOST="hostname_of_machine1"
You can also modify ./config.sh
for more settings customization.
Bring up environment
Run below commands to bring up Instana databases and NFS service on one machine:
./install.sh up db
./install.sh up nfs
After it's up and running, then run below command to bring up KIND and Instana workloads on another machine:
This may take 10 to 20 minutes or even more depending on your network as it needs to pull images from Instana container registry.
Use local registry
You can use local registry to speed up the installation by caching all Instana images to a local registry. By doing so, to launch the sandbox will only take 5 minutes or even less than 5 minutes!
Let's bring up the local registry on the machine that runs KIND and Instana workloads by running below command:
This will pre-pull all images needed for Instana installation and cache them to the local registry. To use the local registry, add --reg
when bring up KIND and Instana workloads on that machine:
Very straightforward, isn't it?
Clean up
To clean up the installation, you can run below command to take down Instana databases:
To take down KIND and Instana workloads, run below command:
Access Instana UI
After Instana is launched, to access Instana UI, open https://${INSTANA_HOST} in web browser, use username: admin@instana.local and password: passw0rd. Here $INSTANA_HOST is the hostname for the machine that runs KIND and Instana workloads.
That's it!
Summary
As you can see, using the tool, you can launch an Instana sandbox very quickly. If you like it, you can consider to give star to this GitHub project. Any contributions such as bug report and code submission are very welcome. Enjoy!
#Instana#Kubernetes#HowTo#setup