11.6. HA용 독립 실행형 CephFS/NFS 클러스터 업그레이드
스토리지 관리자는 기존 NFS 서비스에 수신
서비스를 배포하여 독립 실행형 스토리지 클러스터를 HA(고가용성) 클러스터로 업그레이드할 수 있습니다.
사전 요구 사항
- 기존 NFS 서비스를 사용하여 실행 중인 Red Hat Ceph Storage 클러스터.
- 호스트는 클러스터에 추가됩니다.
- 모든 manager, monitor, OSD 데몬이 배포됩니다.
- NFS 모듈이 활성화되었는지 확인합니다.
절차
Cephadm 쉘에 로그인합니다.
예제
[root@host01 ~]# cephadm shell
기존 NFS 클러스터를 나열합니다.
예제
[ceph: root@host01 /]# ceph nfs cluster ls mynfs
참고독립 실행형 NFS 클러스터가 하나의 노드에 생성되는 경우 HA의 두 개 이상의 노드로 늘려야 합니다. NFS 서비스를 늘리려면
nfs.yaml
파일을 편집하고 동일한 포트 번호로 배치를 늘립니다.NFS 서비스에 할당한 호스트 수는 deploy
: count
매개변수로 지정하는 활성 NFS 서버 수보다 커야 합니다.구문
service_type: nfs service_id: SERVICE_ID placement: hosts: - HOST_NAME_1 - HOST_NAME_2 count: COUNT spec: port: PORT_NUMBER
예제
service_type: nfs service_id: mynfs placement: hosts: - host02 - host03 count: 1 spec: port: 12345
이 예에서는 기존 NFS 서비스가 포트
12345
에서 실행되고 있으며 동일한 포트가 있는 NFS 클러스터에 추가 노드가 추가됩니다.nfs.yaml
서비스 사양 변경 사항을 적용하여 두 개의 노드 NFS 서비스로 업그레이드합니다.예제
[ceph: root@host01 ceph]# ceph orch apply -i nfs.yaml
기존 NFS 클러스터 ID를 사용하여
ingress.yaml
사양 파일을 편집합니다.구문
service_type: SERVICE_TYPE service_id: SERVICE_ID placement: count: PLACEMENT spec: backend_service: SERVICE_ID_BACKEND 1 frontend_port: FRONTEND_PORT monitor_port: MONITOR_PORT 2 virtual_ip: VIRTUAL_IP_WITH_CIDR
예제
service_type: ingress service_id: nfs.mynfs placement: count: 2 spec: backend_service: nfs.mynfs frontend_port: 2049 monitor_port: 9000 virtual_ip: 10.10.128.75/22
수신 서비스를 배포합니다.
예제
[ceph: root@host01 /]# ceph orch apply -i ingress.yaml
참고NFS 데몬과 수신 서비스는 비동기적으로 배포되고 서비스가 완전히 시작되기 전에 명령이 반환됩니다.
수신 서비스가 성공적으로 시작되었는지 확인합니다.
구문
ceph orch ls --service_name=ingress.nfs.CLUSTER_ID
예제
[ceph: root@host01 /]# ceph orch ls --service_name=ingress.nfs.mynfs NAME PORTS RUNNING REFRESHED AGE PLACEMENT ingress.nfs.mynfs 10.10.128.75:2049,9000 4/4 4m ago 22m count:2
검증
Ingress 서비스의 IP 끝점, 개별 NFS 데몬의 IP, 가상 IP를 확인합니다
.구문
ceph nfs cluster info CLUSTER_ID
예제
[ceph: root@host01 /]# ceph nfs cluster info mynfs { "mynfs": { "virtual_ip": "10.10.128.75", "backend": [ { "hostname": "host02", "ip": "10.10.128.69", "port": 12049 }, { "hostname": "host03", "ip": "10.10.128.70", "port": 12049 } ], "port": 2049, "monitor_port": 9049 } }
호스트 및 프로세스를 나열합니다.
예제
[ceph: root@host01 /]# ceph orch ps | grep nfs haproxy.nfs.mynfs.host01.ruyyhq host01 *:2049,9000 running (27m) 6m ago 34m 9.85M - 2.2.19-7ea3822 5e6a41d77b38 328d27b3f706 haproxy.nfs.mynfs.host02.ctrhha host02 *:2049,9000 running (34m) 6m ago 34m 4944k - 2.2.19-7ea3822 5e6a41d77b38 4f4440dbfde9 keepalived.nfs.mynfs.host01.fqgjxd host01 running (27m) 6m ago 34m 31.2M - 2.1.5 18fa163ab18f 0e22b2b101df keepalived.nfs.mynfs.host02.fqzkxb host02 running (34m) 6m ago 34m 17.5M - 2.1.5 18fa163ab18f c1e3cc074cf8 nfs.mynfs.0.0.host02.emoaut host02 *:12345 running (37m) 6m ago 37m 82.7M - 3.5 91322de4f795 2d00faaa2ae5 nfs.mynfs.1.0.host03.nsxcfd host03 *:12345 running (37m) 6m ago 37m 81.1M - 3.5 91322de4f795 d4bda4074f17