DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Auditing Tools for Kubernetes
  • Code Security Remediation: What 50,000 Repositories Reveal About PR Scanning
  • Enterprise Java Applications: A Practical Guide to Securing Enterprise Applications with a Risk-Driven Architecture
  • Is My Application's Authentication and Authorization Secure and Scalable?

Trending

  • The Agentic Agile Office: Streamlining Enterprise Agile With Autonomous AI Agents
  • Testing AI-Infused Apps: A Dual-Layer Framework for AI Quality Assurance
  • Dear Micromanager: Your Distrust Has a Job; It’s Just Not the One You’re Doing
  • Solving the Mystery: Why Java RSS Grows in Docker on M1 Macs
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. Deployment
  4. How To Install Istio Using Helm Chart

How To Install Istio Using Helm Chart

Follow the steps to install the open-source Istio service mesh in your Kubernetes cluster using Helm charts.

By 
Pulak Das user avatar
Pulak Das
·
Aug. 16, 23 · Tutorial
Likes (2)
Comment
Save
Tweet
Share
3.7K Views

Join the DZone community and get the full member experience.

Join For Free

Istio service mesh helps DevOps engineers and architects manage the network and security of distributed applications without touching the application code.

In a previous blog, we explained How to get started with Istio in Kubernetes in 5 steps, where Istio’s command line tool, Istioctl, is used to install Istio. Here, let us see the steps to install Istio using Helm chats.

Prerequisites

  • Kubectl – Kubernetes command-line tool.
  • Helm – Package manager for Kubernetes.

Steps to Install Istio Using Helm Charts

There are three steps involved in the process, which should be done in the following order:

  1. Add the Istio repository to Helm.
  2. Install the Istio base chart.
  3. Install the Istio control plane.

After we complete the above steps, we will see how to verify if they are installed properly.

1. Add Istio Repository to Helm

The Istio repository contains the necessary configurations and Istio charts for installing Istio. The first step is to add it to Helm by running the command below.

Shell
 
helm repo add istio https://istio-release.storage.googleapis.com/charts


Now, update the Helm repository to get the latest charts:

Shell
 
helm repo update


adding istio repository to helm and updating helm charts


2. Install Istio Base Chart

Enter the following command to install the Istio base chart containing cluster-wide Custom Resource Definitions (CRDs). (Note that this is required for installing the Istio control plane.)

Shell
 
helm install istio-base istio/base -n istio-system --create-namespace --set defaultRevision=default


  • In the above command, istio-base and istio/base represent the chart name and the chart path, respectively.
  • The chart will be installed in the istio-system namespace. Since the namespace does not exist already, we passed the argument --create-namespace to create it. The namespace will set up the validator required for Istio.
  • defaultRevision: As the Istio base chart sets up  ValidatingWebhookConfiguration to perform resource validation, it is necessary to select a default revision that will be used for validation. We will use the default revision here.

You will see the below output if the installation is successful.


3. Install Istio Control Plane

The below command will install the Istio control plane component, Istiod, into the istio-system namespace.

Shell
 
helm install istiod istio/istiod -n istio-system --wait


Upon successful installation, it will return the following output:


Verify Istio Base and Istiod Deployment Status

By running the following command, we can see the deployment status of istio-base and istiod.

Shell
 
helm ls -n istio-system


We can see that the status is deployed for both of them in the output.


Also, run the following command to verify if it is actually running:

Shell
 
kubectl get deployments -n istio-system -o wide


We can see that the istiod service’s pod is running.


Video: Install Istio Using Helm Charts

Watch the following video to see all the above steps in action. There is an additional step in the video where the istioctl command is used to do a pre-check while installing istio-base. However, note that this step is completely optional.


If you are deploying Istio in a production environment, it is highly recommended to talk to an Istio expert beforehand. Because Istio is complex, like Kubernetes, many subtle errors can creep in while configuring service definitions or setting up Istio, particularly when you have applications deployed across multiple namespaces written by developers with varying experience levels.

Chart applications cluster Command (computing) Repository (version control) security

Published at DZone with permission of Pulak Das. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Auditing Tools for Kubernetes
  • Code Security Remediation: What 50,000 Repositories Reveal About PR Scanning
  • Enterprise Java Applications: A Practical Guide to Securing Enterprise Applications with a Risk-Driven Architecture
  • Is My Application's Authentication and Authorization Secure and Scalable?

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook