Skip to content

Commit c369f3e

Browse files
author
Sebastian Dehn
authored
Merge pull request #1 from openshift/master
Changed parameter names in Audit Configuration
2 parents 741a838 + 5578b96 commit c369f3e

31 files changed

+1003
-153
lines changed

README.adoc

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,6 @@ The following table provides quick links to help you get started.
3838

3939
For questions or comments about OpenShift documentation:
4040

41-
* OpenShift team members can be found on the http://webchat.freenode.net/?randomnick=1&channels=openshift&uio=d4[#openshift] and http://webchat.freenode.net/?randomnick=1&channels=openshift-dev&uio=d4[#openshift-dev channels] on http://www.freenode.net/[FreeNode].
41+
* OpenShift team members can be found on the http://webchat.freenode.net/?randomnick=1&channels=openshift&uio=d4[#openshift] and http://webchat.freenode.net/?randomnick=1&channels=openshift-dev&uio=d4[#openshift-dev] channels on http://www.freenode.net/[FreeNode].
4242
* You can also join the http://lists.openshift.redhat.com/openshiftmm/listinfo/users[Users] or http://lists.openshift.redhat.com/openshiftmm/listinfo/dev[Developers] mailing list.
4343
* Send an email to the OpenShift documentation team at [email protected].

_topic_map.yml

+5-1
Original file line numberDiff line numberDiff line change
@@ -375,8 +375,10 @@ Topics:
375375
File: ceph_example
376376
- Name: Complete Example Using GlusterFS
377377
File: gluster_example
378-
- Name: Dynamic Provisioning Example Using GlusterFS
378+
- Name: Dynamic Provisioning Example Using Containerized GlusterFS
379379
File: gluster_dynamic_example
380+
- Name: Dynamic Provisioning Example Using Dedicated GlusterFS
381+
File: dedicated_gluster_dynamic_example
380382
- Name: Mounting Volumes To Privileged Pods
381383
File: privileged_pod_storage
382384
- Name: Backing Docker Registry with GlusterFS Storage
@@ -714,6 +716,8 @@ Topics:
714716
File: jobs
715717
- Name: Cron Jobs
716718
File: cron_jobs
719+
- Name: Create from URL
720+
File: create_from_url
717721
- Name: Revision History
718722
File: revhistory_dev_guide
719723
Distros: openshift-enterprise,openshift-dedicated

admin_guide/ipsec.adoc

+14-14
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Internet Protocol (IP).
1818

1919
This topic shows how to secure communication of an entire IP subnet from which
2020
the {product-title} hosts receive their IP addresses, including all cluster
21-
management and pod data traffic.
21+
management and pod data traffic.
2222

2323
[NOTE]
2424
====
@@ -46,11 +46,11 @@ xref:../admin_guide/ipsec.adoc#admin-guide-ipsec-opportunistic-group-configurati
4646
group functionality] is required, then *libreswan* version 3.19 or later is
4747
required.
4848

49-
link:../install_config/configuring_sdn.html[Configure the SDN] MTU to allow
50-
space for the IPSec header. In the configuration described here IPSec requires
51-
62 bytes. If the cluster is operating on an ethernet network with an MTU of
52-
1500 then the SDN MTU should be 1388, to allow for the overhead of IPSec and
53-
the SDN encapsulation.
49+
xref:../install_config/configuring_sdn.adoc#install-config-configuring-sdn[Configure the SDN]
50+
MTU to allow space for the IPSec header. In the configuration described here
51+
IPSec requires 62 bytes. If the cluster is operating on an ethernet network with
52+
an MTU of 1500 then the SDN MTU should be 1388, to allow for the overhead of
53+
IPSec and the SDN encapsulation.
5454

