Skip to main content
Version: 1.15.0

KubeSlice Controller Parameters

This topic describes the configuration parameters required to install the KubeSlice Controller and KubeSlice Manager, and create a project namespace.

KubeSlice Controller Configuration Parameters

The following tables describe the configuration parameters used to install the KubeSlice Controller. These parameters are required to create the KubeSlice Controller YAML file.

ParameterParameter TypeDescriptionRequired
globalObjectThis contains the configuration for global settings.Mandatory
KubesliceObjectThis contains the configuration for KubeSlice Controller.Mandatory
PrometheusObjectThis contains the configuration for Prometheus server.Mandatory
imagePullSecretsObjectThis contains the configuration to pull the Kubernetes dashboard image from.Mandatory

Global Parameters

These parameters are required to create the KubeSlice Controller YAML file.

ParameterParameter TypeDescriptionRequired
imageRegistryStringThe global image imageRegistry settings. The value must be docker.io/aveshasystems.Mandatory
ProfileObjectThis contains the configuration for OpenShift cluster.Mandatory
kubeTallyObjectThis contains the configuration for KubeTally.Optional

Profile Parameters

ParameterParameter TypeDescriptionRequired
openshiftStringThis is the controller settings for OpenShift cluster.Optional

KubeTally Parameters

The following table describes the configuration parameters used to enable cost management feature that is available on the KubeSlice Manager.

ParameterParameter TypeDescriptionRequired
enabledBooleanThis parameter value is set to false by default. If you want to use KubeTally, set the parameter value to true.Optional
postgresAddrStringThe IP or URL of the Postgres database.Mandatory
postgresPortStringThe port required to connect to the database.Mandatory
postgresUserStringThe username required to connect to the database.Mandatory
postgresPasswordStringThe password required to connect to the database.Mandatory
postgresDBStringThe database name.Mandatory
priceServiceTypeStringThe service type for the price service type.Mandatory
priceUpdaterWorkersStringThe number of workers for the price updater.Mandatory
prometheusUrlStringThe Prometheus URL for monitoring.Mandatory
dataProcessingHoursAgoStringThe data processing time window.Mandatory
chargeUpdaterScheduleStringThe cron expression to schedule charge updater.Mandatory
pricingUpdaterScheduleStringThe cron expression to schedule pricing updater.Mandatory

KubeSlice Parameters

This parameter contains the configuration object used in the KubeSlice Controller YAML file.

ParameterParameter TypeDescriptionRequired
controllerObjectThis contains the configuration for the KubeSlice Controller.Mandatory
prometheusObjectThis contains the configuration for Prometheus.Mandatory
eventsObjectThis contains the configuration for events.Optional
licenseObjectThis object describes the type of the license and its activation mode.Optional

Controller Parameters

This object contains the different parameters used in the KubeSlice Controller YAML file.

ParameterParameter TypeDescriptionRequired
loglevelStringThe log level of Controller. The default value is INFO. The other values are DEBUG or ERROR.Optional
rbacResourcePrefixStringThe RBAC resource prefix.Optional
projectnsPrefixStringThe project namespace prefix.Optional
endpointAlphaNumericThe URL of the Kubernetes control plane.Mandatory
kubeTallyObjectThe object that contains the kubeTally metrics cleanup interval.Only mandatory for resource cost management
replicationObjectThe object that contains the MinIO credentials required for replication slice.Only mandatory for replication slice

KubeTally Parameters

ParameterParameter TypeDescriptionRequired
enabledBooleanThe default value is false. If you want to switch to KubeTally, set the value to true.Optional

Replication Parameters

These parameters are required for installing MinIO that is a prerequisite for replication slice.

ParameterParameter TypeDescriptionRequired
minioObjectThis object contains the credentials, storage, and the Boolean expression to install MinIO. This object is required for replication slice.Only mandatory for replication slice

MinIO Parameters

These parameters are required for installing MinIO that is a prerequisite for replication slice.

ParameterParameter TypeDescriptionRequired
installBooleanThis is a Boolean expression to install MinIO and it must be set to true.Only mandatory for replication slice
storageStringThis value is the storage of the MinIO bucket in the controller that must be set to 1Gi.Only mandatory for replication slice
usernameStringThe user name you need to provide for installing MinIO.Only mandatory for replication slice
passwordStringThe password you need to provide for installing MinIO.Only mandatory for replication slice

Controller Prometheus Parameters

