Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions instance-applications/115-ibm-aiservice-tenant/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,18 @@ ibm_aiservice_tenant:
tenant_entitlement_end_date: string

aiservice_operator_log_level: string

# Operator Resource Configuration (optional, requires catalog_channel 9.2.x+)
# Sets resource requests/limits on the tenant operator container via the
# Subscription spec.config field. Accepts any valid SubscriptionConfig object.
tenant_operator_config:
resources:
requests:
cpu: string
memory: string
limits:
cpu: string
memory: string
```

**Note**: Values marked with "(secret reference)" should use the format `<path:secrets/path:key>` to reference secrets stored in the Secrets Vault.
Expand Down Expand Up @@ -194,6 +206,27 @@ ibm_aiservice_tenant:
value: inference
```

### Tenant with Custom Operator Resource Limits (9.2.x+)

Use `tenant_operator_config` to set resource requests and limits on the tenant operator pod. This maps directly to the [`spec.config`](https://github.com/operator-framework/operator-lifecycle-manager/blob/master/doc/design/subscription-config.md) field of the OLM `Subscription` resource.

```yaml
ibm_aiservice_tenant:
# Specify all parameters as per above example

# Operator Resource Configuration
tenant_operator_config:
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
```

Any valid [`SubscriptionConfig`](https://pkg.go.dev/github.com/operator-framework/api/pkg/operators/v1alpha1#SubscriptionConfig) field is accepted (e.g. `env`, `volumes`, `tolerations`, `nodeSelector`).


## Prerequisites

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,7 @@ spec:
name: ibm-aiservice-tenant
source: "{{ .Values.catalog_source }}"
sourceNamespace: openshift-marketplace
{{- if .Values.tenant_operator_config }}
config: {{ .Values.tenant_operator_config | toYaml | nindent 4 }}
{{- end }}
{{- end }}
1 change: 1 addition & 0 deletions instance-applications/115-ibm-aiservice-tenant/values.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
catalog_channel: "9.2.x-dev"
catalog_source: ibm-operator-catalog
tenant_operator_config: {}

# FVT Environment Configuration
ibm_aiservice_tenant:
Expand Down
3 changes: 2 additions & 1 deletion root-applications/ibm-aiservice-tenant-root/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ The following parameters are passed from the parent AI Service Instance Root App
| `avp.values_varname` | Vault values variable name | `HELM_VALUES` |
| `auto_delete` | Enable auto-pruning | `false` |
| `cluster.url` | Kubernetes API URL | `https://kubernetes.default.svc` |
| `ibm_aiservice_tenant.tenant_operator_config` | OLM `SubscriptionConfig` object applied to the tenant operator `Subscription` `spec.config` field. Use to set resource requests/limits, env vars, tolerations, etc. on the operator pod. Optional; omit to use operator defaults. | `{}` |

## ArgoCD Applications

Expand Down Expand Up @@ -200,7 +201,7 @@ config-repo/
│ └── aiservice-tenant-params.yaml # Required
```

See the [AI Service Tenant Chart](../../instance-applications/115-ibm-aiservice-tenant/README.md) for detailed tenant configuration examples.
See the [AI Service Tenant Chart](../../instance-applications/115-ibm-aiservice-tenant/README.md) for detailed tenant configuration examples, including `tenant_operator_config` usage.

## Prerequisites

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,10 @@ spec:
value: |
catalog_source: "{{ .Values.ibm_aiservice_tenant.catalog_source }}"
catalog_channel: "{{ .Values.ibm_aiservice_tenant.catalog_channel }}"
aiservice_tenant_install_plan_approval: "{{ .Values.ibm_aiservice_tenant.aiservice_tenant_install_plan_approval }}"
aiservice_tenant_install_plan_approval: "{{ .Values.ibm_aiservice_tenant.aiservice_tenant_install_plan_approval }}"
{{- if .Values.ibm_aiservice_tenant.tenant_operator_config }}
tenant_operator_config: {{ .Values.ibm_aiservice_tenant.tenant_operator_config | toYaml | nindent 14 }}
{{- end }}

tenant_id: "{{ .Values.ibm_aiservice_tenant.tenant_id }}"
aiservice_instance_id: "{{ .Values.ibm_aiservice_tenant.aiservice_instance_id }}"
Expand Down
1 change: 1 addition & 0 deletions root-applications/ibm-aiservice-tenant-root/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,7 @@ ibm_aiservice:
ibm_aiservice_tenant:
catalog_channel: ""
catalog_source: "ibm-operator-catalog"
tenant_operator_config: {}

mas_instance_id: "MAS_INSTANCE_ID"
aiservice_namespace: 'mas-{{ mas_instance_id }}-aiservice'
Expand Down
Loading