Quick Start with Minikube

Prerequisites
1. Install the Meshery command line client, mesheryctl .

To Setup and run Meshery on Minikube :

Compatibility

The following minimum component versions are required:

Name Version
Minikube 1.0.0
Kubernetes 1.14.1
kubectl 1.14.1

Steps

Perform the following steps in order:

1. Start minikube

minikube start --cpus 4 --memory 8192 --kubernetes-version=v1.14.1

Note: minimum memory required is –memory=4096 (for Istio deployments only)

Check up on your minikube cluster :

minikube status

2. Install Meshery

Follow the installation steps to setup the mesheryctl CLI and install Meshery.

Users using docker driver: After completing the Meshery installation, execute the following commands to establish connectivity between Meshery Server and Kubernetes cluster:

docker network connect bridge meshery_meshery_1


docker network connect minikube meshery_meshery_1

To establish connectivity between a particular Meshery Adapter and Kubernetes server, use “docker ps” to identify the name of the desired container, and execute the following commands:

docker network connect bridge < container name of the desired adapter >


docker network connect minikube < container name of the desired adapter >

2. Configure Meshery to use minikube

  1. Login to Meshery. Under your user profile, click Get Token.

  2. Use mesheryctl to configure Meshery to use minikube. To allow Meshery to detect your config file, execute the following commands:

mesheryctl system config minikube -t ~/Downloads/auth.json


Optionally run the command below to expose the LoadBalancer services to the host machine :

minikube tunnel

Optionally configure Meshery to use minikube through the Web UI :

  • Run the below command to generate the “config_minikube.yaml” file for your cluster:
kubectl config view --minify --flatten > config_minikube.yaml
  • Upload the generated config file by navigating to Settings > Environment > Out of Cluster Deployment in the Web UI and using the “Upload kubeconfig” option.

Manual Steps

You may also manually generate and load the kubeconfig file for Meshery to use:

The following configuration yaml will be used by Meshery. Copy and paste the following in your config file :

 
apiVersion: v1 clusters: - cluster: certificate-authority-data: < cert shortcutted > server: https://192.168.99.100:8443 name: minikube contexts: - context: cluster: minikube user: minikube name: minikube current-context: minikube kind: Config preferences: {} users: - name: minikube user: client-certificate-data: < cert shortcutted > client-key-data: < key shortcutted >

Note: Make sure current-context is set to minikube.


To allow Meshery to auto detect your config file, Run :

kubectl config view --minify --flatten > config_minikube.yaml


Meshery should now be connected with your managed Kubernetes instance. Take a look at the Meshery guides for advanced usage tips.