5555
[[admin-guide-ipsec-certificates]]
5656
=== Step 2: Certificates
@@ -83,7 +83,7 @@ key files into a *_PKCS#12_* file, which is a common file format for multiple
8383
certificates and keys:
8484
+
8585
----
86-
openssl pkcs12 -export \
86+
# openssl pkcs12 -export \
8787
-in /path/to/client-certificate \
8888
-inkey /path/to/private-key \
8989
-certfile /path/to/certificate-authority \
@@ -220,13 +220,13 @@ conn <other_node_hostname>
220220
All nodes within the cluster need to allow IPSec related network traffic. This
221221
includes IP protocol numbers 50 and 51 as well as UDP port 500.
222222

223-
For example, if the cluster nodes communicate over interface eth0:
224-
+
225-
---
223+
For example, if the cluster nodes communicate over interface `eth0`:
224+
225+
----
226226
-A OS_FIREWALL_ALLOW -i eth0 -p 50 -j ACCEPT
227227
-A OS_FIREWALL_ALLOW -i eth0 -p 51 -j ACCEPT
228228
-A OS_FIREWALL_ALLOW -i eth0 -p udp --dport 500 -j ACCEPT
229-
---
229+
----
230230

231231
[NOTE]
232232
====
@@ -241,21 +241,21 @@ to normal cluster deployments.
241241
and begin encrypting:
242242
+
243243
----
244-
systemctl start ipsec
244+
# systemctl start ipsec
245245
----
246246

247247
. Enable the *ipsec* service to start on boot:
248248
+
249249
----
250-
systemctl enable ipsec
250+
# systemctl enable ipsec
251251
----
252252

253253
[[admin-guide-ipsec-troubleshooting]]
254254
== Troubleshooting
255255
When authentication cannot be completed between two hosts, you will not be able
256256
to ping between them, because all IP traffic will be rejected. If the `clear`
257257
policy is not configured correctly, you will also not be able to SSH to the host
258-
from another host in the cluster.
258+
from another host in the cluster.
259259

260260
You can use the `ipsec status` command to check that the `clear` and `private`
261261
policies have been loaded.

admin_guide/manage_nodes.adoc

