Skip to main content

KOBIL Shift-Operator configuration and deployment

Shift-Operator configuration and installation

Scope here is: Initial and sufficient configuration for the "shift-operator" metaconfiguration file "values.yaml" for installation of KOBIL Shift-Operator.

Necessary operations:
 - pull the KOBIL Shift-Operator metaconfiguration-file "values.yaml"
 - edit the KOBIL Shift-Operator metaconfiguration-file "values.yaml"
 - deploy the KOBIL Shift-Operator running helm install action

Pulling the KOBIL Shift-Operator Chart metconfiguration file "values.yaml"

  • You may download the full KOBIL Shift-Operator Chart package - and extracting this covering then the metaconfiguration-file "values.yaml" for KOBIL Shift in the root-directory

  • You may pull the KOBIL Shift-Operator "values.yaml" directly by running command:

    helm show values kobil/shift-operator > ./shift-values.yaml 

Editing the KOBIL Shift-Operator metaconfiguration file "values.yaml"

Editing the Shift-Operator "values.yaml" - major editing has to be done in the following sequence:

  • add the image pull secrets to the target namespace where KOBIL Shift-Operator and Shift will be deployed to.
  • set the credentials for the private KOBIL Chart repository. This is required as the KOBIL Shift-Operator will download KOBIL Shift sub-services Charts during KOBIL Shift deployment processing.
  • Configure further parameters as needed Shift-Operator Configuration

Create imagePullSecret

Ensure to have the imagePullSecret created first in the namespace before running the "helm install" for the KOBIL Shift Operator (see below section for imagePullSecret). Sample command to create the imagePullSecret is:

kubectl create secret -n \<shift_namespace\> docker-registry/registry-azure \   
--docker-server=http://kobilsystems.azurecr.io \
--docker-username=your_user_token_name \
--docker-password=your_password

The image pull secrets covers the authorization to download the required images to the target namespace where the Shift-Operator is deployed to. In case using a local repository the "docker-server" is most likely not the internet facing KOBIL Image Repo but the local network accessible (custom) Image Repo service.

Part of "values.yaml" for KOBIL Shift-Operator

global:
# -- Image pull secrets added to pod spec generated by this chart.
  imagePullSecrets:
  # this is the preallocated secret for private KOBIL Image repository or your local repository access
- name: registry-azure

# -- Docker registry for KOBIL provided docker images
 # this may cover local (proxy'd) image repo in customer environment
# default is KOBIL Image repository
registry: kobilsystems.azurecr.io

# -- Docker registry for public docker images
 # this may cover local (proxy'd) image repo / per default direct load from internet
registryPublic: docker.io

Adding KOBIL Chart repository access credentials

To add the private KOBIL Chart repository access credentials, update the metaconfiguration editing the parameter "helmRepo". The KOBIL Shift-Operator will download KOBIL Shift (sub-services) Charts during processing. In case you are using locally proxied Chart- and Image-Repos - you may adopt this by the key 'global.registry' and key 'helmRepo.url' (for custom chart repo).

Add the KOBIL Helm Repo credentials

Part of "values.yaml" for KOBIL Shift-Operator

helmRepo:
url: https://charts.kobil.com
  username: "" # add here KOBIL Chart repo access credentials
  password: ""  # add here KOBIL Chart repo access credentials

Deploying KOBIL Shift-Operator by "helm install" command

Deployment for KOBIL Shift-Operator is done via helm install

helm install <release_name> -f <metaconfiguration-file -n <shift_namespace> <repository-name> \   
--version <version_number>

Samples:

  # set version explicitly
helm install shift-operator -f ./shift-operator-values.yaml -n kobilshift kobil/shift-operator \
--version 0.12.0

# use the most current shift-operator chart for registered repository "kobil"
helm install shift-operator -f ./values.yaml kobil/shift-operator 2\>&1 | tee shift-operator.install.out

Verify the KOBIL Shift-Operator deployment

Once KOBIL Shift-Operator is deployed - find / check for the following:

 # find deployments   
kubectl get deployments -n <shift-namespace>
kubectl get crd | grep -i kobil # you should find at least servicegroups.shift.kobil.com

# find sub-services deployed by Shift-Operator
# once KOBIL Shift is deployed later listing the installed releases
helm list