Quick Start with EKS

Manage your EKS clusters with Meshery. Deploy Meshery in EKS in-cluster or outside of EKS out-of-cluster. Note: It is advisable to Install Meshery in your EKS clusters

Prerequisites

  1. Install the Meshery command line client, mesheryctl.
  2. Install kubectl on your local machine.
  3. Install AWS CLI, configured for your environment.
  4. Access to an active EKS cluster in AWS Account.

Also see: Install Meshery on Kubernetes

Available Deployment Methods

In-cluster Installation

Follow the steps below to install Meshery in your EKS cluster.

Prerequisites: Cluster Connectivity

  1. Verify your connection to an Elastic Kubernetes Services Cluster using AWS CLI.
  2. Login to AWS account using aws configure, if you are using a different method of authentication in AWS, please refer to AWS documentation.
  3. After successful login, set the cluster context.
aws eks update-kubeconfig --name [YOUR_CLUSTER_NAME] --region [YOUR_REGION]
  1. Optional: If you are using eksctl, follow the AWS documentation steps.
  2. Verify your kubeconfig’s current context.
kubectl config current-context

Installation: Using mesheryctl

Use Meshery’s CLI to streamline your connection to your EKS cluster. Configure Meshery to connect to your EKS cluster by executing:

$ mesheryctl system config eks

Once configured, execute the following command to start Meshery.

$ mesheryctl system start

Installation: Using Helm

For detailed instructions on installing Meshery using Helm V3, please refer to the Helm Installation guide.

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).

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

Depending upon how you have networking configured in Kubernetes, alternatively, you can use kubectl to port forward to Meshery UI.

$ kubectl port-forward svc/meshery 9081:9081 --namespace meshery

Verify Kubernetes Connection

After installing Meshery, regardless of the installation type, it is important to verify that your kubeconfig file has been uploaded correctly via the UI.

  1. In the Meshery UI, navigate to Lifecycle from the menu on the left.
  2. Click on Connections.
  3. Ensure that your cluster appears in the list of connections and is marked as Connected.
  4. Click on the cluster name to perform a ping test and confirm that Meshery can communicate with your cluster.
Customizing Your Meshery Provider Callback URL

Meshery Server supports customizing your Meshery Provider authentication flow callback URL. This is helpful when deploying Meshery behind multiple layers of networking infrastructure.

For production deployments, it is recommended to access the Meshery UI by setting up a reverse proxy or using a LoadBalancer. By specifying a custom redirect endpoint, you can ensure that authentication flows complete successfully, even when multiple routing layers are involved.

Note: For production deployments, it is important to preselect the choice of Remote Provider in order to control which identity providers authorized. Learn more about this in the Extensibility: Providers guide.

Define a custom callback URL by setting up the MESHERY_SERVER_CALLBACK_URL environment variable before installing Meshery.

To customize the authentication flow callback URL, use the following command:

$ MESHERY_SERVER_CALLBACK_URL=https://custom-host mesheryctl system start

Meshery should now be running in your Kubernetes cluster and the Meshery UI should be accessible at the EXTERNAL IP of the meshery service.

Out-of-cluster Installation

Out-of-cluster EKS deployments not currently supported

Install Meshery on Docker (out-of-cluster) and connect it to your EKS cluster.

Install Meshery on Docker

$ mesheryctl system start -p docker

Configure Meshery to connect to your cluster by executing:

$ mesheryctl system config eks

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.

Recent Discussions with "meshery" Tag

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
  • 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
  • Minikube - Install Meshery on Minikube. Deploy Meshery in Minikube in-cluster or outside of Minikube out-of-cluster.