ParameterParameter TypeDescriptionRequired
enabledBooleanThis is a Boolean expression to enable the Prometheus server configuration. The value is true to enable the default Prometheus server.Optional
urlStringThis is the URL for the Prometheus service.Optional

Controller Events Parameters

ParameterParameter TypeDescriptionRequired
disabledStringThis is the Boolean expression to enabled to the Controller events. The default value is false. Set the value to true to enable the events.Optional

Controller License Parameters

This object contains the different parameters used in the KubeSlice Controller YAML file.

ParameterParameter TypeDescriptionRequired
typeStringThe type of the license for installing KubeSlice. The value must be kubeslice-trial-license for a trial license and kubeslice-vcpu-license for an enterprise License.Mandatory
modeStringThis is the license activation mode. For installing the KubeSlice Controller online, the value is auto, which is default. For installing the KubeSlice Controller on an airgap cluster, the value is manual.Optional
customerNameStringEnter a name of the user or organization to easily identify.Optional

Prometheus Configuration Parameters

These parameters are required to create the KubeSlice Controller YAML file.

Parameter TypeParameter TypeDescriptionRequired
imagePullSecretsObjectThe secrets tp pull the image.Mandatory
configmapReloadObjectThis contains the configuration for Prometheus config reloader.Mandatory
serverObjectThis contains the configuration for the Prometheus server.Mandatory

ImagePull Secrets Parameters

Parameter TypeParameter TypeDescriptionRequired
nameStringThis is the image name.Mandatory

Prometheus ConfigMap Reload Parameters

Parameter TypeParameter TypeDescriptionRequired
configmapReloadObjectThis contains the configuration for the Prometheus config reloader.Optional

Prometheus Parameters

Parameter TypeParameter TypeDescriptionRequired
PrometheusObjectThis contains the configuration for the Prometheus Config Reloader image.Optional

ConfigMap Reload Parameters

Parameter TypeParameter TypeDescriptionRequired
ImageObjectThis contains the Prometheus configMap image details.Optional

ConfigMap Reload Image Parameters

Parameter TypeParameter TypeDescriptionRequired
repositoryStringThe repository for the Prometheus config reloader image. The value must be docker.io/aveshasystems/prometheus-config-reloader.Optional
tagStringThe tag for the Prometheus server image (uses appVersion from Chart.yaml if not set)Optional
digestStringThe digest for the Prometheus server image (use tag if empty).Optional
pullPolicyStringThe Pull policy for the Prometheus server image.Optional

Prometheus Server Parameters

Parameter TypeParameter TypeDescriptionRequired
ImageObjectThis contains the information of the Prometheus configuration.Optional
serviceObjectThis contains the configuration for Prometheus server.Optional
persistentVolumeObjectThis contains the persistent volume configuration for Prometheus server.Optional
retentionAlphaNumericThis is the retention period for Prometheus. The default value is 30 days.Optional

Prometheus Server Image Parameters

Parameter TypeParameter TypeDescriptionRequired
repositoryStringThe repository for the Prometheus server image. The value must be docker.io/aveshasystems/prometheus.Optional
tagStringThe tag for the Prometheus server image (uses appVersion from Chart.yaml if not set).Optional
digestStringThe digest for the Prometheus server image (use tag if empty).Optional
pullPolicyStringThe Pull policy for the Prometheus server image.Optional

Prometheus Service Parameters

Parameter TypeParameter TypeDescriptionRequired
typeStringThe service type for the Prometheus server.Optional

Prometheus PV Parameters

Parameter TypeParameter TypeDescriptionRequired
enabledBooleanThis is the Boolean expression to enable or disable Persistent Volume claim (PVC) for Prometheus data.Optional
statefulSetNameOverrideStringThe override name for the created PVC (empty uses stateful set name).Optional
accessModesStringThe access modes for the PVC.Optional
labelsStringThe labels for the PVC.Optional
annotationsStringThe annotations for the PVC.Optional
existingClaimStringThe name of existing PVC to use (create manually if set).Optional
mountPathStringThe mount path for Prometheus data.Optional
sizeAlphaNumericThe size of the PVC.Optional

Image Pull Secret Parameters

note

The values required for this section were supplied during the registration process. Refer to your registration email.

These parameters are required to access the repository to pull the image. They are configured in the KubeSlice Controller YAML file.

