Skip to content

Commit 8b344bb

Browse files
Miciahbrice
authored and
brice
committed
[enterprise-3.9] 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:openshift#7398
1 parent 71b8a7b commit 8b344bb

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
@@ -86,19 +86,41 @@ Alternatively, instead of specifying specific project names, you can use the
8686
`--selector=<project_selector>` option.
8787

8888
[[admin-guide-disabling-hostname-collision]]
89-
== Disabling Host Name Collision Prevention For Ingress Objects
89+
== Disabling Host Name Collision Prevention For Routes and Ingress Objects
9090

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

103125
. Add the following to the `master.yaml` file:
104126
+

0 commit comments

Comments
 (0)