James Falkner
2020-03-12 92e5f31395261f0c0cd6dc7b1591b24b082b9095
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
apiVersion: operators.coreos.com/v1alpha1
kind: ClusterServiceVersion
metadata:
  annotations:
    certified: 'false'
    repository: 'https://github.com/openshift-knative/serverless-operator'
    support: 'Red Hat, Inc.'
    alm-examples: |-
      [
        {
          "apiVersion": "operator.knative.dev/v1alpha1",
          "kind": "KnativeServing",
          "metadata": {
            "name": "knative-serving"
          },
          "spec": {
            "config": {
              "autoscaler": {
                "container-concurrency-target-default": "100",
                "container-concurrency-target-percentage": "1.0",
                "enable-scale-to-zero": "true",
                "max-scale-up-rate": "10",
                "panic-threshold-percentage": "200.0",
                "panic-window": "6s",
                "panic-window-percentage": "10.0",
                "scale-to-zero-grace-period": "30s",
                "stable-window": "60s",
                "tick-interval": "2s"
              },
              "defaults": {
                "revision-cpu-limit": "1000m",
                "revision-cpu-request": "400m",
                "revision-memory-limit": "200M",
                "revision-memory-request": "100M",
                "revision-timeout-seconds": "300"
              },
              "deployment": {
                "registriesSkippingTagResolving": "ko.local,dev.local"
              },
              "gc": {
                "stale-revision-create-delay": "24h",
                "stale-revision-lastpinned-debounce": "5h",
                "stale-revision-minimum-generations": "1",
                "stale-revision-timeout": "15h"
              },
              "logging": {
                "loglevel.activator": "info",
                "loglevel.autoscaler": "info",
                "loglevel.controller": "info",
                "loglevel.queueproxy": "info",
                "loglevel.webhook": "info"
              },
              "observability": {
                "logging.enable-var-log-collection": "false",
                "metrics.backend-destination": "prometheus"
              },
              "tracing": {
                "backend": "none",
                "sample-rate": "0.1"
              }
            }
          }
        }
      ]
    capabilities: Seamless Upgrades
    olm.operatorNamespace: openshift-operators
    containerImage: >-
      registry.redhat.io/openshift-serverless-1-tech-preview/knative-rhel8-operator@sha256:55623cc6982e3b25d2077d6331f74d784f366eb2af1835f4b923be583e3bb35b
    categories: 'Networking,Integration & Delivery,Cloud Provider,Developer Tools'
    description: >-
      Provides a collection of API's based on Knative to support deploying and
      serving
      of serverless applications and functions.
    olm.operatorGroup: global-operators
  name: serverless-operator.v1.5.0
  namespace: openshift-operators
  labels:
    olm.api.75423c66e1c26296: provided
    olm.api.fceaacb4e1c6ac8c: provided
