리눅스 / RAID의 뜻과 종류

RAID

  • Redundant Array of Inexpensive Disk or Redundant Array of Independent Disk
  • 여러 개의 하드디스크를 하나처럼 사용하게 하는 기술. 예를 들어 1TB 하드디스크 두 개를 묶어서 2TB 하드디스크처럼 사용할 수 있다.
  • 크게 하드웨어 RAID와 소프트웨어 RAID로 구분할 수 있다.
  • 하드웨어 RAID는 성능이 좋으나 비싸다.
  • 소프트웨어 RAID는 운영체제에서 지원하는 것으로 OS RAID라도고 한다.

Linear RAID

  • 두 개 이상의 하드디스크를 하나처럼 사용하는 가장 단순한 RAID.
  • 1TB + 2TB + 3TB = 6TB
  • 순차적으로 하드디스크 사용. 예를 들어 A, B, C 하드디스크로 Linear RAID를 구성했다면 A에 먼저 데이터를 저장하고 A가 꽉 차면 B에 저장.
  • 리눅스 / RAID / Linear RAID / Linear RAID 만들기

RAID0

  • 두 개 이상의 하드디스크를 하나처럼 사용하는데, 저장은 디스크에 분배하여 저장한다. 예를 들어 A, B, C 디스크에 파일을 저장하면 1/3씩 나누어 각각의 디스크에 저장.
  • 하나의 디스크가 꽉 차면 분배가 불가능하므로 작은 크기의 하드디스크 용량에 맞춰진다.
  • 1TB + 2TB + 3TB = 3TB (각 디스크마다 1TB만큼만 사용 가능)
  • Linear RAID에 비하여 속도가 빠르지만, 하나의 하드디스크만 고장나도 모든 데이터가 손실된다.

RAID1

  • 하드디스크 두 개에 동시 저장하는 것으로 데이터 보존에 중점을 둔 방식.
  • 하나의 디스크가 꽉 차면 동시 저장이 불가능하므로 작은 크기의 하드디스크 용량에 맞춰진다.
  • 1TB + 2TB = 1TB
  • 하나의 하드디스크가 고장나도 데이터 손실이 없음.

RAID5

  • 세 개 이상의 하드디스크를 묶는 RAID.
  • 모든 하드디스크에 분배하여 저장하고, Parity 한 개 사용.
  • 한 개의 하드디스크가 고장나도 데이터 손실이 없음.
  • 1TB + 1TB + 1TB + 1TB = 3TB

RAID6

  • 네 개 이상의 하드디스크 필요.
  • 모든 하드디스크에 분배항 저장하고, Parity 두 개 사용.
  • 두 개의 하드디스크가 고장나도 데이터 손실이 없음.
  • 1TB + 1TB + 1TB + 1TB + 1TB = 3TB
  • RAID5에 비하여 성능이 떨어짐.

같은 카테고리의 다른 글

CentOS 7 / MySQL 설치하고 root 사용자 비밀번호 만드는 방법

CentOS 7 / MySQL 설치하고 root 사용자 비밀번호 만드는 방법

CentOS 7 패키지에는 MySQL 대신 MariaDB가 들어있습니다. 이런저런 이유로 MySQL을 꼭 사용해야 한다면 좀 번거로운 과정을 거쳐야 합니다. 일단 다음 사이트에 접속합니다. https://dev.mysql.com/downloads/repo/yum/ CentOS 7에 맞는 패키지 이름을 확인합니다. CentOS 7에서 다음과 같이 명령하여 패키지를 다운로드합니다. wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 패키지를 설치합니다. rpm -ivh mysql57-community-release-el7-11.noarch.rpm MySQL을 설치합니다. yum install mysql-server 시스템을 시작할 때 자동으로 MySQL이 시작되도록 합니다. systemctl enable mysqld MySQL을 시작합니다. systemctl start mysqld MySQL을 ...

Ubuntu 16.04 / ufw로 방화벽 설정하는 방법

Ubuntu 16.04 / ufw로 방화벽 설정하는 방법

우분투의 방화벽 설정 프로그램은 ufw입니다. ufw로 방화벽을 활성화시키고 관리하는 방법을 메모합니다. 방화벽 활성화 ufw enable 방화벽 비활성화 ufw disable 방화벽 상태 확인 ufw status 53 포트 허용 ufw allow 53 53 포트 tcp 패킷 허용 ufw allow 53/tcp 53 포트 udp 패킷 허용 ufw allow 53/udp 53 포트 거부 ufw deny 53 53 포트 tcp 패킷 거부 ufw deny 53/tcp 53 포트 udp 패킷 거부 ufw deny 53/udp 53 ...

Ubuntu 18.04 / PHP 7.4 설치하는 방법

Ubuntu 18.04 / PHP 7.4 설치하는 방법

Ubuntu 18.04 공시 저장소에 있는 PHP의 버전은 7.2입니다. CentOS보다는 최신 버전의 패키지를 제공하지만, 아주 최신 버전은 아닙니다. 그런데, 특별한 소프트웨어의 경우 PHP 7.2 보다 높은 버전을 요구하기도 합니다. 예를 들어 워드프레스. PHP 7.2에서 잘 사용하고 있는데, 7.3 이상을 권장한다고 메시지가 뜹니다. 그대로 둬도 별 문제는 없을 거 같지만, 오히려 업그레이드를 하면서 ...

