Skip to main content

NAS 기본 설정

NAS는 중요한 데이터를 안전하게 보관하고, 파일 공유, 데이터 백업, 멀티미디어 스트리밍 등 다양한 기능을 제공하는 고성능 저장소 솔루션 이다. Spelix IDC에 있는 Synology NAS 장비는 현재 RAID 1+0 형태의 스토리지를 가지고 있고, btrfs 파일 시스템으로 포멧 되었다. 그리고 현재는 8개의 12TB HDDs를 사용 하고 있다. Synology NAS 장비들은 Synology DiskStation Manager(DSM) 이라는 웹 인터페이스를 사용 하여 대부분의 설정들을 진행 한다. 예를 들어 RAID 설정, 네트워크 설정, NFS, iSCSI 설정 및 공유 파일 등등 설정이 가능하다. 

Live Demo

DSM 인터페이스를 실험 하기 위해 Synology가 만들어준 연습 플랫폼이라고 생각 하면 된다. Synology DSM Live Demo는 여기서 체험 할 수 있다.

DSM 7.2 버전 데모를 바로 실행 할 수 있다. 데모를 들어 가면 아래와 같은 화면을 볼 수 있다

image.png


왼쪽 상단에 있는 메뉴에서  '저장소 관리자' 로 이동 하면

image.png

이미 정상적으로 볼륨 1 이 생성 되어 있고 돌아 가는 것을 확인 할 수 있습니다.

자세한 정보를 확인 하면

image.png

Btrfs 파일 시스템으로 포멧 된 것을 확인 할 수 있다. 실제 장비에서는 더 많은 옵션들이 존재 하지만, Demo 에서는 기본적인 요소들 만 존재 한다.

실제 장비의 DSM:

image.png


Demo DSM의 옵션들:

image.png


결론은 Demo DSM에서는 많은 실습을 실행 할 수가 없다.

그래도 할 수 있는 것은 iSCSI 볼륨 생성 하는 것이다. 


iSCSI 20GB Volume 생성

SAN Manager을 통해 iSCSI를 설정 할 수 있다. iSCSI 설정을 하기 전에 LUN 설정을 먼저 진행 해야 된다. LUN(Logical Unit Number)은 가상화 환경에서 자주 사용되는 개념으로, 가상 서버나 가상 머신에 스토리지를 할당할 때 사용 된다. LUN 설정을 하면 Virtual disk가 생성 되어 iSCSI 프로토콜을 실행 할 수 있게 된다. iSCSI 프로토콜을 사용하려면 가상 디스크를 사용해야 한다.

그 외에는 LUN 설정 시 Thick Provisioning 과 Thin Provisioning Space Allocation 옵션들이 존재 한다. 

Thick   ➖    이 방식은 LUN의 전체 용량을 미리 물리적 스토리지에 할당하는 것을 의미한다
Thin     ➖   이 방식은 필요에 따라 동적으로 스토리지를 할당하는 방식이다


DSM Live 데모 속에서 간단한 실습을 진행 하였다. 전 과 같이 DSM 메인 화면에서 메뉴를 열어 'SAN Manager'로 이동 한다.

image.png


정상 적으로 iSCSI 서비스가 작동 되는 것을 확인 할 수 있다. 새로운 LUN을 생성 하여 LUN 속성을 아래와 같이 지정 한다.

image.png

Thick Provisioning을 선택 한 이유는 실제 NAS 서버에서는 공간 문제가 없고 Thin에 비해 성능이 워낙 뛰어 나서 이다.

이 상태에서 다음 화면으로 넘어 가면 iSCSI가 기본 적으로 선택 되어 있다

image.png


그 다음으로 Access 권한 할당 설정도 존재 한다. 일단 모든 허용으로 진행 한다.

image.png


마지막으로 설정 확인을 할 수 있다. 

image.png


결과 를 확인 하면:

image.png


iSCSI 옵션에서도 iSCSI 타겟이 준비 되어 있는 것을 확인 할 수 있

image.png


물론 개요 페이지도 정상적으로 생성 된 LUN을 보여 준다

image.png


이제 클라이언트 쪽에서 iSCSI initiator 설치 후 iSCSI target과 연결 가능하다

먼저 클라이언트 쪽 "iSCSI initiator"을 설치 해야 된다. 참고 자료 는 여기.

iSCSI는 실제 NAS에서 실행 하지 않았다. NFS으로 넘어 갔기 때문이다.


NFS 설정

NFS는 네트워크를 통해 원격 파일 접근을 가능하게 하는 분산 파일 시스템 프로토콜이다. 이를 통해 운영 체제에 관계없이 컴퓨터/서버 간에 파일을 쉽게 공유하고 접근할 수 있다. NFS는 네트워크 환경에서 효율적인 파일 공유, 협업 및 중앙 저장 관리를 가능하게 한다.

DSM 인터페이스 에서 제어판 으로 이동 한다. 제어판 안에 '파일 서비스' 라는 서비스를 선택 한다.

image.png


그 후 NFS 서비스 칸으로 이동 하야 NFS를 활성화 시켜 주면 된다

image.png


바로 옆 칸에 '공유 폴더' 로 이동 한다. 공유 폴더로 이동 한 이유는, 공유하고자 하는 공유 파일을 수정 할 것이다.

image.png


예를 들어 Photo 폴더를 공유 한다고 과정을 하면, Photo 폴더를 선택 하여 '편집'으로 이동 한다

image.png


새로운 메뉴가 올라오면, 'NFS 권한' 을 선택 한다

image.png


새로운 NFS 권한을 생성 한다.

image.png

  • 첫 번째로 호스트 PC의 IP 주소를 입력 하고, 권한을 부여 한다
  • Squash 매핑을 지정 할 수 있다
  • 보안에서 AUTH_SYS가 기본적으로 선택이 될 수 있지만 Kerberos 인증 과 무결성도 선택 할 수 있다
  • 그 후 하위 폴더 액세스도 허용 가능


이렇게 권한 설정 후 나가면 마운트 경로와 NFS 권한에 새로운 호스트가 추가 되어 있는 것을 볼 수가 있다

image.png

다 저장 후 이제 서버쪽에서 NFS client을 설치 하여 NFS 공유 폴더를 접속 할 수 있다

아래 내용은 아직 테스팅을 못 한 부분이다


예식로 기본적인 마운팅은 아래와 같다 (RHEL 8 버전 사용):

NFS client 부터 설치:

dnf install nfs-utils

NFS share을 마운트 하기 위해

# -t는 타입을 지정하는 옵션
mount -t nfs <IP 주소>:/마운트/경로 /로컬/경로

추가 옵션에 경우에는

# ro 옵션을 통해 read-only 모드로 연결
mount -t nfs -o ro <IP 주소>:/마운트/경로 /로컬/경로
# ro, nfsvers=3로 통해 read only 모드 + nfs version 3를 사용
mount -t nfs -o ro,nfsvers=3 <IP 주소>:/마운트/경로 /로컬/경로