anchor.diff:  ----
   $ oc get endpoints
   NAME                ENDPOINTS                             AGE
  -docker-registry     10.128.0.3:5000                       4h
  +docker-registry     10.1.0.3:5000                         4h
   glusterfs-cluster   192.168.122.221:1,192.168.122.222:1   11s
   kubernetes          172.16.35.3:8443                      4d
   ----
   ====
   
   [[gfs-creating-persistent-volume]]
  -
   === Creating the Persistent Volume
   
  -You must define your persistent volume in an object definition before creating
  +The storage admin next defines the persistent volume (PV) in an object definition before creating
   it in OpenShift:
   
   .Persistent Volume Object Definition Using GlusterFS
  
positive.code: ----
  ====
  
  Next, define your Gluster endpoints. For example:
  
  .Gluster Endpoints Definition
  ====
  
negative.code: toc::[]
  
  == Overview
  
  OpenShift clusters can be provisioned with
  link:../../architecture/additional_concepts/storage.html[persistent storage]
  using GlusterFS. Persistent volumes (PVs) and persistent volume claims (PVCs) provide
  a convenient method for sharing a volume across a project. While the
  GlusterFS-specific information contained in a PV definition could also be defined
  directly in a pod definition, doing so does not create the volume as a distinct
  cluster resource, making the volume more susceptible to conflicts.
  
  This topic covers the specifics of using the GlusterFS persistent storage type. Some
  familiarity with OpenShift and
  https://access.redhat.com/documentation/en-US/Red_Hat_Storage/3/html/Administration_Guide/index.html[GlusterFS]
  is beneficial. See the
  link:../../architecture/additional_concepts/storage.html[Persistent Storage]
  concept topic for details on the OpenShift persistent volume (PV) framework in general.
  
  [[gfs-provisioning]]
  == Provisioning
  
  Storage must exist in the underlying infrastructure before it can be mounted as
  a volume in OpenShift. To provision GlusterFS volumes the following information
   is required:
  
  - A distinct list of servers (IP addresses) in the Gluster cluster, to be defined
  as endpoints.
  - A service, to persist the endpoints (optional).
  - Existing Gluster volume name to be referenced in the persistent volume object.
  
  You must also ensure that *glusterfs-fuse* is installed on *_each_* schedulable OpenShift
  node in the cluster:
  
  ----
  # yum install glusterfs-fuse
  ----
  
  [NOTE]
  ====
  OpenShift nodes can also host a gluster node (referrfed to as _hyperconverged_ storage);
  however, performance may be less predictible and harder to manage in this setup.
  ====
  
  [[creating-gluster-endpoints]]
  === Creating Gluster Endpoints
  
  In an endpoints definition, the storage administrator must define the GlusterFS cluster
  as `*EndPoints*` and include the IP addresses of your Gluster servers. The
  port value can be any numeric value within the accepted range of ports
  (and is ignored). It is recommended, but not required, that you also create a
  link:../../architecture/core_concepts/pods_and_services.html#services[service]
  that persists the endpoints.
  
  