ParameterParameter TypeDescriptionRequired
repositoryStringThis is the repository URL to pull the image from.Its value must always be https://index.docker.io/v1/.Mandatory
usernameStringThis is your username to log in to the repository.Mandatory
passwordStringThis is your user access token/password to log in to the repository.Mandatory
emailStringThis is your email address to log into the repository.Mandatory

KubeSlice Manager Configuration Parameters

The following tables describe the configuration parameters required to install the KubeSlice Manager. They are configured in the KubeSlice Manager YAML file.

ParameterParameter TypeDescriptionRequired
kubeTallyObjectThis object contains the configuration required to enable KubeTally.Optional
kubesliceObjectThis contains the configuration to pull the KubeSlice Manager and Kubernetes dashboard images from. This object also contains the proxy configuration to install the KubeSlice Manager.Mandatory
imagePullSecretsObjectThis contains the secrets to access the repository to pull the KubeSlice image from.Mandatory

KubeTally Parameters

The following tables describes the configuration parameters required to install KubeTally. They are configured in the KubeSlice Manager YAML file.

ParameterParameter TypeDescriptionRequired
costApiUrlStringThis contains the URL to access KubeTallyOptional but mandatory for KubeTally
enabledBooleanThis parameter enables KubeTally when it is set to true. The default value is false.Mandatory only for KubeTally

KubeSlice Parameters

The following table describes the configuration parameters required to install the KubeSlice Manager. They are configured in the KubeSlice Manager YAML file.

ParameterParameter TypeDescriptionRequired
dashboardObjectThis contains the configuration to pull the Kubernetes dashboard image from.Mandatory
uiproxyObjectThis contains the configuration to pull the UI proxy configuration from.Mandatory

Dashboard Parameters

This parameter is related to the Kubernetes dashboard that is installed as part of the KubeSlice Manager. It is configured in the KubeSlice Manager YAML file.

ParameterParameter TypeDescriptionRequired
enableBooleanThe default value is set to true. If you do not want the Kubernetes dashboard, then set this parameter value to false.Optional

UI Proxy Parameters

These parameters describe the KubeSlice Manager proxy information configured in the KubeSlice Manager YAML file.

ParameterParameter TypeDescriptionRequired
imageStringThis is the URL of the image.Mandatory
tagStringThis is a version of the image.Mandatory
pullPolicyStringThis policy indicates the condition when the image is pulled.Mandatory
serviceObjectThis indicates the type of the Kubernetes service.Mandatory

Service Parameters

ParameterParameter TypeDescriptionRequired
typeStringThis is the type of the service in Kubernetes to access a logical set of pods.Mandatory

KubeSlice Manager Image Pull Secret Parameters

These parameters are required to access the repository to pull the image. They are configured in the KubeSlice Manager YAML file.

ParameterParameter TypeDescriptionRequired
repositoryStringThis is the repository URL to pull the image from.Its value must always be https://index.docker.io/v1/.Mandatory
usernameStringThis is your username to log in to the repository.Mandatory
passwordStringThis is your user access token/password to log in to the repository.Mandatory
emailStringThis is your email address to log into the repository.Mandatory

Project Namespace Configuration Parameters

The following tables describe the parameters in the configuration file used to create the project namespace. These parameters are required for creating the project YAML file.

ParameterParameter TypeDescriptionRequired
apiVersionStringThe KubeSlice Controller API version. The value must be controller.kubeslice.io/v1alpha1.Mandatory
kindStringThe name of a Mandatory particular object schema. The value must be Project.Mandatory
metadataObjectThe metadata describes the parameters (names and types) and attributes that have been applied.Mandatory
specObjectThe specification of the desired state of an object.Mandatory

Project Metadata Parameters

These parameters are required for configuring the metadata in the project YAML file.

ParameterParameter TypeDescriptionRequired
nameStringThe name of the project you are creating. Each project should have a unique name.Mandatory
namespaceStringThe namespace on which you apply the project configuration file. The value must be kubeslice-controller.Mandatory

Project Spec Parameters

This parameter object is required for configuring the specification in the project YAML file.

ParameterParameter TypeDescriptionRequired
serviceAccountObjectTo specify permissions on the Project namespace.Mandatory

Service Account Parameters

A service account provides an identity for running processes in application pods. It contains the list of users configured in the project YAML file.

ParameterParameter TypeDescriptionRequired
readOnlyList of StringsThe user to be created with read-only permission.Optional
readWriteList of StringsThe user to be created with read-write permission.Optional