Quick Start with Minikube
Manage your Minikube clusters with Meshery. Deploy Meshery in Minikube in-cluster or outside of Minikube out-of-cluster. Note: It is advisable to Install Meshery in your Minikube clusters
Prerequisites
- Install the Meshery command line client, mesheryctl.
- Install kubectl installed on your local machine.
Also see: Install Meshery on Kubernetes
Available Deployment Methods
In-cluster Installation
Follow the steps below to install Meshery in your Minikube cluster.
Preflight Checks
Read through the following considerations prior to deploying Meshery on Minikube.
Preflight: Cluster Connectivity
Start the minikube, if not started using the following command:
minikube start --cpus 4 --memory 8192 --kubernetes-version=v1.14.1
Check up on your minikube cluster :
minikube status
Verify your kubeconfig’s current context.
kubectl config current-context
Preflight: Plan your access to Meshery UI
- If you are using port-forwarding, please refer to the port-forwarding guide for detailed instructions.
- Customize your Meshery Provider Callback URL. Meshery Server supports customizing authentication flow callback URL, which can be configured in the following way:
$ MESHERY_SERVER_CALLBACK_URL=https://custom-host mesheryctl system start
Meshery should now be running in your Minikube cluster and Meshery UI should be accessible at the INTERNAL IP
of meshery
service.
Installation: Using mesheryctl
Use Meshery’s CLI to streamline your connection to your Minikube cluster. Configure Meshery to connect to your Minikube cluster by executing:
$ mesheryctl system config minikube
Once configured, execute the following command to start Meshery.
$ mesheryctl system start
If you encounter any authentication issues, you can use mesheryctl system login
. For more information, click here to learn more.
Installation: Using Helm
For detailed instructions on installing Meshery using Helm V3, please refer to the Helm Installation guide.
Installation: 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.
Installation: Docker Driver Users
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 >
Out-of-cluster Installation
Install Meshery on Docker (out-of-cluster) and connect it to your Minikube cluster.
Installation: Install Meshery on Docker
$ mesheryctl system start -p docker
Configure Meshery to connect to your cluster by executing:
$ mesheryctl system config minikube
Once you have verified that all the services are up and running, Meshery UI will be accessible on your local machine on port 9081. Open your browser and access Meshery at http://localhost:9081
.
Installation: Upload Config File in Meshery 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.
Post-Installation Steps
Optionally, you can verify the health of your Meshery deployment, using mesheryctl system check.
You’re ready to use Meshery! Open your browser and navigate to the Meshery UI.
Accessing Meshery UI
After successfully deploying Meshery, you can access Meshery’s web-based user interface. Your default browser will be automatically opened and directed to Meshery UI (default location is http://localhost:9081).
If you are unable to access Meshery UI, you can use the following command to open Meshery UI in your default browser:
mesheryctl system dashboard
If you have installed Meshery on Kubernetes or a remote host, you can access Meshery UI by exposing it as a Kubernetes service or by port forwarding to Meshery UI.
mesheryctl system dashboard --port-forward
Alternatively, you can use kubectl to port forward to Meshery UI. Example
kubectl port-forward svc/meshery 9081:9081 --namespace meshery
Log into the Provider of your choice.
Suggested Reading
- AKS - Manage your AKS clusters with Meshery. Deploy Meshery in AKS in-cluster or out-of-cluster.
- Codespaces - Build and contribute to Meshery using GitHub Codespaces
- EKS - Install Meshery on Elastic Kubernetes Service. Deploy Meshery in EKS in-cluster or outside of EKS out-of-cluster.
- GKE - Install Meshery on Google Kubernetes Engine. Deploy Meshery in GKE in-cluster or outside of GKE out-of-cluster.
- Helm - Install Meshery on Kubernetes using Helm. Deploy Meshery in Kubernetes in-cluster.
- kinD - Install Meshery on kinD. Deploy Meshery in kinD in-cluster or outside of kinD out-of-cluster.
- Kubernetes - Install Meshery on Kubernetes. Deploy Meshery in Kubernetes in-cluster or outside of Kubernetes out-of-cluster.
- KubeSphere - Install Meshery on KubeSphere
Recent Discussions with "meshery" Tag
- Mar 13 | Badge leveling system proposal
- Mar 20 | While running the command Make-server. localhost shows 404 not found. Are there any possible solution to fix also please suggest the setting up the project using docker route
- Feb 23 | Local Environment Setup TroubleShooting error
- Mar 20 | Meshery Development Meeting | March 20th 2024
- Mar 11 | [Help Wanted] A list of open DevOps-centric needs on Meshery projects
- Mar 17 | Error while deploying pod on meshmap
- Mar 15 | Meshery Build & Release Meeting | March 14th, 2024
- Mar 13 | Can i know ,is it possible to have admission controllers and CRD's in meshery catlog? or will support in future?
- Mar 13 | Meshery Development Meeting | March 13th 2024
- Mar 07 | Trying to deploy kyverno admission controller on meshery playground , but unexpectedly facing 42 errors