Skip to content

Commit 5ee2599

Browse files
authored
Merge pull request #64604 from mburke5678/rosa-admission-plugin
[OSDOCS-1138] OCP content port to ROSA and OSD: Admission Controller
2 parents ad7de46 + 92386c2 commit 5ee2599

File tree

5 files changed

+68
-0
lines changed

5 files changed

+68
-0
lines changed

_topic_maps/_topic_map_osd.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ Topics:
5656
File: policy-understand-availability
5757
- Name: Update life cycle
5858
File: osd-life-cycle
59+
# Created a new assembly in ROSA/OSD. In OCP, the assembly is in a book that is not in ROSA/OSD
60+
- Name: About admission plugins
61+
File: osd-admission-plug-ins
62+
Distros: openshift-dedicated
5963
---
6064
#Name: Tutorials
6165
#Dir: cloud_experts_tutorials

_topic_maps/_topic_map_rosa.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ Topics:
6969
File: rosa-policy-process-security
7070
- Name: SRE and service account access
7171
File: rosa-sre-access
72+
# Created a new assembly in ROSA/OSD. In OCP, the assembly is in a book that is not in ROSA/OSD
73+
- Name: About admission plugins
74+
File: rosa-admission-plug-ins
75+
Distros: openshift-rosa
7276
- Name: About IAM resources for ROSA with STS
7377
File: rosa-sts-about-iam-resources
7478
- Name: OpenID Connect Overview

modules/admission-plug-ins-default.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
[id="admission-plug-ins-default_{context}"]
66
= Default admission plugins
77

8+
ifndef::openshift-rosa,openshift-dedicated[]
89
//Future xref - A set of default admission plugins is enabled in {product-title} {product-version}. These default plugins contribute to fundamental control plane functionality, such as ingress policy, xref:../nodes/clusters/nodes-cluster-overcommit.adoc#nodes-cluster-resource-override_nodes-cluster-overcommit[cluster resource limit override] and quota policy.
10+
endif::openshift-rosa,openshift-dedicated[]
911
Default validating and admission plugins are enabled in {product-title} {product-version}. These default plugins contribute to fundamental control plane functionality, such as ingress policy, cluster resource limit override and quota policy.
1012

1113
include::snippets/default-projects.adoc[]

modules/admission-webhooks-about.adoc

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,26 @@ In addition to {product-title} default admission plugins, dynamic admission can
99

1010
There are two types of webhook admission plugins in {product-title}:
1111

12+
ifndef::openshift-rosa,openshift-dedicated[]
1213
//Future xref - * During the admission process, xref:../architecture/admission-plug-ins.adoc#mutating-admission-plug-in[the mutating admission plugin] can perform tasks, such as injecting affinity labels.
14+
endif::openshift-rosa,openshift-dedicated[]
15+
ifdef::openshift-rosa[]
16+
//Future xref - * During the admission process, xref:../rosa_architecture/rosa-admission-plug-ins.adoc#mutating-admission-plug-in[the mutating admission plugin] can perform tasks, such as injecting affinity labels.
17+
endif::openshift-rosa[]
18+
ifdef::openshift-dedicated[]
19+
//Future xref - * During the admission process, xref:../osd_architecture/osd-admission-plug-ins.adoc#mutating-admission-plug-in[the mutating admission plugin] can perform tasks, such as injecting affinity labels.
20+
endif::openshift-dedicated[]
1321
* During the admission process, the _mutating admission plugin_ can perform tasks, such as injecting affinity labels.
1422

23+
ifndef::openshift-rosa,openshift-dedicated[]
1524
//Future xref - * At the end of the admission process, xref:../architecture/admission-plug-ins.adoc#validating-admission-plug-in[the validating admission plugin] makes sure an object is configured properly, for example ensuring affinity labels are as expected. If the validation passes, {product-title} schedules the object as configured.
25+
endif::openshift-rosa,openshift-dedicated[]
26+
ifdef::openshift-rosa[]
27+
//Future xref - * At the end of the admission process, xref:../rosa_architecture/rosa-admission-plug-ins.html#validating-admission-plug-in_admission-plug-ins[the validating admission plugin] makes sure an object is configured properly, for example ensuring affinity labels are as expected. If the validation passes, {product-title} schedules the object as configured.
28+
endif::openshift-rosa[]
29+
ifdef::openshift-dedicated[]
30+
//Future xref - * At the end of the admission process, xref:../osd_architecture/osd-admission-plug-ins.html#validating-admission-plug-in_admission-plug-ins[the validating admission plugin] makes sure an object is configured properly, for example ensuring affinity labels are as expected. If the validation passes, {product-title} schedules the object as configured.
31+
endif::openshift-dedicated[]
1632
* At the end of the admission process, the _validating admission plugin_ can be used to make sure an object is configured properly, for example ensuring affinity labels are as expected. If the validation passes, {product-title} schedules the object as configured.
1733

