상단

Storage 관련 사항을 정리 합니다.

 

Storage 종류


 

{| cellspacing="0" cellpadding="2" border="1" width="100%" bgcolor="#FFFFFF" align="center" style="line-height: 20.8px;" 
|- | width="30%" align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | Storage

| width="70%" align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | 상세 
|- | align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | DAS
(Direct Attached Storage)


align="center" valign="middle" style="background-color: rgb(238, 238, 238);"
File Storage
  • 이더넷으로 클라이언트와 통신
  • NFS (Network File System) 지원
  • CIFS (Common Internet File System) 방식 지원
    • Windows에서 네트워크 드라이브로 연결

    • SMB (Server Message Block)의 확장 프로토콜

     
     

    |- 
    | align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | SAN
    (Storage Area Network)
     
    | Block Storage

    • 다수의 Storage와 Host를 스위치 패브릭으로 연결
    • Oracle의 OCFS (Oracle Cluster File System), Veritas의 Senergy, Red Hat의 GFS (Global File System)

    |}

    NAS

     

    NAS (Network Attached Storage)

     
     
     
     mount  –u:$uid  –p:$passwd  $server:/c/$folder  $driver:
     umount  k:				#--- unmount
     showmount –e 서버			#--- NFS 서버 속성 보기
     Sample) mount –u:kisinger –p:Imsi0000 daou-kisinger4:/c/SugarPro k:
     

    RAID 구성


    • RAID (Redundant Array of Independents Disks)
      {|cellspacing="0" cellpadding="2" border="1" width="100%" bgcolor="#FFFFFF" align="center" 
      |- 
      |width="20%" align="center" valign="middle" style="background-color:#eee;"|저장 방식 
      |width="80%" align="center" valign="middle" style="background-color:#eee;"|상세 |- |align="center" valign="middle" style="background-color:#eee;"|RAID Level 0 |

    • Striping (스트라이핑)

    • 하나의 데이터를 여러개의 디스크에 분산하여 저장

    • 장점 : 빠른 I/O

    • 단점 : 낮은 안정성
      align="center" valign="middle" style="background-color:#eee;"
    • Mirroring (미러링)

    • 하나의 데이터를 두개의 디스크에 중복하여 저장

    • 장점 : 데이터의 안전성 보장

    • 단점 : Disk의 저장 용량의 50% 감소
      align="center" valign="middle" style="background-color:#eee;"
    • Disk 3개와 별도의 패리티 디스크로 구성, 순차적 파일 저장에 유리

    • 장점 : 1개의 디스크 손상을 복구, 서비스 무중단

    • 단점 : 디스크 한개만큼 용량 감소

    • RAID 3 + Spare : Disk 3개 중 하나가 비어 있고 하나의 디스크 장애시 이 빈 디스크를 사용하여 복구

    • 단점 : 디스크 2개만큼 용량 감소
      align="center" valign="middle" style="background-color:#eee;"
    • Parity

    • N - 1개의 그룹은 데이터를 저장하고 1개의 그룹은 parity 데이터를 저장

    • 장점 : RAID 0 대비 높은 안정성, RAID 1 대비 뛰어난 성능

    • 단점 : 쓰기시 부하가 걸림
      align="center" valign="middle" style="background-color:#eee;"
    • Distribute Parity

    • RAID 4와 유사하나 Parity disk가 그룹별로 분산 되어 있음

    • 최소 3개 이상의 디스크에서 특정 블록을 패리티 블록으로 사용, 무작위 읽기에 유리

    • 장점 : RAID 4 대비 병목 현상을 줄임

    • 장점 : 1개의 디스크 손상을 복구, 서비스 무중단
      align="center" valign="middle" style="background-color:#eee;"
    • 두개의 패리티 블록을 사용

    • RAID 5에서 Parity disk를 2개씩 가져감

    • 장점 : RAID 5 대비 안정성 증가 (디스크 2개까지의 손상을 허용)

    • 단점 : RAID 5 대비 비용 증가
      align="center" valign="middle" style="background-color:#eee;"
    • RAID 0를 먼저 적용하고 RAID 1을 적용
      align="center" valign="middle" style="background-color:#eee;"
    • RAID 1 + 0

    • 미러링된 세트의 스트라이프

    • RAID 1를 먼저 적용하고 RAID 0을 적용
      align="center" valign="middle" style="background-color:#eee;"
    • Just a Bunch Of Disks

    • 여러개의 디스크를 하나의 논리적인 디스크로 결합
      align="center" valign="middle" style="background-color:#eee;"
    • 일반 HDD와 SSD를 RAID로 엮어서 속도 향상
      |}

     

    Data 전송 방식


     
    • PATA (Parallel Advanced Tachnology Attachment, IDE) : 병렬 방식

    • SATA (Serial Advanced Technology Attachment, Serial ATA) : 직렬 방식

       
    • *SCSI (Small Computer System Interface) : 병렬 방식

    • iSCSI : Ethernet망에서 TCP/IP 상에 SCSI를 구현하는 기술

    • SAS (Serial Attached SCSI) : 직렬 방식

    • FC (Fibre Channel)

    • FCoE (Fibre Channel over Ethernet) : Ethernet망에서 TCP/IP를 사용하지 않고 SCSC를 구현하는 기술

    • *10Gb 이더넷 기반의 CEE/DCE는 해당 기능이 지원되는 Switch와 CNA가 필요

    • *CEE (Converged Enhanced Ethernet) 또는 DCE (Data Centre Ethernet)를 지원하는 Ethernet 환경에서 동작

    • *CNA (Converged Network Adapter) : NIC (Network Interface Card, Ethernet용 카드) 와 HBA (Host Bus Adaper, FC용 카드) 기능을 수행하는 네트워크 어댑터

    • Memory

     
     


    참고 문헌

     
     
     

    iSCSI

     

    참고 문헌

     
     
     

    Linux Storage


     

    Disk 정보 조회

    lsblk
    lsblk --output "NAME,SIZE,TYPE,FSTYPE,MOUNTPOINT,LABEL"
    fdisk -l
    parted --list
      
    blkid
      
    df -h
    df -m
    du -m
     

    Disk Partition

     

    partition's system id

     

    {| border="1" cellspacing="0" cellpadding="1" style="width:100%;" 
    |- | style="text-align: center; background-color: rgb(153, 153, 153);" | ID

    | style="text-align: center; background-color: rgb(153, 153, 153);" | Description 
    |- | style="text-align: center;" | 83

    Linux
    style="text-align: center;"
    Linux LVM (Logical Volume Manager)
    -
    style="text-align: center;"
    GPT (GUID Partition Table) <--> MBR (Master Boot Record)
    2 TB 이상의 Partition 지정 가능
    -
    style="text-align: center;"
    Linux raid auto
    }
     
     
     

    Partition 생성

    yum -y install parted
      
    1. --- parted /dev/vdb print  
    parted /dev/vdb
      help [~](~.md)
      mklabel gpt
      print
      quit
      
    parted /dev/vdb mkpart primary xfs 0 100%
    parted /dev/vdb print
      
    


    Partition 생성

    fdisk /dev/xvdb
    //--- n p 1 엔터 엔터
    //--- w
    fdisk -l
     

    RAID 생성

    yum install mdadm
    modprobe raid456
      
    1. --- RAID 0  
    mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/vdd1 /dev/vde1
    mdadm --detail --scan /dev/md0 >> /etc/mdadm.conf
    mdadm --detail --scan
    mdadm --detail /dev/md0
      
    cat /proc/mdstat
    


    RAID 삭제

    mdadm --detail /dev/md0
      
    mdadm -S /dev/md0
    mdadm --zero-superblock /dev/vdd
    mdadm --zero-superblock /dev/vde
    1.  mdadm --remove /dev/md0


    참고 문헌

     
     
     

    LVM (Logical Volume Manager)

    yum -y install lvm2 lvm2-*
      
    fdisk /dev/sdb
    //--- n p 1 엔터 엔터
    //--- t 8e
    //--- w
    fdisk -l
      
    pvcreate /dev/sdb1
    vgcreate vg_data /dev/sdb1
    lvcreate -l 100%FREE -n lv_data vg_data
      
    1.  lvcreate -L 19.99G -n lv_data vg_data  
    pvscan
    pvdisplay
      
    vgscan
    vgdisplay
      
    lvscan
    lvdisplay
    
     

    Disk format

    yum -y install xfsprogs                            #--- For mkfs.xfs
      
    mkfs.ext4 /dev/vg_data/lv_data
    mkfs.xfs /dev/vg_data/lv_data
    


    참고 문헌

     
     
     

    Disk mount

     
    • 마운트

     
     
     mkdir /nas
     lvdisplay
     mount /dev/vg_BigData001/lv_BigData001 /nas
     ### mount -t ext4 /dev/vg_BigData001/lv_BigData001 /nas
     mount                #--- Mount 상태 보기
     umount /dev/vg_BigData001/lv_BigData001
     df -m
     
     #--- 원격 파일 시스템 마운트
     mount  -t  nfs  172.18.38.398:/vol/CCHDATA01A/diska  /user
     
     #--- 윈도우 파일 시스템 마운트
     mount -t cifs 윈도우_IP/diska /user/disk
     
    • mount : Disk Mount

     
     
     [~](root@manage)# cd /
     [/](root@manage)# mkdir data 
     [/](root@manage)# mount /dev/DataVG/data /data
     [/](root@manage)# mount
     /dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
     proc on /proc type proc (rw)
     sysfs on /sys type sysfs (rw)
     devpts on /dev/pts type devpts (rw,gid=5,mode=620)
     /dev/xvda1 on /boot type ext3 (rw)
     tmpfs on /dev/shm type tmpfs (rw)
     none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
     sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
     /dev/mapper/DataVG-data on /data type ext3 (rw)
     
    • 리부팅시 자동 마운트 설정

      • vi /etc/fstab

     
     
     /dev/vg_BigData001/lv_BigData001  /nas  ext4  defaults  1  2
     
    • vi /etc/fstab : 리부팅시 자동 마운트 설정

     
     

    /# vi /etc/fstab

     
     /dev/VolGroup00/LogVol00 /                       ext3    defaults        1 1
     LABEL=/boot             /boot                   ext3    defaults        1 2
     tmpfs                   /dev/shm                tmpfs   defaults        0 0
     devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
     sysfs                   /sys                    sysfs   defaults        0 0
     proc                    /proc                   proc    defaults        0 0
     /dev/VolGroup00/LogVol01 swap                    swap    defaults        0 0
     /dev/DataVG/data        /data                   ext3    defaults        1 2
     
     #--- 반드시 fdisk -l로 확인한 /dev/mapper/vg_data-lv_data 를 입력할 것
     /dev/mapper/vg_data-lv_data /data               xfs     defaults        0 0
     
     
     
     

    NTFS Mount

     
    • 작업 환경

      CentOS 6.5가 설치된 노트북에 2개의 디스크가 있고 그 중 하나는 NTFS로 포맷되어 Windows에서 사용 중

    • NTFS 디스크 마운트 하기

      • 우선 마운트를 하기 위해서 EPEL을 설정하고 NTFS 마운트용 패키지를 설치 합니다.

     
     
     # wget [http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm](http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm)
     wget [http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm](http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm)
     rpm -Uvh epel-release-6-8.noarch.rpm
     yum install ntfs-3g
     
    • NTFS로 포맷된 디스크(/dev/sdb1)를 마운트 합니다.

     
     
     mkdir /ntfs
     mount -t ntfs-3g /dev/sdb1 /ntfs
     
    • Linux를 새로 부팅할 때 자동으로 마운트 되기를 원하면 아래와 같이 설정 합니다.

     
     
     vi /etc/fstab
     /dev/sdb1 /ntfs ntfs-3g defaults 0 0
     
     
     

    참고 문헌

     
     
     
     
     

    Resize disk

     

    resize2fs /dev/mapper/VolGroup-lv_root

     

    File System


     

    {| cellspacing="0" cellpadding="2" border="1" width="100%" bgcolor="#FFFFFF" align="center" 
    |- | width="20%" align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | File System

    | width="80%" align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | 상세 
    |- | align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | Ext
    (Extended File System)

    ext, ext2, ext3
    ext4 (fourth extended filesystem)
    align="center" valign="middle" style="background-color: rgb(238, 238, 238);"
    GNU GPL
    백업 및 복구 능력이 뛰어난 파일 시스템
    -
    align="center" valign="middle" style="background-color: rgb(238, 238, 238);"
    http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/cloud/Storage/NativeZFSOnLinux
    -
    align="center" valign="middle" style="background-color: rgb(238, 238, 238);"
    GNU GPL
    mkfs.xfs
    http://xfs.org/index.php/Main_Page
     mkfs.xfs -f -b size=512 -l size=32768b -d agcount=1 -n size=16k /dev/sdb1 ;\
     mount -o noatime,nodiratime,logbufs=8 /dev/sdb1 /mnt/test
     

    |- 
    | align="center" valign="middle" style="background-color: rgb(238, 238, 238);" | ReiserFS


    align="center" valign="middle" style="background-color: rgb(238, 238, 238);"

    -
    align="center" valign="middle" style="background-color: rgb(238, 238, 238);"
    FAT FS (File Allocation Table File System)
    NTFS (New Technology File System)
    }
     

     

    참고 문헌

     
     
     

    분산 파일 시스템


     

    GlusterFS

     

    Ceph

     

    FreeNAS

     

    Lustre

     

    가상 디스크


     
    • 이미지 생성

     
     
     qemu-img create -f qcow2 -o preallocation=metadata test.qcow2 100G
     
    • 이미지 용량 증가

     
     
     VBoxManage  modifyhd  ~.vdi  --resize 20480
     
    • 이미지 용량 감소

     
     
     qemu-img convert -c -O qcow2 source.qcow2 target.qcow2
     VBoxManage  modifyhd ~.vdi  --compact
     
    • 이미지 복제

     
     
     VBoxManage clonevdi 원본.vdi  타겟.vdi
     VBoxManage clonehd  ~.vmdk ~.vdi --format vdi
     
    • 이미지 포맷 변환

     
     
     qemu-img convert -O vdi test.qcow2 test.vdi
     
    • 이미지 내용 수정

     
     
     yum install guestfish -y
     guestfish –rw -a /cloudimages/disk/CentOS-6.5.qcow2
       run
       list-filesystems
       mount /dev/sda1 /
       edit /etc/fstab
       exit
     
     virt-edit centos-6.5-3 /etc/fstab
     

    용어 정의


     

    {| border="1" cellspacing="0" cellpadding="2" style="width: 100%;" 
    |- | style="text-align: center; background-color: rgb(241, 241, 241);" | 용어

    | style="text-align: center; background-color: rgb(241, 241, 241);" | 상세 
    |- | style="text-align: center;" | ROM

    Read Only Memory
    style="text-align: center;"
    Mask ROM
    메모리 생산시 한번만 write 가능
    -
    style="text-align: center;"
    Programmable ROM, Field Programmable ROM
    사용자가 단 1회 write 가능
    -
    style="text-align: center;"
    Erasable Programmable ROM, Ultra-Violet EPROM
    자외선을 사용하여 재기록이 가능한 메모리
    -
    style="text-align: center;"
    Electrically Erasable Programmable ROM
    전기신호를 사용하여 재기록이 가능한 메모리
    -
    style="text-align: center;"
    바이트 단위가 아닌 블록 단위 (512 Bytes 등)로 기록하는 EEPROM
    Flash Memory : USB
    NAND Flash Memory : SSD 방식의 하드디스크
    -
    style="text-align: center;"
    Random Access Memory
    -
    style="text-align: center;"
    Dynamic RAM. 정기적으로 refresh가 필요
    일반 PC 메모리로 사용
    -
    style="text-align: center;"
    Static RAM
    CPU의 캐시 메모리로 사용
    -
    style="text-align: center;"
    Non-Volatile RAM
    전원이 차단 되어도 데이터가 사라지지 않는 RAM
    방식 1 : 외부 배터리 방식
    방식 2 : EEPROM과 연동 방식
    }
     

    참고 문헌


     
     

    [[Category:Storage|Category:Storage]]
    분류: Cloud

    최종 수정일: 2024-09-30 12:26:18

    이전글 :
    다음글 :