This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

CAP Operator Manager

CAP Operator Manager is an operator based on Kyma lifecycle manager to install the CAP Operator. This operator uses component-operator-runtime framework to manage it’s lifecycle.

workflow

1 - Installation

How to install CAP Operator using CAP Operator Manager

This page provides an overview of available methods to install the CAP Operator on a Kubernetes cluster using CAP Operator Manager.

1.1 - Kyma Cluster

How to install CAP Operator using CAP Operator Manager in a Kyma cluster

Install CAP Operator

  • To install CAP Operator, open your Kyma busola dashboard and navigate to the kyma-system namespace.

    kyma-namespace

  • On the left tab, expand the section Kyma and open Module Templates. Here, you will be able to see two entries - cap-operator-fast and cap-operator-regular. Currently, the version of CAP Operator is the same on both channels. So you can install anyone of them.

    kyma-module-template

  • Open the Kyma section from the left tab.

    kyma-default

  • Open resource default and click on Edit.

    kyma-default-edit

  • Under the Modules section, check cap-operator and click on update.

    kyma-default-edit-select-cap-op

  • Now the Kyma lifecycle manager will first install the CAP Operator Manager and then the CAP Operator Manager will install the CAP Operator using the below default resource.

apiVersion: operator.sme.sap.com/v1alpha1
kind: CAPOperator
metadata:
  name: cap-operator
spec:
  subscriptionServer:
    subDomain: cap-op
  ingressGatewayLabels:
    - name: istio
      value: ingressgateway
    - name: app
      value: istio-ingressgateway

kyma-kyma-cap-op-installing

  • Once the CAP Operator is installed, the module state as well as the kyma resource state will be Ready.

    kyma-kyma-cap-op-ready

  • After the CAP Operator is installed, you will be able to see a new section CAP Operator on the left tab. Under this tab, there will be a section for each of the CAP Operator resources. Using this, you can navigate through the CAP Operator resources once the CAP application is installed.

    kyma-kyma-cap-op-resources

1.2 - Local Cluster

How to install CAP Operator using CAP Operator Manager in a local cluster

Install CAP Operator Manager

To install the latest version of CAP Operator Manager, please execute the following command:

kubectl apply -f https://github.com/SAP/cap-operator-lifecycle/releases/download/manager%2Fv0.0.1/manager_manifest.yaml

This would create namespace cap-operator-system with CAP Operator Manager installed.

cap-op-man-install

Install CAP Operator using CAP Operator Manager

Once the CAP Operator Manager is running, you can install CAP operator by executing the following command:

kubectl apply -n cap-operator-system -f https://github.com/SAP/cap-operator-lifecycle/releases/download/manager%2Fv0.0.1/manager_default_CR.yaml

This would work only if the ingressGatewayLabels in your clusters matches the following values:

  ingressGatewayLabels:
    - name: istio
      value: ingressgateway
    - name: app
      value: istio-ingressgateway

If not, you will have to manually create the CAPOperator resource by applying below yaml to cap-operator-system namespace after filling the ingressGatewayLabels values from your cluster.

apiVersion: operator.sme.sap.com/v1alpha1
kind: CAPOperator
metadata:
  name: cap-operator
spec:
  subscriptionServer:
    subDomain: cap-op
  ingressGatewayLabels:
    - name: <<--Label Name-->>
      value: <<--Label Value-->>
    - name: <<--Label Name-->>
      value: <<--Label Value-->>

Once the CAPOperator resource is created, the CAP Operator Manager will start installing the CAP Operator in the namespace. Once the resource is ready, you will be able to see the CAP Operator Pods running in the namespace.

cap-op-man-cr-ready

CAP Operator Pods:

cap-op-pods

2 - Resources

How to configure the CAP Operator Manager resources

CAP Operator Manager uses resource CAPOperator to install the CAP Operator. The CAPOperator resource has the following attributes -

  • dnsTarget string - Public ingress URL for the cluster Load Balancer
  • subDomain string - Subdomain of the CAP Operator subscription Server
  • ingressGatewayLabels - Labels used to identify the istio ingress-gateway component and its corresponding namespace. Usually {“app”:“istio-ingressgateway”,“istio”:“ingressgateway”}

The below example shows a fully configured CAPOperator resource:

apiVersion: operator.sme.sap.com/v1alpha1
kind: CAPOperator
metadata:
  name: cap-operator
spec:
  subscriptionServer:
    subDomain: cap-op
  ingressGatewayLabels:
    - name: istio
      value: ingressgateway
    - name: app
      value: istio-ingressgateway

Here, we will automatically determine the cluster shoot domain and install the CAP Operator by setting the subscription server domain and the DNS Target. The DNS target is derived using the ingressGatewayLabels. For the above example, if the determined the cluster shoot domain is test.stage.kyma.ondemand.com, then the domain will be set as cap-op.test.stage.kyma.ondemand.com by default.

Note: The length of the domain should be less than 64 characters. Depending up on your cluster shoot domain, please choose a length appropriate subdomain.

The user can also maintain the DNS Target manually. In such cases, we will take over the value as it is. The user can maintain the DNS Target as shown below:

apiVersion: operator.sme.sap.com/v1alpha1
kind: CAPOperator
metadata:
  name: cap-operator
spec:
  subscriptionServer:
    subDomain: cap-op
  dnsTarget: public-ingress-custom.test.stage.kyma.ondemand.com

3 - Support

How to get support and how to reach out

Bugs

To report a bug, please create an issue.

See anything missing? Please let us know or raise a PR.

Communication Channels

Reach out to the project team and the project community via the following communication channels: