XenServer 5.6에 NAS 구성하기 > knowledge

본문 바로가기
사이트 내 전체검색

knowledge

XenServer 5.6에 NAS 구성하기

페이지 정보

작성자 웹지기 댓글 0건 조회 6,781회 작성일 18-09-27 14:16

본문

[펌] http://ifwind.tistory.com/10


XenServer의 Local Storage 중 일부를 NAS로 구성하여 리눅스 가상머신에는 NFS로 붙이고, 윈도우 가상머신에는 CFS로 붙이는 구성을 해보았다. XenServer에 NAS를 구성하면 다음과 같은 장점이 있다.

  • ISO 라이브러리를 XenServer내에 구성할 수 있다.
  • XenServer는 항상 가동중이기 때문에 VM의 상태와 관계없이 안정적인 네트워크 스토리지를 제공할 수 있다.
  • VM에서 사용하는 중요 데이터를 XenServer에 저장하고 VM은 마음대로 실습(?)할 수 있다.

참고로 본인의 XenServer 하드웨어는 다음과 같다.

  • CPU: AMD 애슬론II-X2 250(레고르)
  • MEM: DDR2 2GB
  • M/B: Asus M4A78-VM
  • HDD: 640GB 5400rpm
  • XenServer 5.6
  • IP: 192.168.0.2

작업은 다음의 순서로 진행한다.

  1. nas 용 스토리지를 할당하고 XenServer에 마운트 한다.
  2. nfs 서비스를 설정한다.
  3. samba 서비스를 설정한다.

1) nas 용 스토리지를 할당하고 XenServer에 마운트 한다.

이하 작업은 XenServer에 접속해서 수행한다.

XenServer에 nas용 마운트 포인트를 생성하고 쓰기 권한을 풀어준다.

$ mkdir /nas 
$ chmod 777 /nas

fdisk 명령으로 확인해보면 우리가 사용할 수 있는 스토리지는 Linux LVM으로 구성되었음을 확인할 수 있다.

$ fdisk -l 
Disk /dev/sda: 640.1 GB, 640135028736 bytes 
255 heads, 63 sectors/track, 77825 cylinders 
Units = cylinders of 16065 * 512 = 8225280 bytes 
Device Boot Start End Blocks Id System 
/dev/sda1 * 1 523 4194304 83 Linux 
Partition 1 does not end on cylinder boundary. 
/dev/sda2 523 1045 4194304 83 Linux 
/dev/sda3 1045 77825 616740673 8e Linux LVM

vgdisplay로 Linux LVM의 VG Name 및 가용량을 확인한다. VG Name은 이후 작업의 입력인자로 사용된다.

$ vgdisplay 
--- Volume group --- 
VG Name VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa 
System ID 
Format lvm2 
Metadata Areas 1 
Metadata Sequence No 23 
VG Access read/write 
VG Status resizable 
MAX LV 0 
Cur LV 8 
Open LV 3 
Max PV 0 
Cur PV 1 
Act PV 1 
VG Size 588.16 GB 
PE Size 4.00 MB 
Total PE 150568 
Alloc PE / Size 123961 / 484.22 GB 
Free PE / Size 26607 / 103.93 GB 
VG UUID 0yYD2Q-Aq5U-Nvgx-SUyF-2pMN-iOG1-ZkGcem

원하는 용량만큼 lv를 생성한다. lvcreate –L 용량 lv_name VG_ Name 형태로 명령어를 입력한다.

$ lvcreate -L 50GB -n nas_lv VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa

생성된 lv를 ext3로 포맷한다.

$ mkfs.ext3 /dev/VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa/nas_lv

이제 마운트 해본다.

$ mount /dev/VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa/nas_lv  /nas

부팅 후에도 자동 마운트 되도록 설정한다.

fstab을 이용하면 편할텐데, 디바이스 파일(/dev/VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa/nas_lv)이 재부팅하면 인식되지 않는 현상이 발생한다. 편법으로 자동 실행 스크립트를 만들어서 lvchange 명령으로 디바이스 파일 재생성 및 마운트하도록 구성했다.