+40-4
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ kubeletArguments:
402402
- "80"
403403
----
404404
405-
<1> Number of pods that can run on this kubelet.
405+
<1> xref:../admin_guide/manage_nodes.adoc#admin-guide-max-pods-per-node[Maximum number of pods that can run on this kubelet].
406406
<2> Resolver configuration file used as the basis for the container DNS
407407
resolution configuration.
408408
<3> The percent of disk usage after which image garbage collection is always run.
@@ -427,6 +427,42 @@ openshift_node_kubelet_args={'max-pods': ['40'], 'resolv-conf': ['/etc/resolv.co
427427
----
428428
====
429429

430+
[[admin-guide-max-pods-per-node]]
431+
=== Setting Maximum Pods Per Node
432+
433+
In the *_/etc/origin/node/node-config.yaml_* file, two parameters control the
434+
maximum number of pods that can be scheduled to a node: `pods-per-core` and
435+
`max-pods`. When both options are in use, the lower of the two limits the number
436+
of pods on a node.
437+
438+
`pods-per-core` sets the number of pods the node can run based on the number of
439+
processor cores on the node. For example, if `pods-per-core` is set to `10` on
440+
a node with 4 processor cores, the maxiumum number of pods allowed on the node
441+
will be 40.
442+
443+
====
444+
----
445+
kubeletArguments:
446+
pods-per-core:
447+
- 10
448+
----
449+
====
450+
451+
`max-pods` sets the number of pods the node can run to a fixed value, regardless
452+
of the properties of the node.
453+
454+
====
455+
----
456+
kubeletArguments:
457+
max-pods:
458+
- 250
459+
----
460+
====
461+
462+
Using the above example, the default value for `pods-per-core` is `10` and the
463+
default value for `max-pods` is `250`. This means that unless the node has 25
464+
cores or more, by default, `pods-per-core` will be the limiting factor.
465+
430466
[[manage-node-change-node-traffic-interface]]
431467
== Changing Node Traffic Interface
432468

@@ -445,17 +481,17 @@ where:
445481
- {product-title} is installed in a cloud provider where internal hostnames are not configured/resolvable by all hosts.
446482
- The node's IP from the master's perspective is not the same as the node's IP from its own perspective.
447483

448-
Configuring the `*openshift_node_set_node_ip*` Ansible variable
484+
Configuring the `*openshift_set_node_ip*` Ansible variable
449485
forces node traffic through an interface other than the default network
450486
interface.
451487

452488
To change the node traffic interface:
453489

454-
. Set the `*openshift_node_set_node_ip*` Ansible variable to `true`.
490+
. Set the `*openshift_set_node_ip*` Ansible variable to `true`.
455491
. Set the `*openshift_ip*` to the IP address for the node you want to configure.
456492
[NOTE]
457493
====
458-
Although `*openshift_node_set_node_ip*` can be useful as a workaround for the
494+
Although `*openshift_set_node_ip*` can be useful as a workaround for the
459495
cases stated in this section, it is generally not suited for production
460496
environments. This is because the node will no longer function properly if it
461497
receives a new IP address.

admin_guide/seccomp.adoc

+4-4
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ the security constraints of an individual system.
6666
To create your own custom profile, create a file on every node in the
6767
`seccomp-profile-root` directory.
6868
+
69-
If you are using the default *runtime/default* profile, you do not need to
69+
If you are using the default *docker/default* profile, you do not need to
7070
create one.
7171

7272
. Configure your nodes to use the *seccomp-profile-root* where your profiles
@@ -98,15 +98,15 @@ default.
9898
+
9999
The allowable formats of the *seccompProfiles* field include:
100100
+
101-
* *runtime/default*: the default profile for the container runtime (no profile required)
101+
* *docker/default*: the default profile for the container runtime (no profile required)
102102
* *unconfined*: unconfined profile, and disables seccomp
103103
* *localhost/<profile-name>*: the profile installed to the node's local seccomp profile root
104104
+
105-
For example, if you are using the default *runtime/default* profile, configure the *restricted* SCC with:
105+
For example, if you are using the default *docker/default* profile, configure the *restricted* SCC with:
106106
+
107107
----
108108
seccompProfiles:
109-
- runtime/default
109+
- docker/default
110110
----
111111

112112
[[seccomp-configuring-openshift-with-custom-seccomp]]

architecture/core_concepts/routes.adoc

+113-3
Original file line numberDiff line numberDiff line change
@@ -229,17 +229,18 @@ $ oc set env dc/router HAPROXY_ROUTER_SYSLOG_ADDRESS=127.0.0.1 HAPROXY_ROUTER_LO
229229
|`*ROUTER_SERVICE_NAMESPACE*` | | The namespace the router identifies itself in the in route status. Required if `ROUTER_SERVICE_NAME` is used.
230230
|`*ROUTER_SERVICE_NO_SNI_PORT*` | 10443 | Internal port for some front-end to back-end communication (see note below).
231231
|`*ROUTER_SERVICE_SNI_PORT*` | 10444 | Internal port for some front-end to back-end communication (see note below).
232+
|`*ROUTER_SLOWLORIS_HTTP_KEEPALIVE*` | 300s | Set the maximum time to wait for a new HTTP request to appear. If this is set too low, it can confuse browsers and applications not expecting a small `keepalive` value.
232233
|`*ROUTER_SLOWLORIS_TIMEOUT*` | 10s | Length of time the transmission of an HTTP request can take.
233-
|`*ROUTER_SUBDOMAIN*`| | The template that should be used to generate the hostname for a route without spec.host (e.g. `${name}-${namespace}.myapps.mycompany.com`).
234+
|`*ROUTER_SUBDOMAIN*`| | The template that should be used to generate the host name for a route without spec.host (e.g. `${name}-${namespace}.myapps.mycompany.com`).
234235
|`*ROUTER_SYSLOG_ADDRESS*` | | Address to send log messages. Disabled if empty.
235236
|`*ROUTER_TCP_BALANCE_SCHEME*` | source | Load-balancing strategy for multiple endpoints for pass-through routes. Available options are `source`, `roundrobin`, or `leastconn`.
236237
|`*ROUTER_LOAD_BALANCE_ALGORITHM*` | leastconn | Load-balancing strategy routes with multiple endpoints. Available options are `source`, `roundrobin`, and `leastconn`.
237238
//|`*ROUTE_FIELDS*` | | A field selector to apply to routes to watch, empty means all.
238239
|`*ROUTE_LABELS*` | | A label selector to apply to the routes to watch, empty means all.
239240
|`*STATS_PASSWORD*` | | The password needed to access router stats (if the router implementation supports it).
240241
|`*STATS_PORT*` | | Port to expose statistics on (if the router implementation supports it). If not set, stats are not exposed.
241-
|`*STATS_USERNAME*` | | The username needed to access router stats (if the router implementation supports it).
242-
|`*TEMPLATE_FILE*` | `/var/lib/haproxy/conf/custom/haproxy-config-custom.template` | The path to the haproxy template file (in the image).
242+
|`*STATS_USERNAME*` | | The user name needed to access router stats (if the router implementation supports it).
243+
|`*TEMPLATE_FILE*` | `/var/lib/haproxy/conf/custom/haproxy-config-custom.template` | The path to the HAproxy template file (in the image).
243244
|`*RELOAD_INTERVAL*` | 12s | The minimum frequency the router is allowed to reload to accept new changes.
244245
|===
245246

@@ -1070,3 +1071,112 @@ The routers do not clear the `route status` field. To remove the stale entries
10701071
in the route status, use the
10711072
link:https://github.com/openshift/origin/blob/master/images/router/clear-route-status.sh[clear-route-status
10721073
script].
1074+
1075+
1076+
[[architecture-core-concepts-routes-deny-allow]]
1077+
== Denying or Allowing Certain Domains in Routes
1078+
1079+
A router can be configured to deny or allow a specific subset of domains from
1080+
the host names in a route using the `ROUTER_DENIED_DOMAINS` and
1081+
`ROUTER_ALLOWED_DOMAINS` environment variables.
1082+
1083+
[cols="2"]
1084+
|===
1085+
1086+
|`*ROUTER_DENIED_DOMAINS*` | Domains listed are not allowed in any indicated routes.
1087+
|`*ROUTER_ALLOWED_DOMAINS*` | Only the domains listed are allowed in any indicated routes.
1088+
1089+
|===
1090+
1091+
The domains in the list of denied domains take precedence over the list of
1092+
allowed domains. Meaning {product-title} first checks the deny list (if
1093+
applicable), and if the host name is not in the list of denied domains, it then
1094+
checks the list of allowed domains. However, the list of allowed domains is more
1095+
restrictive, and ensures that the router only admits routes with hosts that
1096+
belong to that list.
1097+
1098+
For example, to deny the `[*.]open.header.test`, `[*.]openshift.org` and
1099+
`[*.]block.it` routes for the `myrouter` route:
1100+
1101+
----
1102+
$ oadm router myrouter ...
1103+
$ oc set env dc/myrouter ROUTER_DENIED_DOMAINS="open.header.test, openshift.org, block.it"
1104+
----
1105+
1106+
This means that `myrouter` will admit the following based on the route's name:
1107+
1108+
----
1109+
$ oc expose service/<name> --hostname="foo.header.test"
1110+
$ oc expose service/<name> --hostname="www.allow.it"
1111+
$ oc expose service/<name> --hostname="www.openshift.test"
1112+
----
1113+
1114+
However, `myrouter` will deny the following:
1115+
1116+
----
1117+
$ oc expose service/<name> --hostname="open.header.test"
1118+
$ oc expose service/<name> --hostname="www.open.header.test"
1119+
$ oc expose service/<name> --hostname="block.it"
1120+
$ oc expose service/<name> --hostname="franco.baresi.block.it"
1121+
$ oc expose service/<name> --hostname="openshift.org"
1122+
$ oc expose service/<name> --hostname="api.openshift.org"
1123+
----
1124+
1125+
Alternatively, to block any routes where the host name is _not_ set to `[*.]stickshift.org` or `[*.]kates.net`:
1126+
1127+
----
1128+
$ oadm router myrouter ...
1129+
$ oc set env dc/myrouter ROUTER_ALLOWED_DOMAINS="stickshift.org, kates.net"
1130+
----
1131+
1132+
This means that the `myrouter` router will admit:
1133+
1134+
----
1135+
$ oc expose service/<name> --hostname="stickshift.org"
1136+
$ oc expose service/<name> --hostname="www.stickshift.org"
1137+
$ oc expose service/<name> --hostname="kates.net"
1138+
$ oc expose service/<name> --hostname="api.kates.net"
1139+
$ oc expose service/<name> --hostname="erno.r.kube.kates.net"
1140+
----
1141+
1142+
However, `myrouter` will deny the following:
1143+
1144+
----
1145+
$ oc expose service/<name> --hostname="www.open.header.test"
1146+
$ oc expose service/<name> --hostname="drive.ottomatic.org"
1147+
$ oc expose service/<name> --hostname="www.wayless.com"
1148+
$ oc expose service/<name> --hostname="www.deny.it"
1149+
----
1150+
1151+
To implement both scenarios, run:
1152+
1153+
----
1154+
$ oadm router adrouter ...
1155+
$ oc env dc/adrouter ROUTER_ALLOWED_DOMAINS="openshift.org, kates.net" \
1156+
ROUTER_DENIED_DOMAINS="ops.openshift.org, metrics.kates.net"
1157+
----
1158+
1159+
This will allow any routes where the host name is set to `[*.]openshift.org` or
1160+
`[*.]kates.net`, and not allow any routes where the host name is set to
1161+
`[*.]ops.openshift.org` or `[*.]metrics.kates.net`.
1162+
1163+
Therefore, the following will be denied:
1164+
1165+
----
1166+
$ oc expose service/<name> --hostname="www.open.header.test"
1167+
$ oc expose service/<name> --hostname="ops.openshift.org"
1168+
$ oc expose service/<name> --hostname="log.ops.openshift.org"
1169+
$ oc expose service/<name> --hostname="www.block.it"
1170+
$ oc expose service/<name> --hostname="metrics.kates.net"
1171+
$ oc expose service/<name> --hostname="int.metrics.kates.net"
1172+
----
1173+
1174+
However, the following will be allowed:
1175+
1176+
----
1177+
$ oc expose service/<name> --hostname="openshift.org"
1178+
$ oc expose service/<name> --hostname="api.openshift.org"
1179+
$ oc expose service/<name> --hostname="m.api.openshift.org"
1180+
$ oc expose service/<name> --hostname="kates.net"
1181+
$ oc expose service/<name> --hostname="api.kates.net"
1182+
----

dev_guide/app_tutorials/maven_tutorial.adoc

+3-3
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ to configure your build properly.
3030

3131
Furthermore, make sure that you give each pod enough resources to function. You
3232
may have to
33-
xref:../../dev_guide/deployment#creating-a-deployment-configuration[edit the pod
33+
xref:../../dev_guide/deployments/how_deployments_work.adoc#creating-a-deployment-configuration[edit the pod
3434
template] in the Nexus deployment configuration to request more resources.
3535

3636
[[nexus-setting-up-nexus]]
@@ -68,8 +68,8 @@ and the password is *admin123*.
6868
[NOTE]
6969
====
7070
Nexus comes pre-configured for the Central Repository, but you may need others
71-
for your application. For many Red Hat images, it is recommended to link:https://books.sonatype.com/nexus-book/reference/config-maven.html[add the
72-
*jboss-ga* repository] at link:https://maven.repository.redhat.com/ga/[Maven repository].
71+
for your application. For many Red Hat images, it is recommended to link:https://maven.repository.redhat.com/ga/[add the
72+
*jboss-ga* repository] at link:https://books.sonatype.com/nexus-book/reference/config-maven.html[Maven repository].
7373
====
7474

7575
[[nexus-using-probes-to-check-for-success]]

0 commit comments

Comments
 (0)