You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/security-build-knative.adoc
+4-6Lines changed: 4 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,10 +4,8 @@
4
4
5
5
[id="security-build-knative_{context}"]
6
6
= Building Knative serverless applications
7
-
Relying on Kubernetes and Kourier, you can build, deploy
8
-
and manage serverless applications using
9
-
link:https://knative.dev/[Knative] in {product-title}.
10
-
As with other builds, you can use S2I images to build your containers,
11
-
then serve them using Knative services.
12
-
View Knative application builds through the
7
+
8
+
Relying on Kubernetes and Kourier, you can build, deploy, and manage serverless applications by using OpenShift Serverless in {product-title}.
9
+
10
+
As with other builds, you can use S2I images to build your containers, then serve them using Knative services. View Knative application builds through the
13
11
*Topology* view of the {product-title} web console.
* xref:../../applications/odc-viewing-application-composition-using-topology-view.adoc#odc-viewing-application-composition-using-topology-view[Viewing application composition using the Topology view]
Serverless is a cloud computing model where application developers do not need to provision servers or manage scaling for their applications. These routine tasks are abstracted away by the platform, allowing developers to push code to production more quickly than in traditional models.
10
-
11
9
{ServerlessProductName} simplifies the process of delivering code from development into production by reducing the need for infrastructure set up or back-end development by developers.
12
10
13
-
Developers on {ServerlessProductName} can use the provided Kubernetes native APIs, as well as familiar languages and frameworks, to deploy applications and container workloads.
11
+
Developers on {ServerlessProductName} can use the provided Kubernetes native APIs (Knative Serving and Eventing), as well as familiar languages and frameworks, to deploy applications and container workloads.
14
12
15
13
{ServerlessProductName} is based on the open source link:https://knative.dev/docs/[Knative project], which provides portability and consistency for hybrid and multi-cloud environments by enabling an enterprise-grade serverless platform.
16
14
17
15
[id="about-serverless-supported-configs"]
18
16
== Supported configurations
19
17
20
18
The set of supported features, configurations, and integrations for {ServerlessProductName}, current and past versions, are available at the link:https://access.redhat.com/articles/4912821[Supported Configurations page].
19
+
20
+
[id="about-serverless-serving"]
21
+
== Knative Serving
22
+
23
+
Knative Serving on {product-title} enables developers to write link:https://www.redhat.com/en/topics/cloud-native-apps[cloud-native applications] using link:https://www.redhat.com/en/topics/cloud-native-apps/what-is-serverless[serverless architecture].
24
+
25
+
Knative Serving supports deploying and managing cloud-native applications. It provides a set of objects as Kubernetes custom resource definitions (CRDs) that define and control the behavior of serverless workloads on an {product-title} cluster.
26
+
27
+
Developers use these CRDs to create custom resource (CR) instances that can be used as building blocks to address complex use cases. For example:
28
+
29
+
* Rapidly deploying serverless containers.
30
+
* Automatically scaling pods.
31
+
32
+
[id="about-serverless-eventing"]
33
+
== Knative Eventing
34
+
35
+
Knative Eventing on {product-title} enables developers to use an link:https://www.redhat.com/en/topics/integration/what-is-event-driven-architecture[event-driven architecture] with serverless applications.
36
+
37
+
An event-driven architecture is based on the concept of decoupled relationships between event producers and event consumers. Event producers create events, and event xref:../../serverless/knative_eventing/serverless-event-sinks.adoc#serverless-event-sinks[_sinks_], or consumers, receive events.
38
+
39
+
Knative Eventing uses standard HTTP POST requests to send and receive events between event producers and sinks. These events conform to the link:https://cloudevents.io[CloudEvents specifications], which enables creating, parsing, sending, and receiving events in any programming language.
40
+
41
+
Knative Eventing supports the following use cases:
42
+
43
+
Publish an event without creating a consumer:: You can send events to a broker as an HTTP POST, and use binding to decouple the destination configuration from your application that produces events.
44
+
45
+
Consume an event without creating a publisher:: You can use a trigger to consume events from a broker based on event attributes. The application receives events as an HTTP POST.
46
+
47
+
[id="additional-resources_about-serverless"]
48
+
== Additional resources
49
+
50
+
* For more information about CRDs, see xref:../../operators/understanding/crds/crd-extending-api-with-crds.adoc#crd-extending-api-with-crds[Extending the Kubernetes API with custom resource definitions].
51
+
52
+
* For more information about CRs, see xref:../../operators/understanding/crds/crd-managing-resources-from-crds.adoc#crd-managing-resources-from-crds[Managing resources from custom resource definitions].
To enable delivery to multiple types of sinks, Knative Eventing defines the following generic interfaces that can be implemented by multiple Kubernetes resources:
10
+
11
+
Addressable resources:: Able to receive and acknowledge an event delivered over HTTP to an address defined in the `status.address.url` field of the event. The Kubernetes `Service` resource also satisfies the addressable interface.
12
+
13
+
Callable resources:: Able to receive an event delivered over HTTP and transform it, returning `0` or `1` new events in the HTTP response payload. These returned events may be further processed in the same way that events from an external event source are processed.
14
+
15
+
You can propagate an event from an xref:../../serverless/event_sources/knative-event-sources.adoc#knative-event-sources[event source] to multiple event sinks by using:
16
+
17
+
* xref:../../serverless/channels/serverless-channels.adoc#serverless-channels[channels] and subscriptions, or
18
+
* xref:../../serverless/knative_eventing/serverless-using-brokers.adoc#serverless-using-brokers[brokers] and xref:../../serverless/knative_eventing/serverless-triggers.adoc#serverless-triggers[triggers].
Service:: The `service.serving.knative.dev` CRD automatically manages the life cycle of your workload to ensure that the application is deployed and reachable through the network. It creates a route, a configuration, and a new revision for each change to a user created service, or custom resource. Most developer interactions in Knative are carried out by modifying services.
10
+
11
+
Revision:: The `revision.serving.knative.dev` CRD is a point-in-time snapshot of the code and configuration for each modification made to the workload. Revisions are immutable objects and can be retained for as long as necessary.
12
+
13
+
Route:: The `route.serving.knative.dev` CRD maps a network endpoint to one or more revisions. You can manage the traffic in several ways, including fractional traffic and named routes.
14
+
15
+
Configuration:: The `configuration.serving.knative.dev` CRD maintains the desired state for your deployment. It provides a clean separation between code and configuration. Modifying a configuration creates a new revision.
0 commit comments