Skip to content

Environment validation💣

Istio is installed as part of BigBang’s helm chart values. After setting up the environment as described on the BigBang Quickstart, lets validate that we have a working Istio installation.

Verify that Istio is installed💣

  1. List Kubernetes namespaces and note the new namespace istio-system

    kubectl get ns
    
  2. Verify that the istiod controller pod is running in that namespace

    kubectl get pod -n istio-system
    

Add istioctl to your PATH💣

The recommended tool to interact with Istio over the command line is called istioctl, lets download an Istio distribution to get the CLI tool installed:

  1. Run the following command from your home directory.

    curl -L https://istio.io/downloadIstio | ISTIO_VERSION={{istio.version}} sh -
    
  2. Navigate into the directory created by the above command.

    cd istio-{{istio.version}}
    

The istioctl CLI is located in the bin/ subdirectory.

  1. Create a bin subdirectory in your home directory:

    mkdir ~/bin
    
  2. Copy the CLI to that subdirectory:

    cp ./bin/istioctl ~/bin
    
  3. Add your home bin subdirectory to your PATH

    cat << EOF >> ~/.bashrc
    
    export PATH="~/bin:\$PATH"
    
    EOF
    

    And then:

    source ~/.bashrc
    

Verify that istioctl is installed with:

istioctl version
  1. Run istioctl version. The output should include a control plane version, indicating that Istio is indeed present in the cluster.

Artifacts💣

The lab instructions reference Kubernetes yaml artifacts that you will need to apply to your cluster at specific points in time.

You have the option of copying and pasting the yaml snippets directly from the lab instructions as you encounter them.

Another option is to clone the repository for this workshop. You will find all yaml artifacts in the subdirectory named artifacts.

git clone https://repo1.dso.mil/platform-one/onboarding/istio-training && \
  mv istio-training/artifacts . && \
  rm -rf istio-training

Tip

This workshop makes extensive use of the kubectl CLI.

Consider configuring an alias to make typing a little easier.

cat << EOF >> ~/.bashrc

source <(kubectl completion bash)
alias k=kubectl
complete -F __start_kubectl k

EOF

source ~/.bashrc

Next💣

With Istio installed and a proper environment, we are ready to deep dive into Istio’s architecture.