@@ -14,10 +14,12 @@ endif::[]
14
14
ifdef::openshift-origin[]
15
15
:pb-prefix: ~/openshift-ansible/
16
16
endif::[]
17
+ include::_snippets/glusterfs.adoc[]
17
18
18
19
toc::[]
19
20
20
21
== Overview
22
+
21
23
A reference configuration implemented using
22
24
link:http://docs.ansible.com/ansible/[Ansible] playbooks is available as the _advanced
23
25
installation_ method for installing a {product-title} cluster. Familiarity with Ansible is
@@ -842,11 +844,46 @@ openshift_cockpit_deployer_prefix='registry.example.com/openshift3/'
842
844
openshift_cockpit_deployer_version='3.9.3'
843
845
----
844
846
847
+
848
+ [[advanced-install-glusterfs-persistent-storage]]
849
+ === Configuring {gluster} Persistent Storage
850
+
851
+ include::install_config/persistent_storage/topics/glusterfs_intro.adoc[]
852
+
853
+ Additional information and examples, including the ones below, can be found at
854
+ xref:../../install_config/persistent_storage/persistent_storage_glusterfs.adoc#install-config-persistent-storage-persistent-storage-glusterfs[Persistent Storage Using {gluster}].
855
+
856
+ [[advanced-install-containerized-glusterfs-persistent-storage]]
857
+ ==== Configuring {gluster-native}
858
+
859
+ [IMPORTANT]
860
+ ====
861
+ See
862
+ xref:../../install_config/install/prerequisites.adoc#prereq-containerized-glusterfs-considerations[{gluster-native} Considerations]
863
+ for specific host preparations and prerequisites.
864
+ ====
865
+
866
+ include::install_config/persistent_storage/topics/glusterfs_example_basic.adoc[]
867
+
868
+ [[advanced-install-external-glusterfs-persistent-storage]]
869
+ ==== Configuring {gluster-external}
870
+
871
+ include::install_config/persistent_storage/topics/glusterfs_example_basic_external.adoc[]
872
+
873
+ [[advanced-install-registry]]
874
+ === Configuring an OpenShift Container Registry
875
+
876
+ An integrated
877
+ xref:../../architecture/infrastructure_components/image_registry.adoc#integrated-openshift-registry[OpenShift Container Registry]
878
+ can be deployed using the advanced installer.
879
+
845
880
[[advanced-install-registry-storage]]
846
881
==== Configuring Registry Storage
847
882
883
+ If no registry storage options are used, the default OpenShift Container
884
+ Registry is ephemeral and all data will be lost when the pod no longer exists.
848
885
There are several options for enabling registry storage when using the advanced
849
- install :
886
+ installer :
850
887
851
888
[discrete]
852
889
[[advanced-install-registry-storage-nfs-host-group]]
@@ -928,242 +965,25 @@ region endpoint parameter:
928
965
openshift_hosted_registry_storage_s3_regionendpoint=https://myendpoint.example.com/
929
966
----
930
967
931
-
932
- [[advanced-install-glusterfs-persistent-storage]]
933
- === Configuring GlusterFS Persistent Storage
934
-
935
- GlusterFS can be configured to provide
936
- xref:../../architecture/additional_concepts/storage.adoc#architecture-additional-concepts-storage[peristent storage] and
937
- xref:../../install_config/storage_examples/gluster_dynamic_example.adoc#install-config-persistent-storage-dynamically-provisioning-pvs[dynamic provisioning] for {product-title}. It can be used both containerized within
938
- {product-title} and non-containerized on its own nodes.
939
-
940
- [[advanced-install-containerized-glusterfs-persistent-storage]]
941
- ==== Configuring Containerized GlusterFS Persistent Storage
942
-
943
- ifdef::openshift-enterprise[]
944
- This option utilizes
945
- link:https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.2/html/container-native_storage_for_openshift_container_platform/[Red Hat Container Native Storage (CNS)] for configuring containerized GlusterFS persistent storage in {product-title}.
946
- endif::[]
947
- ifdef::openshift-origin[]
948
- See link:https://github.com/gluster/gluster-kubernetes[Running Containerized GlusterFS in Kubernetes] for additional information on containerized storage
949
- using GlusterFS.
950
- endif::[]
951
-
952
- [IMPORTANT]
953
- ====
954
- See
955
- xref:../../install_config/install/prerequisites.adoc#prereq-containerized-glusterfs-considerations[Containerized GlusterFS Considerations] for specific host preparations and prerequisites.
956
- ====
957
-
958
- . In your inventory file, add `glusterfs` in the `[OSEv3:children]` section to
959
- enable the `[glusterfs]` group:
960
- +
961
- ----
962
- [OSEv3:children]
963
- masters
964
- nodes
965
- glusterfs
966
- ----
967
-
968
- . (Optional) Include any of the following role variables in the `[OSEv3:vars]`
969
- section you wish to change:
970
- +
971
- ----
972
- [OSEv3:vars]
973
- openshift_storage_glusterfs_namespace=glusterfs <1>
974
- openshift_storage_glusterfs_name=storage <2>
975
- ----
976
- <1> The project (namespace) to host the storage pods. Defaults to `glusterfs`.
977
- <2> A name to identify the GlusterFS cluster, which will be used in resource names.
978
- Defaults to `storage`.
979
-
980
- . Add a `[glusterfs]` section with entries for each storage node that will host
981
- the GlusterFS storage and include the `glusterfs_ip` and
982
- `glusterfs_devices` parameters in the form:
983
- +
984
- ----
985
- <hostname_or_ip> glusterfs_ip=<ip_address> glusterfs_devices='[ "</path/to/device1/>", "</path/to/device2>", ... ]'
986
- ----
987
- +
988
- For example:
989
- +
990
- ----
991
- [glusterfs]
992
- 192.168.10.11 glusterfs_ip=192.168.10.11 glusterfs_devices='[ "/dev/xvdc", "/dev/xvdd" ]'
993
- 192.168.10.12 glusterfs_ip=192.168.10.12 glusterfs_devices='[ "/dev/xvdc", "/dev/xvdd" ]'
994
- 192.168.10.13 glusterfs_ip=192.168.10.13 glusterfs_devices='[ "/dev/xvdc", "/dev/xvdd" ]'
995
- ----
996
- +
997
- Set `glusterfs_devices` to a list of raw block devices that will be completely
998
- managed as part of a GlusterFS cluster. There must be at least one device
999
- listed. Each device must be bare, with no partitions or LVM PVs. Set
1000
- `glusterfs_ip` to the IP address that will be used by pods to communicate with
1001
- the GlusterFS node.
1002
-
1003
- . Add the hosts listed under `[glusterfs]` to the `[nodes]` group as well:
1004
- +
1005
- ----
1006
- [nodes]
1007
- 192.168.10.11
1008
- 192.168.10.12
1009
- 192.168.10.13
1010
- ----
1011
-
1012
- . After completing the cluster installation per
1013
- xref:running-the-advanced-installation[Running the Advanced Installation], run
1014
- the following from a master to verify the necessary objects were successfully
1015
- created:
1016
-
1017
- .. Verfiy that the GlusterFS `StorageClass` was created:
1018
- +
1019
- ----
1020
- # oc get storageclass
1021
- NAME TYPE
1022
- glusterfs-storage kubernetes.io/glusterfs
1023
- ----
1024
-
1025
- .. Verify that the route was created:
1026
- +
1027
- ----
1028
- # oc get routes
1029
- NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD
1030
- heketi-glusterfs-route heketi-glusterfs-default.cloudapps.example.com heketi-glusterfs <all> None
1031
- ----
1032
- +
1033
- [NOTE]
1034
- ====
1035
- The name for the route will be `heketi-glusterfs-route` unless the default
1036
- `glusterfs` value was overridden using the `openshift_glusterfs_storage_name`
1037
- variable in the inventory file.
1038
- ====
1039
-
1040
- .. Use `curl` to verify the route works correctly:
1041
- +
1042
- ----
1043
- # curl http://heketi-glusterfs-default.cloudapps.example.com/hello
1044
- Hello from Heketi.
1045
- ----
1046
-
1047
- After successful installation, see
1048
- link:https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.2/html/container-native_storage_for_openshift_container_platform/chap-documentation-red_hat_gluster_storage_container_native_with_openshift_platform-gluster_pod_operations[Operations
1049
- on a Red Hat Gluster Storage Pod in an OpenShift Environment] to learn how to
1050
- check the status of the GlusterFS clusters.
1051
-
1052
- xref:../../install_config/storage_examples/gluster_dynamic_example.adoc#install-config-persistent-storage-dynamically-provisioning-pvs[Dynamic provisioning] of GlusterFS volumes can occur by
1053
- xref:../../install_config/storage_examples/gluster_dynamic_example.adoc#create-a-pvc-ro-request-storage-for-your-application[creating a PVC to request storage].
1054
-
1055
- [[advanced-install-configuring-openshift-container-registry]]
1056
- === Configuring the OpenShift Container Registry
1057
-
1058
- Additional configuration options are available at installation time for the
1059
- xref:../../architecture/infrastructure_components/image_registry.adoc#integrated-openshift-registry[OpenShift Container Registry].
1060
-
1061
- If no registry storage options are used, the default {product-title} registry is
1062
- ephermal and all data will be lost if the pod no longer exists. {product-title}
1063
- also supports a single node NFS-backed registry, but this option lacks
1064
- redundancy and reliability compared with the GlusterFS-backed option.
1065
-
1066
- [[advanced-install-containerized-glusterfs-backed-registry]]
1067
- ==== Configuring a Containerized GlusterFS-Backed Registry
968
+ [discrete]
969
+ [[advanced-install-registry-storage-glusterfs]]
970
+ ===== Option E: {gluster-native}
1068
971
1069
972
Similar to
1070
- xref:advanced-install-containerized-glusterfs-persistent-storage[configuring containerized GlusterFS for persistent storage], GlusterFS storage can be
1071
- configured and deployed for an OpenShift Container Registry during the initial
1072
- installation of the cluster to offer redundant and more reliable storage for the
1073
- registry.
973
+ xref:advanced-install-containerized-glusterfs-persistent-storage[configuring {gluster-native}],
974
+ {gluster} can be configured to provide storage for an OpenShift Container
975
+ Registry during the initial installation of the cluster to offer redundant and
976
+ reliable storage for the registry.
1074
977
1075
978
[IMPORTANT]
1076
979
====
1077
980
See
1078
- xref:../../install_config/install/prerequisites.adoc#prereq-containerized-glusterfs-considerations[Containerized
1079
- GlusterFS Considerations] for specific host preparations and prerequisites.
981
+ xref:../../install_config/install/prerequisites.adoc#prereq-containerized-glusterfs-considerations[{gluster-native} Considerations]
982
+ for specific host preparations and prerequisites.
1080
983
====
1081
984
1082
- Configuration of storage for an OpenShift Container Registry is very similar to
1083
- configuration for GlusterFS persistent storage in that it can be either
1084
- containerized or non-containerized. For this containerized method, the following
1085
- exceptions and additions apply:
1086
-
1087
- . In your inventory file, add `glusterfs_registry` in the `[OSEv3:children]` section
1088
- to enable the `[glusterfs_registry]` group:
1089
- +
1090
- ----
1091
- [OSEv3:children]
1092
- masters
1093
- nodes
1094
- glusterfs_registry
1095
- ----
1096
-
1097
- . Add the following role variable in the `[OSEv3:vars]` section to enable the
1098
- GlusterFS-backed registry, provided that the `glusterfs_registry` group name and
1099
- the `[glusterfs_registry]` group exist:
1100
- +
1101
- ----
1102
- [OSEv3:vars]
1103
- openshift_hosted_registry_storage_kind=glusterfs
1104
- ----
1105
-
1106
- . It is recommended to have at least three registry pods, so set the following
1107
- role variable in the `[OSEv3:vars]` section:
1108
- +
1109
- ----
1110
- openshift_hosted_registry_replicas=3
1111
- ----
1112
-
1113
- . If you want to specify the volume size for the GlusterFS-backed registry, set
1114
- the following role variable in `[OSEv3:vars]` section:
1115
- +
1116
- ----
1117
- openshift_hosted_registry_storage_volume_size=10Gi
1118
- ----
1119
- +
1120
- If unspecified, the volume size defaults to `5Gi`.
1121
-
1122
- . The installer will deploy the OpenShift Container Registry pods and associated
1123
- routers on nodes containing the `region=infra` label. Add this label on at least
1124
- one node entry in the `[nodes]` section, otherwise the registry deployment will
1125
- fail. For example:
1126
- +
1127
- ----
1128
- [nodes]
1129
- 192.168.10.14 openshift_schedulable=True openshift_node_labels="{'region': 'infra'}"
1130
- ----
1131
-
1132
- . Add a `[glusterfs_registry]` section with entries for each storage node that
1133
- will host the GlusterFS-backed registry and include the `glusterfs_ip` and
1134
- `glusterfs_devices` parameters in the form:
1135
- +
1136
- ----
1137
- <hostname_or_ip> glusterfs_ip=<ip_address> glusterfs_devices='[ "</path/to/device1/>", "</path/to/device2>", ... ]'
1138
- ----
1139
- +
1140
- For example:
1141
- +
1142
- ----
1143
- [glusterfs_registry]
1144
- 192.168.10.14 glusterfs_ip=192.168.10.14 glusterfs_devices='[ "/dev/xvdc", "/dev/xvdd" ]'
1145
- 192.168.10.15 glusterfs_ip=192.168.10.15 glusterfs_devices='[ "/dev/xvdc", "/dev/xvdd" ]'
1146
- 192.168.10.16 glusterfs_ip=192.168.10.16 glusterfs_devices='[ "/dev/xvdc", "/dev/xvdd" ]'
1147
- ----
1148
- +
1149
- Set `glusterfs_devices` to a list of raw block devices that will be completely
1150
- managed as part of a GlusterFS cluster. There must be at least one device
1151
- listed. Each device must be bare, with no partitions or LVM PVs. Set
1152
- `glusterfs_ip` to the IP address that will be used by pods to communicate with
1153
- the GlusterFS node.
1154
-
1155
- . Add the hosts listed under `[glusterfs_registry]` to the `[nodes]` group as well:
1156
- +
1157
- ----
1158
- [nodes]
1159
- 192.168.10.14
1160
- 192.168.10.15
1161
- 192.168.10.16
1162
- ----
985
+ include::install_config/persistent_storage/topics/glusterfs_example_registry.adoc[]
1163
986
1164
- After successful installation, see
1165
- link:https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.2/html/container-native_storage_for_openshift_container_platform/chap-documentation-red_hat_gluster_storage_container_native_with_openshift_platform-gluster_pod_operations[Operations on a Red Hat Gluster Storage Pod in an OpenShift Environment] to check the
1166
- status of the GlusterFS clusters.
1167
987
1168
988
[[advanced-install-configuring-global-proxy]]
1169
989
=== Configuring Global Proxy Options
0 commit comments