spec:
  customresourcedefinitions:
    owned:
      - description: Represents an installation of a particular version of Knative Serving
        displayName: Knative Serving
        kind: KnativeServing
        name: knativeservings.operator.knative.dev
        statusDescriptors:
          - description: The version of Knative Serving installed
            displayName: Version
            path: version
          - description: Conditions of Knative Serving installed
            displayName: Conditions
            path: conditions
            x-descriptors:
              - 'urn:alm:descriptor:io.kubernetes.conditions'
        version: v1alpha1
      - description: Represents an installation of a particular version of Knative Serving
        displayName: Knative Serving (obsolete)
        kind: KnativeServing
        name: knativeservings.serving.knative.dev
        statusDescriptors:
          - description: The version of Knative Serving installed
            displayName: Version
            path: version
          - description: Conditions of Knative Serving installed
            displayName: Conditions
            path: conditions
            x-descriptors:
              - 'urn:alm:descriptor:io.kubernetes.conditions'
        version: v1alpha1
  apiservicedefinitions: {}
  keywords:
    - serverless
    - FaaS
    - microservices
    - scale to zero
    - knative
    - serving
  displayName: OpenShift Serverless Operator
  provider:
    name: 'Red Hat, Inc.'
  maturity: alpha
  installModes:
    - supported: false
      type: OwnNamespace
    - supported: false
      type: SingleNamespace
    - supported: false
      type: MultiNamespace
    - supported: true
      type: AllNamespaces
  version: 1.5.0
  icon:
    - base64data: >-
        PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMDAgMTAwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2UwMzQwMDt9LmNscy0ye2ZpbGw6I2NlMmUwMDt9LmNscy0ze2ZpbGw6bm9uZTt9LmNscy00e2ZpbGw6I2ZmZjt9LmNscy01e2ZpbGw6I2RjZGNkYzt9LmNscy02e2ZpbGw6I2FhYTt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPlJlZF9IYXQtT3BlbnNoaWZ0NC1DYXRhbG9nX0ljb25zLVNlcnZlcmxlc3M8L3RpdGxlPjxjaXJjbGUgY2xhc3M9ImNscy0xIiBjeD0iNTAiIGN5PSI1MCIgcj0iNTAiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik04NS4zNiwxNC42NEE1MCw1MCwwLDAsMSwxNC42NCw4NS4zNloiLz48cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Ik00MC41Nyw0Ny40MmEzLjg5LDMuODksMCwxLDAsMy44OCwzLjg4QTMuODksMy44OSwwLDAsMCw0MC41Nyw0Ny40MloiLz48cGF0aCBjbGFzcz0iY2xzLTMiIGQ9Ik0yMS40Miw0Ny40MkEzLjg5LDMuODksMCwxLDAsMjUuMyw1MS4zLDMuODksMy44OSwwLDAsMCwyMS40Miw0Ny40MloiLz48cGF0aCBjbGFzcz0iY2xzLTQiIGQ9Ik01MC4wOSw0OC44NmgtLjE4YTQuMTEsNC4xMSwwLDAsMS0zLjI2LTEuNjMsNy42OSw3LjY5LDAsMCwwLTEyLjE2LDAsNC4xMyw0LjEzLDAsMCwxLTMuMjYsMS42M0gzMWE0LjA5LDQuMDksMCwwLDEtMy4yNS0xLjYzQTcuNjksNy42OSwwLDAsMCwxNCw1MS45M2gwVjY0LjZhMi43OSwyLjc5LDAsMCwwLDIuNzksMi43OWgxNS44TDUxLjM0LDQ4LjY2QTQsNCwwLDAsMSw1MC4wOSw0OC44NloiLz48cGF0aCBjbGFzcz0iY2xzLTUiIGQ9Ik03OC4wNSw0NC4yNWE3LjY1LDcuNjUsMCwwLDAtNS44NSwzQTQuMSw0LjEsMCwwLDEsNjksNDguODZoLS4xOWE0LjEzLDQuMTMsMCwwLDEtMy4yNi0xLjYzLDcuNjksNy42OSwwLDAsMC0xMi4xNiwwLDQuMTYsNC4xNiwwLDAsMS0yLDEuNDNMMzIuNjEsNjcuMzlIODMuMTlBMi43OSwyLjc5LDAsMCwwLDg2LDY0LjZWNTIuMDdBNy43Nyw3Ljc3LDAsMCwwLDc4LjA1LDQ0LjI1WiIvPjxwYXRoIGNsYXNzPSJjbHMtNiIgZD0iTTIxLjEsNjNoMTBhMS44MywxLjgzLDAsMSwwLDAtMy42NmgtMTBhMS44MywxLjgzLDAsMCwwLDAsMy42NloiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjQwLjU3IiBjeT0iMzcuNzMiIHI9IjIuMTUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjQwLjU3IiBjeT0iMjguMjMiIHI9IjEuMzUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjU5LjcyIiBjeT0iMjguMjMiIHI9IjEuMzUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjIxLjQyIiBjeT0iMzcuNzMiIHI9IjIuMTUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjUwIiBjeT0iNDMuNDUiIHI9IjIuOTMiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjY4Ljg5IiBjeT0iNDMuNDUiIHI9IjIuOTMiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjMxLjA5IiBjeT0iNDMuNDUiIHI9IjIuOTMiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNiIgY3g9Ijc3Ljk0IiBjeT0iNTQuMzEiIHI9IjIuMTUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNiIgY3g9IjY4LjkxIiBjeT0iNTQuMzEiIHI9IjIuMTUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9Ijc3Ljk0IiBjeT0iMzcuNzMiIHI9IjIuMTUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjU5LjcyIiBjeT0iMzcuNzMiIHI9IjIuMTUiLz48Y2lyY2xlIGNsYXNzPSJjbHMtNCIgY3g9IjUwIiBjeT0iMzMuMSIgcj0iMy4wMSIvPjxjaXJjbGUgY2xhc3M9ImNscy00IiBjeD0iMzEuMDkiIGN5PSIzMy4xIiByPSIzLjAxIi8+PGNpcmNsZSBjbGFzcz0iY2xzLTQiIGN4PSI2OC44OSIgY3k9IjMzLjEiIHI9IjMuMDEiLz48L3N2Zz4=
      mediatype: image/svg+xml
  minKubeVersion: 1.15.0
  links:
    - name: Documentation
      url: >-
        https://access.redhat.com/documentation/en-us/openshift_container_platform/4.2/html-single/serverless/index
    - name: Source Repository
      url: 'https://github.com/openshift-knative/serverless-operator'
  install:
    spec:
      clusterPermissions:
        - rules:
            - apiGroups:
                - '*'
              resources:
                - '*'
              verbs:
                - '*'
          serviceAccountName: knative-serving-operator
        - rules:
            - apiGroups:
                - ''
              resources:
                - pods
                - services
                - events
                - configmaps
              verbs:
                - '*'
            - apiGroups:
                - ''
              resources:
                - namespaces
              verbs:
                - get
            - apiGroups:
                - apps
              resources:
                - deployments
                - replicasets
              verbs:
                - '*'
            - apiGroups:
                - apiextensions.k8s.io
              resources:
                - customresourcedefinitions
              verbs:
                - '*'
            - apiGroups:
                - networking.k8s.io
              resources:
                - networkpolicies
              verbs:
                - '*'
            - apiGroups:
                - monitoring.coreos.com
              resources:
                - servicemonitors
              verbs:
                - get
                - create
            - apiGroups:
                - networking.internal.knative.dev
              resources:
                - clusteringresses
                - clusteringresses/status
                - clusteringresses/finalizers
                - ingresses
                - ingresses/status
                - ingresses/finalizers
              verbs:
                - '*'
            - apiGroups:
                - route.openshift.io
              resources:
                - routes
                - routes/custom-host
                - routes/status
                - routes/finalizers
              verbs:
                - '*'
            - apiGroups:
                - operator.knative.dev
              resources:
                - knativeservings
                - knativeservings/finalizers
              verbs:
                - '*'
          serviceAccountName: knative-openshift-ingress
      deployments:
        - name: knative-serving-operator
          spec:
            replicas: 1
            selector:
              matchLabels:
                name: knative-serving-operator
            template:
              metadata:
                annotations:
                  sidecar.istio.io/inject: 'false'
                labels:
                  name: knative-serving-operator
              spec:
                containers:
                  - env:
                      - name: POD_NAME
                        valueFrom:
                          fieldRef:
                            fieldPath: metadata.name
                      - name: OPERATOR_NAME
                        value: knative-serving-operator
                      - name: SYSTEM_NAMESPACE
                        valueFrom:
                          fieldRef:
                            fieldPath: metadata.namespace
                      - name: METRICS_DOMAIN
                        value: knative.dev/serving-operator
                      - name: KO_DATA_PATH
                        value: /tmp/
                    image: >-
                      registry.redhat.io/openshift-serverless-1-tech-preview/knative-serving-rhel8-operator@sha256:06847407883d00871a19b9183824d77895e68aa6439d80e0e4a4eb4151ec1c86
                    imagePullPolicy: IfNotPresent
                    name: knative-serving-operator
                    ports:
                      - containerPort: 9090
                        name: metrics
                    volumeMounts:
                      - mountPath: /tmp/knative-serving
                        name: release-manifest
                serviceAccountName: knative-serving-operator
                volumes:
                  - configMap:
                      items:
                        - key: knative-serving-v0.12.1.yaml
                          path: knative-serving-v0.12.1.yaml
                      name: ko-data
                    name: release-manifest
        - name: knative-serving-openshift
          spec:
            replicas: 1
            selector:
              matchLabels:
                name: knative-serving-openshift
            template:
              metadata:
                labels:
                  app: openshift-admission-server
                  name: knative-serving-openshift
              spec:
                containers:
                  - command:
                      - knative-serving-openshift
                    env:
                      - name: WATCH_NAMESPACE
                        value: ''
                      - name: POD_NAME
                        valueFrom:
                          fieldRef:
                            fieldPath: metadata.name
                      - name: OPERATOR_NAME
                        value: knative-serving-openshift
                      - name: MIN_OPENSHIFT_VERSION
                        value: 4.3.0
                      - name: REQUIRED_NAMESPACE
                        value: knative-serving
                      - name: KOURIER_MANIFEST_PATH
                        value: deploy/resources/kourier/kourier-latest.yaml
                      - name: IMAGE_queue-proxy
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/serving-queue-rhel8@sha256:63d3b837aacbec5967063be5eada4ab65b733f0dba088a6f9c518c5c1b409c9a
                      - name: IMAGE_activator
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/serving-activator-rhel8@sha256:b0c7030f235ec828a975ecc990e34ae2dc3bf88188c1f243f5568bd1a749c0e9
                      - name: IMAGE_autoscaler
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/serving-autoscaler-rhel8@sha256:2a3dade388c15f6c839b4e746e2ae80bc4a22c727a01d5c2d3f06609b234c08f
                      - name: IMAGE_autoscaler-hpa
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/serving-autoscaler-hpa-rhel8@sha256:98a68724567a8f6737223d5edccfd4021312649338c63742b6ccf1c08c89aabc
                      - name: IMAGE_controller
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/serving-controller-rhel8@sha256:e655d181bb8b50114f133c86cea6aaf1d1f6e00b848aaa6b94e0efdba2642959
                      - name: IMAGE_webhook
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/serving-webhook-rhel8@sha256:a3dd1619be816b6cc673ed4e3a610ae6832a1216841258356ce36687c90fb7f1
                      - name: IMAGE_3scale-kourier-gateway
                        value: >-
                          registry.redhat.io/openshift-service-mesh/proxyv2-rhel8@sha256:be1e61060e5663bc628147a1a56e16dd1fdba7a0f200eda75c6d997c18e15306
                      - name: IMAGE_3scale-kourier-control
                        value: >-
                          registry.redhat.io/openshift-serverless-1-tech-preview/kourier-control-rhel8@sha256:94106df34f035678962b3bf644f432b59e81b9978536d0827feb8cafac52831c
                    image: >-
                      registry.redhat.io/openshift-serverless-1-tech-preview/knative-rhel8-operator@sha256:55623cc6982e3b25d2077d6331f74d784f366eb2af1835f4b923be583e3bb35b
                    imagePullPolicy: Always
                    name: knative-serving-openshift
                serviceAccountName: knative-serving-operator
        - name: knative-openshift-ingress
          spec:
            replicas: 1
            selector:
              matchLabels:
                name: knative-openshift-ingress
            template:
              metadata:
                labels:
                  name: knative-openshift-ingress
              spec:
                containers:
                  - command:
                      - knative-openshift-ingress
                    env:
                      - name: WATCH_NAMESPACE
                        value: ''
                      - name: POD_NAME
                        valueFrom:
                          fieldRef:
                            fieldPath: metadata.name
                      - name: OPERATOR_NAME
                        value: knative-openshift-ingress
                    image: >-
                      registry.redhat.io/openshift-serverless-1-tech-preview/ingress-rhel8-operator@sha256:77d4e74c63b6f0930e2ecf14c611c17cd0d288b1216422476d909e655f5ee827
                    imagePullPolicy: Always
                    name: knative-openshift-ingress
                serviceAccountName: knative-openshift-ingress
      permissions:
        - rules:
            - apiGroups:
                - ''
              resources:
                - pods
                - services
                - endpoints
                - persistentvolumeclaims
                - events
                - configmaps
                - secrets
              verbs:
                - '*'
            - apiGroups:
                - ''
              resources:
                - namespaces
              verbs:
                - get
            - apiGroups:
                - apps
              resources:
                - deployments
                - daemonsets
                - replicasets
                - statefulsets
              verbs:
                - '*'
            - apiGroups:
                - monitoring.coreos.com
              resources:
                - servicemonitors
              verbs:
                - get
                - create
            - apiGroups:
                - apps
              resourceNames:
                - knative-serving-operator
              resources:
                - deployments/finalizers
              verbs:
                - update
            - apiGroups:
                - operator.knative.dev
              resources:
                - '*'
              verbs:
                - '*'
          serviceAccountName: knative-serving-operator
    strategy: deployment
  maintainers:
    - email: serverless-support@redhat.com
      name: Serverless Team
  description: >-
    The Red Hat Serverless Operator provides a collection of API's to
 
    install various "serverless" services.
 
 
    This is a **[Tech Preview
    release](https://access.redhat.com/support/offerings/techpreview)!**
 
 
    # Knative Serving
 
 
    Knative Serving builds on Kubernetes to support deploying and
 
    serving of serverless applications and functions. Serving is easy
 
    to get started with and scales to support advanced scenarios. The
 
    Knative Serving project provides middleware primitives that
 
    enable:
 
 
    - Rapid deployment of serverless containers
 
    - Automatic scaling up and down to zero
 
    - Routing and network programming
 
    - Point-in-time snapshots of deployed code and configurations
 
 
    ## Prerequisites
 
 
    The Serverless Operator's provided APIs such as Knative Serving
 
    have certain requirements with regards to the size of the underlying
 
    cluster. See [Getting started with OpenShift
    Serverless](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.3/html-single/serverless_applications/index#serverless-getting-started)
 
    for more info.
 
 
    ## Further Information
 
 
    For documentation on using Knative Serving, see the
 
    [serving
    section](https://access.redhat.com/documentation/en-us/openshift_container_platform/4.3/html-single/serverless_applications/index#knative-serving).
  replaces: serverless-operator.v1.4.1