$ vi /etc/init.d/nas_mount 
#!/bin/sh 

# chkconfig: 345 20 80 
# description: This script takes care of starting \ 
# and stopping nas_mount 

# See how we were called. 
case "$1" in 
start) 
# Start set. 
echo -n "/nas mounting... " 
lvchange -ay VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa && \ 
mount /dev/VG_XenStorage-9af52d2d-12da-425b-b7f3-acdf5eb9d4aa/nas_lv /nas 
echo "done" 
;; 
stop) 
# Stop set. 
echo "/nas umounting... " 
umount /nas 
echo "done" 
;; 
status) 
mount | grep /nas 
;; 
*) 
echo "Usage: nas_mount {start|stop|status}" 
exit 1 
;; 
esac 
exit 0

이 스크립트를 실행 가능한 파일로 변경하고 자동 실행되도록 설정한다.

$ chmod 755 /etc/init.d/nas_mount 
$ chkconfig --level 345 nas_mount on

이제 XenServer를 재부팅하여 /nas에 정상 마운트되는지 확인한다.

$ shutdown -r now 
$ df -h # 부팅 완료 후에 확인

2) NFS 서비스를 설정한다.

XenServer에 NFS 서비스를 설정하여 다른 서버에서 /nas를 마운트 할 수 있도록 한다.

먼저 호스트명이 정의되있지 않다면 hosts 파일에 정의한다. 아이피 주소 및 서버명은 본인의 것으로 사용한다.

$ vi /etc/hosts 
192.168.0.2 XenServer

/nas 디렉토리를 192.168번대 시스템에서 접근할 수 있도록 설정한다.

$ vi /etc/exports 
/nas 192.168.0.0/24(rw,no_root_squash,sync)

옵션설명

  • rw: 클라이언트에서 쓰기 가능
  • no_root_squash: 클라이언트의 root를 서버의 root로 인정 (root에게 모든 권한 부여)
  • sync: write전에 동기화, 반대는 async 
    ※ XenServer 5.6에서 nfs는 극악의 성능을 보이는데 sync를 async로 변경하면 아주 아주 빨라진다. 성능에 불만이 있다면 async를 시도해볼 만 하다. 좀 불안하긴 하겠지만...


XenServer의 portmapper 서비스는 –l 옵션이 기본으로 설정되어 있어 서비스가 제대로 작동하지 않는다. 아래 지시대로 PMAP_ARGS을 주석 처리하여 문제가 없도록 한다.

$ vi /etc/sysconfig/portmap 
#PMAP_ARGS=-l # 주석처리

NFS 설정을 적용하고 확인한다.

$ exportfs -a 
$ exportfs 
/nas 192.168.0.0/24

NFS 관련 서비스를 시작한다.

$ service nfs start 
$ service portmap start

정상 작동 중인지 확인한다. 111 포트를 사용하는 portmapper, 2049 포트를 사용하는 nfs등을 확인할 수 있다.

$ rpcinfo -p 
program vers proto port 
100000 2 tcp 111 portmapper 
100000 2 udp 111 portmapper 
100024 1 udp 600 status 
100024 1 tcp 600 status 
100021 1 udp 47834 nlockmgr 
100021 3 udp 47834 nlockmgr 
100021 4 udp 47834 nlockmgr 
100003 2 udp 2049 nfs 
100003 3 udp 2049 nfs 
100003 4 udp 2049 nfs 
100021 1 tcp 38515 nlockmgr 
100021 3 tcp 38515 nlockmgr 
100021 4 tcp 38515 nlockmgr 
100003 2 tcp 2049 nfs 
100003 3 tcp 2049 nfs 
100003 4 tcp 2049 nfs 
100005 1 udp 32767 mountd 
100005 1 tcp 32767 mountd 
100005 2 udp 32767 mountd 
100005 2 tcp 32767 mountd 
100005 3 udp 32767 mountd 
100005 3 tcp 32767 mountd

$ showmount --export 
Export list for XenServer: 
/nas 192.168.0.0/24

마지막으로 iptables의 설정을 변경하여 NFS 서비스의 포트를 개방해야 한다. 하지만 클라이언트의 portmapper 서비스가 비정규 포트를 사용하기 때문에 iptables를 적정하게 수정하는게 매우 힘들다. 여기서는 iptables 서비스를 중단하고 자동 실행되지 않도록 변경한다.

$ service iptables stop 
$ chkconfig --level 2345 iptables off

다른 서버에서 XenServer의 /nas 디렉토리를 NFS로 마운트해본다.

$ mkdir /xenserver-nas 
$ mount -t nfs 192.168.0.2:/nas /xenserver-nas

3) samba 서비스를 설정한다.

samba 서비스는 XenServer에 설치되어 있지 않다. XenServer가 인터넷에 연결되어 있다면 yum 을 이용해 설치할 수 있다. 인터넷으로 패키지를 받아올 수 있도록 CentOS-Base.repo 파일의 base 섹션 내 enable을 1로 변경한다.

$ vi /etc/yum.repos.d/CentOS-Base.repo 
[base] 
... 
enable=1

이제 yum을 이용해 samba를 설치하고 자동 실행되도록 구성한다.

$ yum install samba 
$ chkconfig --levels 345 smb on

삼바 환경파일을 백업해 놓고 적절하게 수정한다. 여기서는 /nas 디렉토리를 서비스 하도록 구성했다.

$ cp /etc/samba/smb.conf /etc/samba/smb.bak 
$ vi /etc/samba/smb.conf 
server string = NAS on XenServer 
netbios name = XenServer 
log file = /var/log/samba/%m.log 
security = user 
passdb backend = tdbsam 
load printers = no 
cups options = raw 
[nas] 
comment = nas 
path = /nas 
public = yes 
writable = yes 
printable = no

삼바 서비스를 재시작 한다.

$ service samba restart

NFS를 설정하면서 iptables를 비활성화 시켰지만 여전히 iptables를 사용코자 한다면 iptables 테이블에 samba 서비스용 포트를 허용하도록 다음 2개 라인을 추가한다.

$ vi /etc/sysconfig/iptables 
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT 
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

윈도우에서 시작 –> 실행으로 다음 명령을 입력하여 정상 연결되는지 확인한다.

\\192.168.0.2\nas

리눅스 시스템에서는 mount 명령으로 연결해본다.

