Skip to content

Part 1: Setup

What Will You Do

This is Part 1 of a multi-part, self-paced quick start exercise. In this part, you will configure a blueprint and deploy it to a cluster. Declarative specifications are also provided for this exercise.

Enable Service Mesh through a Blueprint

  • Under Infrastructure, navigate to Blueprints
  • Create a new custom blueprint, provide a name for it (e.g. demo-service-mesh)
  • Provide a version name (eg. v1), navigate to the Service Mesh section and select enable

Enable Service Mesh

  • Select istio-profile-minimal

Select Profile

  • Ensure that the Monitoring & Alerting managed system add-on is enabled, this is required for service mesh visibility

Enable Monitoring & Alerting

  • Click Save Changes

Assign Blueprint to the cluster

  • Navigate to the Clusters page
  • Click on the gear icon next to the cluster and select Update Blueprint
  • Select the Blueprint and the version (e.g. demo-service-mesh and v1) created in the previous section
  • Click Save and Publish

After the blueprint sync operation is complete, you can verify that the necessary components are installed in the cluster

Blueprint Assignment


Enable Service Mesh through Blueprints

You can alternatively enable Network Visibility by using the declarative blueprint spec YAML. For more information on automation via RCTL CLI, refer here

Below is a sample blueprint YAML that enables service mesh with istio-profile-minimal and enables monitoring add-on (which is required for service mesh visibility).

Important

Ensure that you update the "project: defaultproject" with the name of the project in your Org

apiVersion: infra.k8smgmt.io/v3
kind: Blueprint
metadata:
name: demo-bp
project: defaultproject
spec:
base:
    name: default
    version: 1.18.0
defaultAddons:
    csiSecretStoreConfig:
    providers: {}
    enableIngress: true
    enableLogging: false
    enableMonitoring: true
    enableVM: false
drift:
    enabled: false
meshRef:
    enabled: true              
    profile:
    name: istio-profile-minimal            
networkPolicy: {}
opaPolicy: {}
placement: {}
sharing:
    enabled: true
    projects:
    - name: project_1
    - name: project_2
type: custom
version: v1
  • Type the command below to create the new blueprint
rctl apply -f <path-to-filename>.yaml
  • Type the command below to verify creation of the blueprint
rctl get blueprint -v <blueprint_name>

Assign Blueprint to the cluster

You can alternatively assign the blueprint to the cluster using the RCTL command.

rctl update cluster <cluster_name> -b <blueprint_name> --blueprint-version <version_name>

Type the command below to verify creation of the blueprint

rctl get cluster -v <cluster_name>

Recap

At this point, you have the blueprint configured and deployed to the cluster.