CentOS 8 / Squid로 Proxy Server 만드는 방법

CentOS 8 / Squid로 Proxy Server 만드는 방법

리눅스로 프록시 서버(Proxy Server)를 만들 때 스퀴드(Squid)를 주로 사용합니다. 오픈 소스이고, 대부분의 리눅스 배포판에 패키지로 포함되어 있습니다. 스퀴드(squid)는 대중적인 오픈 소스(GPL)소프트웨어 프록시 서버이자 웹 캐시이다. 반복된 요청을 캐싱함으로 웹서버의 속도를 향상시키는 것부터, 네트워크 자원을 공유하려는 사람들에게 웹, DNS와 다른 네트워크 검색의 캐싱을 제공하고, 트래픽을 걸러줌으로써 안정성에 도움을 주는 등에 이르기까지 광범위 ...

리눅스 / 명령어 / userdel – 사용자 삭제하는 명령어

리눅스 / 명령어 / userdel – 사용자 삭제하는 명령어

userdel userdel은 사용자를 삭제하는 명령어입니다. 사용법 userdel jb jb 사용자를 삭제합니다. userdel -f jb userdel --force jb jb 사용자를 강제로 삭제합니다. userdel -r jb userdel --remove jb jb 사용자와 함께 사용자 디렉토리, 사용자 메일함도 삭제합니다. userdel -h userdel --help 도움말을 출력합니다.

Ubuntu 18.04 / Let’s Encrypt 무료 SSL 인증서 발급 받는 방법

Ubuntu 18.04 / Let’s Encrypt 무료 SSL 인증서 발급 받는 방법

Ubuntu 18.04에 Let’s Encrypt 무료 SSL 인증서를 발급 받는 방법을 요약합니다. Apache를 웹서버로 사용하는 경우입니다. Apache용 Certbot 설치 apt install software-properties-common add-apt-repository universe add-apt-repository ppa:certbot/certbot apt update apt upgrade apt install certbot python3-certbot-apache 인증서 발급 접속 가능한 도메인이어야 발급 가능합니다. 도메인이 abc.com이라 할 때… 인증서 발급 + 자동 설정 인증서 발급하고, Apache 설정 파일도 자동으로 만듭니다. certbot --apache -d abc.com 인증서만 발급 Apache용 인증서만 ...

Ubuntu 18.04 / 메모

Ubuntu 18.04 / 메모

MariaDB / 포트 변경 MariaDB의 기본 접속 포트는 3306입니다. 이를 다른 포트로 변경하고 싶다면 /etc/mysql/mariadb.conf.d/50-server.cnf를 수정합니다. port = 3306 을 찾아서 원하는 포트로 변경한 후 저장합니다. 그리고 MariaDB를 재시작합니다. service mysql restart MariaDB / Can’t connect to MySQL server on … (10061) 다음과 같은 에러를 만났다면… Can't connect to MySQL server on ... (10061) /etc/mysql/mariadb.conf.d/50-server.cnf에 있는 bind-address = 127.0.0.1 를 ...

리눅스 / 명령어 / cp - 복사하는 명령어, mv - 이동하는 명령어

리눅스 / 명령어 / cp - 복사하는 명령어, mv - 이동하는 명령어

cp, mv cp는 copy의 약자로 복사하는 명령어이고, mv는 move의 약자로 이동하는 명령어입니다. 복사하기 cp abc.txt def.txt abc.txt 파일을 def.txt로 이름을 바꾸어 복사합니다. cp abc.txt xyz xyz라는 디렉토리가 없다면 abc.txt 파일을 xyz 파일로 복사합니다. xyz라는 디렉토리가 있다면 xyz 디렉토리 안에 abc.txt 파일을 복사합니다. cp abc.txt xyz/def.txt abc.txt 파일을 xyz 디렉토리 안에 def.txt라는 이름으로 복사합니다. cp -r abc xyz abc가 디렉토리이고 xyz라는 디렉토리가 ...

Ubuntu 18.04 / hostname 확인하는 방법, 변경하는 방법

Ubuntu 18.04 / hostname 확인하는 방법, 변경하는 방법

hostname 확인하는 방법 방법 1 – 명령어로 확인하기 다음과 같이 명령하면 hostname을 출력합니다. hostname 방법 2 – 설정 파일 열어서 확인하기 /etc/hostname 파일에 hostname이 있습니다. cat /etc/hostname hostname 변경하는 방법 방법 1 – 명령어로 변경하기 다음과 같이 명령하면 hostname이 abc로 바뀝니다. hostnamectl set-hostname abc 방법 2 – 설정 파일 열어서 변경하기 텍스트 에디터로 /etc/hostname 파일을 열어서 내용을 abc로 바꾸면 hostname이 abc로 바뀝니다. 재부팅 재부팅을 하면 변경사항이 ...

CentOS / 버전 확인하는 방법

CentOS / 버전 확인하는 방법

cat /etc/redhat-release # cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) cat /etc/*release* # cat /etc/*release* CentOS Linux release 7.4.1708 (Core) Derived from Red Hat Enterprise Linux 7.4 (Source) NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7" CentOS Linux release 7.4.1708 (Core) CentOS Linux release 7.4.1708 (Core) cpe:/o:centos:centos:7