Configuring high availability for NFS service
Configure NFS gateways in IBM Storage Ceph in either multi-active or active-passive mode. multi-active mode uses an ingress service with HAProxy and keepalived to provide a high-availability (HA) front end and virtual IP for NFS services.The Active-passive mode uses Ingress service with keepalived only and NFS will be configured with Virtual IP.
Before you begin
Note: The NFS service and ingress service run on different hosts. For optimal performance and high availability, configure each service on separate hosts.
- A running IBM Storage Ceph cluster.
- Hosts are added to the cluster, with roles identified: NFS servers or NFS daemons.
- The NFS module is enabled.
About this task
An ingress service provides external access to internal services within a Kubernetes cluster. It uses routing rules defined in ingress resources to direct HTTP and HTTPS traffic to the appropriate backend services.
When a cluster is created with --ingress flag, an ingress service is also deployed to provide high-availability for the NFS servers. This applies only to Ceph clusters. A virtual IP is used to provide a known, stable NFS endpoint that all NFS clients can use to mount. Ceph handles the details of redirecting NFS traffic on the virtual IP to the appropriate backend NFS servers and redeploys NFS servers when they fail.
Important: When an ingress service is deployed on the NFS cluster, the backend NFS service servers see the HAProxy’s IP address and not the client’s IP address. As a result, if you are restricting client access based on IP address, access restrictions for NFS shares will not work as expected.
Note: If the active NFS server serving a client goes down, the client’s I/Os are interrupted until the replacement for the active NFS server is online and the NFS cluster is active again.
Deploying an ingress service for an existing service provides:
- A stable, virtual IP that can be used to access the NFS server.
- Failover between hosts when the hosts fail.
- Load distribution across multiple NFS server gateways when necessary.