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 operator to ignore this setting. A cluster admin may do this to ensure the 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 operator to
ignore this setting. A cluster admin may do this to ensure the 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 role that will be executed in order to install OSSM Console.
This also indirectly determines the version of OSSM Console that will be installed.
You normally will want to use default
since this is the only officially supported value today.
If not specified, the value of default
is assumed which means the most recent Ansible role is used;
thus the most recent release of OSSM Console will be installed.
Refer to this file to see what the valid values are for this version
field (as 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 documentation for those settings below for
additional details. In short, this version
setting will dictate which version of the
OSSM Console image will be deployed by default. However, if you explicitly set deployment.imageName
and/or deployment.imageVersion
to reference your own custom image, that will override the
default OSSM Console image to be installed; therefore, you are responsible for ensuring those settings
are compatible with the Ansible role that will be executed in order to install OSSM Console (i.e. your
custom OSSM Console 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.