Skip to content

Commit cded03c

Browse files
Miciahbrice
authored and
brice
committed
[dedicated-3.6] managing_networking: Document routes/custom-host
Change the heading "Disabling Host Name Collision Prevention For Ingress Objects" read "Routes and Ingress Objects" because the section discusses both routes and ingresses. Reorder the text to first state what host name collision prevention is, then its purpose, and then how to disable it. Explicitly state that the cluster administrator can edit the host name on an existing route. Document how to disable host name collision prevention for routes. Add a "WARNING" marker to the text that explains about host name hijacking. This commit fixes bug 1536340. https://bugzilla.redhat.com/show_bug.cgi?id=1536340 (cherry picked from commit 4e7bc64) xref:#7398
1 parent c5f0483 commit cded03c

File tree

1 file changed

+33
-11
lines changed

1 file changed

+33
-11
lines changed

admin_guide/managing_networking.adoc

+33-11
Original file line numberDiff line numberDiff line change
@@ -79,19 +79,41 @@ Alternatively, instead of specifying specific project names, you can use the
7979
`--selector=<project_selector>` option.
8080

8181
[[admin-guide-disabling-hostname-collision]]
82-
== Disabling Host Name Collision Prevention For Ingress Objects
82+
== Disabling Host Name Collision Prevention For Routes and Ingress Objects
8383

8484
In {product-title}, host name collision prevention for routes and ingress
85-
objects is enabled by default. This means that the host name in a route or
86-
ingress object can only be set on creation and not edited afterwards. Disabling
87-
host name collision prevention lets you edit a host name for ingress objects after creation.
88-
However, because {product-title} uses the object creation timestamp to determine
89-
the oldest route or ingress object for a given host name, the route or ingress
90-
object can hijack a host name with a newer route. This can happen if an older
91-
route changes its host name, or if an ingress object is introduced.
92-
93-
This is relevant to {product-title} installations that depend upon Kubernetes
94-
behavior, including allowing the host names in ingress objects be edited.
85+
objects is enabled by default. This means that users without the *cluster-admin*
86+
role can set the host name in a route or ingress object only on creation and
87+
cannot change it afterwards. However, you can relax this restriction on routes
88+
and ingress objects for some or all users.
89+
90+
[WARNING]
91+
====
92+
Because {product-title} uses the object creation timestamp to determine the
93+
oldest route or ingress object for a given host name, a route or ingress object
94+
can hijack a host name of a newer route if the older route changes its host
95+
name, or if an ingress object is introduced.
96+
====
97+
98+
As an {product-title} cluster administrator, you can edit the host name in a
99+
route even after creation. You can also create a role to allow specific users
100+
to do so:
101+
102+
----
103+
$ oc create clusterrole route-editor --verb=update --resource=routes.route.openshift.io/custom-host
104+
----
105+
106+
You can then bind the new role to a user:
107+
108+
----
109+
$ oc adm policy add-cluster-role-to-user route-editor user
110+
----
111+
112+
You can also disable host name collision prevention for ingress objects. Doing
113+
so lets users without the *cluster-admin* role edit a host name for ingress
114+
objects after creation. This is useful to {product-title} installations that
115+
depend upon Kubernetes behavior, including allowing the host names in ingress
116+
objects be edited.
95117

96118
. Add the following to the `master.yaml` file:
97119
+

0 commit comments

Comments
 (0)