1834
When an API request comes in, mutating or validating admission plugins use the list of external webhooks in the configuration and call them in parallel:
@@ -25,8 +41,10 @@ When an API request comes in, mutating or validating admission plugins use the l
2541

2642
* If an error is encountered when calling a webhook, the request is either denied or the webhook is ignored depending on the error policy set. If the error policy is set to `Ignore`, the request is unconditionally accepted in the event of a failure. If the policy is set to `Fail`, failed requests are denied. Using `Ignore` can result in unpredictable behavior for all clients.
2743

44+
ifndef::openshift-rosa,openshift-dedicated[]
2845
//Future xrefs - Communication between the webhook admission plugin and the webhook server must use TLS. Generate a certificate authority (CA) certificate and use the certificate to sign the server certificate that is used by your webhook server. The PEM-encoded CA certificate is supplied to the webhook admission plugin using a mechanism, such as xref:../security/certificates/service-serving-certificate.adoc#service-serving-certificate[service serving certificate secrets].
2946
Communication between the webhook admission plugin and the webhook server must use TLS. Generate a CA certificate and use the certificate to sign the server certificate that is used by your webhook admission server. The PEM-encoded CA certificate is supplied to the webhook admission plugin using a mechanism, such as service serving certificate secrets.
47+
endif::openshift-rosa,openshift-dedicated[]
3048

3149
The following diagram illustrates the sequential admission chain process within which multiple webhook servers are called.
3250

@@ -41,9 +59,11 @@ Some common webhook admission plugin use cases include:
4159
* Namespace reservation.
4260
//Future xrefs - * :../networking/hardware_networks/configuring-sriov-operator.adoc#configuring-sriov-operator[Limiting custom network resources managed by the SR-IOV network device plugin].
4361
* Limiting custom network resources managed by the SR-IOV network device plugin.
62+
ifndef::openshift-rosa,openshift-dedicated[]
4463
//Future xref - * xref:../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations_dedicating_nodes-scheduler-taints-tolerations[Defining tolerations that enable taints to qualify which pods should be scheduled on a node].
4564
* Defining tolerations that enable taints to qualify which pods should be scheduled on a node.
4665
//Future xref - * xref:../nodes/pods/nodes-pods-priority.adoc#admin-guide-priority-preemption-names_nodes-pods-priority[Pod priority class validation].
66+
endif::openshift-rosa,openshift-dedicated[]
4767
* Pod priority class validation.
4868

4969
[NOTE]
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
:_content-type: ASSEMBLY
2+
[id="osd-admission-plug-ins"]
3+
= Admission plugins
4+
include::_attributes/common-attributes.adoc[]
5+
:context: admission-plug-ins
6+
7+
toc::[]
8+
9+
10+
Admission plugins are used to help regulate how {product-title} functions.
11+
12+
// Concept modules
13+
include::modules/admission-plug-ins-about.adoc[leveloffset=+1]
14+
15+
include::modules/admission-plug-ins-default.adoc[leveloffset=+1]
16+
17+
include::modules/admission-webhooks-about.adoc[leveloffset=+1]
18+
19+
include::modules/admission-webhook-types.adoc[leveloffset=+1]
20+
21+
// user (groups=["dedicated-admins" "system:authenticated:oauth" "system:authenticated"]) is attempting to grant RBAC permissions not currently held, clusterroles.rbac.authorization.k8s.io "system:openshift:online:my-webhook-server" not found, cannot get resource "rolebindings", cannot create resource "apiservices", cannot create resource "validatingwebhookconfigurations"
22+
ifndef::openshift-rosa,openshift-dedicated[]
23+
// Procedure module
24+
include::modules/configuring-dynamic-admission.adoc[leveloffset=+1]
25+
endif::openshift-rosa,openshift-dedicated[]
26+
27+
[role="_additional-resources"]
28+
[id="admission-plug-ins-additional-resources"]
29+
== Additional resources
30+
31+
ifndef::openshift-rosa,openshift-dedicated[]
32+
* xref: /networking/hardware_networks/configuring-sriov-operator.adoc#configuring-sriov-operator[Limiting custom network resources managed by the SR-IOV network device plugin]
33+
endif::openshift-rosa,openshift-dedicated[]
34+
35+
* xref:../nodes/scheduling/nodes-scheduler-taints-tolerations.adoc#nodes-scheduler-taints-tolerations_dedicating_nodes-scheduler-taints-tolerations[Defining tolerations that enable taints to qualify which pods should be scheduled on a node]
36+
37+
* xref:../nodes/pods/nodes-pods-priority.adoc#admin-guide-priority-preemption-names_nodes-pods-priority[Pod priority class validation]
38+

0 commit comments

Comments
 (0)