OSSMConsole CR Reference
Example CR
(all values shown here are the defaults unless otherwise noted)apiVersion: kiali.io/v1alpha1
kind: OSSMConsole
metadata:
name: ossmconsole
annotations:
ansible.sdk.operatorframework.io/verbosity: "1"
spec:
version: "default"
deployment:
imageDigest: ""
imageName: ""
imagePullPolicy: "IfNotPresent"
# default: image_pull_secrets is an empty list
imagePullSecrets: ["image.pull.secret"]
imageVersion: ""
namespace: ""
kiali:
graph:
impl: "pf"
serviceName: ""
serviceNamespace: ""
servicePort: 0
Validating your OSSMConsole CR
A tool is available to allow you to check your own OSSMConsole CR to ensure it is valid. Simply download the validation script and run it, passing in the location of the OSSMConsole CRD you wish to validate with (e.g. the latest version is found here) and the location of your OSSMConsole CR. You must be connected to/logged into a cluster for this validation tool to work.
For example, to validate an OSSMConsole CR named ossmconsole
in the namespace istio-system
using the latest version of the OSSMConsole CRD, run the following:
bash <(curl -sL https://raw.githubusercontent.com/kiali/kiali-operator/master/crd-docs/bin/validate-ossmconsole-cr.sh) \ -crd https://raw.githubusercontent.com/kiali/kiali-operator/master/crd-docs/crd/kiali.io_ossmconsoles.yaml \ --cr-name ossmconsole \ -n istio-system
For additional help in using this validation tool, pass it the --help
option.
Properties
.spec
This is the CRD for the resources called OSSMConsole CRs. The OpenShift Service Mesh Console Operator will watch for resources of this type and when it detects an OSSMConsole CR has been added, deleted, or modified, it will install, uninstall, and update the associated OSSM Console installation.
.spec.deployment
.spec.deployment.imageDigest
If deployment.imageVersion
is a digest hash, this value indicates what type of digest it is. A typical value would be ‘sha256’. Note: do NOT prefix this value with a ‘@’.
.spec.deployment.imageName
Determines which OSSM Console image to download and install. If you set this to a specific name (i.e. you do not leave it as the default empty string), you must make sure that image is supported by the operator. If empty, the operator will use a known supported image name based on which version
was defined. Note that, as a security measure, a cluster admin may have configured the OSSM Console operator to ignore this setting. A cluster admin may do this to ensure the OSSM Console operator only installs a single, specific OSSM Console version, thus this setting may have no effect depending on how the operator itself was configured.
.spec.deployment.imagePullPolicy
The Kubernetes pull policy for the OSSM Console deployment. This is overridden to be ‘Always’ if deployment.imageVersion
is set to ‘latest’.
.spec.deployment.imagePullSecrets
The names of the secrets to be used when container images are to be pulled.
.spec.deployment.imagePullSecrets[*]
.spec.deployment.imageVersion
Determines which version of OSSM Console to install.
Choose ‘lastrelease’ to use the last OSSM Console release.
Choose ‘latest’ to use the latest image (which may or may not be a released version of the OSSM Console).
Choose ‘operator_version’ to use the image whose version is the same as the operator version.
Otherwise, you can set this to any valid OSSM Console version (such as ‘v1.0’) or any valid OSSM Console
digest hash (if you set this to a digest hash, you must indicate the digest in deployment.imageDigest
).
Note that if this is set to ‘latest’ then the deployment.imagePullPolicy
will be set to ‘Always’.
If you set this to a specific version (i.e. you do not leave it as the default empty string),
you must make sure that image is supported by the operator.
If empty, the operator will use a known supported image version based on which ‘version’ was defined.
Note that, as a security measure, a cluster admin may have configured the OSSM Console operator to
ignore this setting. A cluster admin may do this to ensure the OSSM Console operator only installs
a single, specific OSSM Console version, thus this setting may have no effect depending on how the
operator itself was configured.
.spec.deployment.namespace
The namespace into which OSSM Console is to be installed. If this is empty or not defined, the default will be the namespace where the OSSMConsole CR is located. Currently the only namespace supported is the namespace where the OSSMConsole CR is located.
.spec.kiali
.spec.kiali.graph
.spec.kiali.graph.impl
The graph implementation used by OSSMC. Possible values are ‘cy’ (Cytoscape) and ‘pf’ (Patternfly). By default the patternfly graph is used.
.spec.kiali.serviceName
The internal Kiali service that the OpenShift Console will use to proxy API calls. If empty, an attempt will be made to auto-discover it from the Kiali OpenShift Route.
.spec.kiali.serviceNamespace
The namespace where the Kiali service is deployed. If empty, an attempt will be made to auto-discover it from the Kiali OpenShift Route. It will assume that the OpenShift Route and the Kiali service are deployed in the same namespace.
.spec.kiali.servicePort
The internal port used by the Kiali service for the API. If empty, an attempt will be made to auto-discover it from the Kiali OpenShift Route.
.spec.version
The version of the Ansible playbook to execute in order to install that version of OSSM Console.
It is rare you will want to set this - if you are thinking of setting this, know what you are doing first.
The only supported value today is default
.
If not specified, a default version of OSSMC will be installed which will be the most recent release of OSSMC. Refer to this file to see where these values are defined in the master branch, https://github.com/kiali/kiali-operator/blob/master/playbooks/ossmconsole-default-supported-images.yml
This version setting affects the defaults of the deployment.imageName and deployment.imageVersion settings. See the comments for those settings below for additional details. But in short, this version setting will dictate which version of the OSSM Console image will be deployed by default. Note that if you explicitly set deployment.imageName and/or deployment.imageVersion you are responsible for ensuring those settings are compatible with this setting (i.e. the image must be compatible with the rest of the configuration and resources the operator will install).
.status
The processing status of this CR as reported by the OpenShift Service Mesh Console Operator.