$ mount –t cifs –o user=<username>,password=<yourpass> //192.168.0.2/nas /nas
$ ls –la /nas
[이 게시물은 웹지기님에 의해 2018-10-09 11:28:48 knowledge에서 이동 됨]
추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 89건 5 페이지
  • 29 [ software ] 지엠 폼메일에디터
  • 지엠 폼메일에디터1) 먼저 파일을 압축해제하여 원하는 곳에 모든 파일을 업로드합니다.2) LIBsent/config.inc.php 파일을 적절하게 수정하여 업로드합니다.[code] $hostname = \"localhost\"; // MySQL 데이터베이스 호스트 $database_name = \"idoogie_test\"; // MySQL 데이터베이스 디비명 $db_user = \"idoogie_test\"; // MySQL 데이터베이스...
  • 웹지기 10-01 9184 0 0 댓글 0
  • 26 [ domain ] 국가별 도메인 영문 / 한글 / 코드
  • COM Commercial 영리를 목적으로 하는 기업이나 회사 NetSolNET Network 네트워크에 관련된 기관 NetSolORG Organization 비영리 목적의 기관이나 단체 NetSolEDU Education 학위를 수여하는 교육기관 NetSolGOV Government 미국연방정부 관련 기관 NetSolMIL Military 미국연방정부 군사기관 www.nic.milINT International 유엔 등의 국제기관 ISIWEB 인터넷에 관련된 활동을 하는 기관SHOP 상품이나 서...
  • 웹지기 09-30 5420 0 0 댓글 0
  • 25 [ flash ] 각종 시계
  • 상단그림에서왼쪽에서 부터 순차적 순번....1.music24.kr_an_clock1.swf&lt;embed src="./플래쉬시계경로/flash_clock/music24.kr_an_clock1.swf" quality="high" pluginspage="./플래쉬시계경로/flash_clock/music24.kr_an_clock1.swf" type="application/x-shockwave-flash" width=�...
  • 웹지기 09-28 5332 0 0 댓글 0
  • 23 [ sorce ] 레이아웃 보여주는 파일
  • php 소스내에 있는 Table 과 Div 태그를 시각적으로 보여주는 브라우저입니다.코딩작업 하다 보면 테이블, Div 들이 엉켜있을 때 어떤 모양인지 헷갈릴 때가 있지 않나요?아니면 저 같은 초보자만 그런가??이런 브라우저 혹시 요긴할까요? 아니면 쓸데없는 아이디어 인가요?여러분들의 의견을 들어 보고 개발해 갈지 포기할지 정하겠습니다.....ㅎdiv, table 태그만 박스로 표시되도록 하였고 나머지 태그는 대부분 그대로 표현됩니다.그리고 php 소스나 자바스크립은 되도록 소소 text 형태로 ...
  • 웹지기 09-28 4958 0 0 댓글 0
  • 21 [ software ] 훌륭한 무료 소프트웨어들
  • 무료라지만 유료로 써도 아깝지 않을 만큼 잘 만든 프리웨어 소프트웨어들이 생각보다 많고이런 소프트웨어들만 가지고 내 PC를 토핑해도 불편하지 않을 정도입니다.물론 새로운 소프트웨어의 사용법을 익히고 내 것으로 만드는 데 시간이 필요하긴 합니다.무료 소프트웨어만으로 내 PC를 꾸미고 불편함 없이 PC를 사용하는 것이 가능할까요?도전해 볼 만한 일입니다. 프리웨어 소프트웨어 중에는 소스 코드 또한 오픈 되어 있어소프트웨어 개발에 관련된 분들에게 유익한 학습 자료가 될 수 있습니다.GIMP - 사진보정...
  • 웹지기 09-27 9310 0 0 댓글 0
  • 열람중 XenServer 5.6에 NAS 구성하기
  • [펌]http://ifwind.tistory.com/10XenServer의 Local Storage 중 일부를 NAS로 구성하여 리눅스 가상머신에는 NFS로 붙이고, 윈도우 가상머신에는 CFS로 붙이는 구성을 해보았다. XenServer에 NAS를 구성하면 다음과 같은 장점이 있다.ISO 라이브러리를 XenServer내에 구성할 수 있다.XenServer는 항상 가동중이기 때문에 VM의 상태와 관계없이 안정적인 네트워크 스토리지를 제공할 수 있다.VM에서 사용하는 중요 데이터를 XenServer에...
  • 웹지기 09-27 6782 0 0 댓글 0
  • 16 [ api ] 캐쉬 사용 - 이미지 캐쉬 - 홈페이지 속도 등등
  • php 부분 head.php 상단에 추가[code]header('Expires: 0'); // rfc2616 - Section 14.21header('Last-Modified: ' . $gmnow);header('Cache-Control: no-store, no-cache, must-revalidate'); // HTTP/1.1header('Cache-Control: pre-check=0, post-check=0, max-age=0'); // HTTP/1.1header('Pragma: no-cac...
  • 웹지기 09-27 5520 0 0 댓글 0
  • 15 [ software ] 이미지를 파비콘으로 바꿔주는 파일
  • 이미지를 파비콘으로 바꿔주는 파일이다파일을 복사 또는 붙여넣기 해서C:\Program Files (x86)\Adobe\Adobe Photoshop CS3\Plug-Ins\File FormatsC:\Program Files\Adobe\Adobe Photoshop CS3\Plug-Ins\File FormatsAdobe Photoshop CS3 이곳은 현재 내가 사용하는 포토샵 버젼마다 다르다.아래경로에 넣고 포토샵을 시작하면 된다
  • 웹지기 09-27 5418 0 0 댓글 0
게시물 검색

회원로그인

접속자집계

오늘
4,414
어제
8,307
최대
33,828
전체
8,655,880

그누보드5
Copyright © funyphp.com. All rights reserved.