[LVM] RHEL 7에 LVM 및 파일시스템 구성 - 수동 version (1)

[LVM] RHEL 7에 LVM 및 파일시스템 구성 - 수동 version (1)

개요

시스템 엔지니어로 직무를 수행하다보면 신규 서버를 구축할 때 오라클 DBA에게 LVM 및 파일시스템을 구성한 이후 이관을 해야되는 상황이 발생할 수 있습니다. 본 시리즈의 (1) 포스팅에서는 이러한 상황에서 관계형 DBMS인 오라클을 설치 및 운영하기 위해 필요한 LVM을 구성하는 실습을 진행하겠습니다. 다음 (2) 포스팅에서는 구성된 LVM에 파일시스템 및 마운팅을 진행하여 DBA가 사용할 수 있도록 하겠습니다.

사전학습

요구사항

모든 파티션은 Primary Partition 으로 구성하며, 파티션 테이블은 GPT 로 설정

으로 구성하며, 파티션 테이블은 로 설정 파일시스템은 EXT4 로 설정 (다른 EXT 2/3/4 파일시스템과의 하위 호환성을 보장하기 위함)

로 설정 (다른 EXT 2/3/4 파일시스템과의 하위 호환성을 보장하기 위함) 오라클 DBA에게 아래와 같이 파일시스템 구성해달라는 요청을 받음

사용자 그룹 디렉토리 구성 용량 ora_user dba 베이스 영역 /oracle 50G 데이터 영역 /oradata 150G

문제 해결 프로세스

해당 업무를 부여받을 경우 아래와 같은 프로세스로 업무를 완수합니다.

0. RHEL 7 접속 및 root 로그인

AWS에 생성된 EC2 정보에 명시된 공인 IP로 SSH 접속을 진행하겠습니다. 리눅스에 SSH를 이용하여 접속하는 방법은 2가지가 있습니다. 사용자 계정과 패스워드를 이용하여 접속하는 방식과 공개키 및 개인키를 이용하여 비대칭 암호화 방식 기반으로 인증하여 접속하는 방식입니다. 우리는 로컬에서 공개키/개인키를 자체적으로 서명 및 생성했기 때문에 공개키/개인키를 사용하여 접속하겠습니다. 초기에 RHEL 7을 생성할 때 root 패스워드 설정이 안되어있는 상태이기 때문에 sudo 명령어를 사용하여 root 패스워드를 원하는 패스워드로 변경해줍니다.

# 1. ssh 접속 $ ssh -i ~/.ssh/ec2-admin ec2-user@{본인 EC2 노드의 공인 IP} # 2. root 패스워드 변경 $ sudo passwd root root 사용자의 비밀 번호 변경 중 새 암호: 새 암호 재입력: # 3. root로 접속 $ su - 암호: # 4. root로 접속 완료 {[email protected]}$

1. 유저 및 그룹 생성

ora_user 및 dba 그룹을 생성하기 위해 아래와 같은 명령어를 입력합니다.

# 1. ora_user 사용자 생성 및 패스워드 설정 $ useradd ora_user $ echo "ora_user:ehdud123" | chpasswd # 2. dba 그룹 생성 $ groupadd dba # 3. ora_user의 기본 그룹을 dba로 변경 $ usermod -g dba ora_user # 4. ora_user의 그룹이 정상적으로 dba로 변경되었는지 확인 $ id ora_user uid=1001(ora_user) gid=1002(dba) groups=1002(dba) 또는 $ cat /etc/passwd | grep ora_user ora_user:x:1001:1002::/home/ora_user:/bin/bash # 5. oradata 및 oracle 디렉토리를 생성 $ mkdir oradata $ mkdir oracle $ ls -alrt total 12 -rw-r--r--. 1 ora_user dba 231 Mar 12 2019 .bashrc -rw-r--r--. 1 ora_user dba 193 Mar 12 2019 .bash_profile -rw-r--r--. 1 ora_user dba 18 Mar 12 2019 .bash_logout drwxr-xr-x. 4 root root 38 Oct 15 07:59 .. drwx------. 2 ora_user dba 62 Oct 15 07:59 . # 6. ora_user 사용자의 홈 디렉토리의 그룹 소유권을 dba로 변경 $ chgrp dba /home/ora_user/* $ ls -alrt total 12 -rw-r--r--. 1 ora_user dba 231 Mar 12 2019 .bashrc -rw-r--r--. 1 ora_user dba 193 Mar 12 2019 .bash_profile -rw-r--r--. 1 ora_user dba 18 Mar 12 2019 .bash_logout drwxr-xr-x. 4 root root 38 Oct 15 07:59 .. drwxr-xr-x. 2 ora_user dba 6 Oct 15 08:06 oracle drwxr-xr-x. 2 ora_user dba 6 Oct 15 08:06 oradata drwx------. 4 ora_user dba 91 Oct 15 08:06 .

2. 파일시스템 구성

EC2와 연결된 EBS를 마운팅하기 위해 아래와 같은 CLI 명령어를 입력하여 디바이스 이름 및 용량을 확인합니다.

lsblk와 df가 다른 점

lsblk는 EC2에서 접근 가능한 디스크 블럭 장치를 확인할 수 있는 명령어인 반면에 df는 물리적 디스크에서 마운팅 된 디스크의 용량을 확인하는 명령어입니다. EBS는 아직 EC2에 마운팅이 되지 않은 상태이기 때문에 df를 사용하여 확인이 불가합니다.

lsblk 명령어를 통해 확인한 디바이스를 EC2에 마운팅하기 위해 아래와 같은 방식으로 파일시스템을 구성해줍니다. mkfs 명령어를 사용하여 파일시스템을 구성할 수 있으며 시스템에서 아래와 같은 결과를 반환합니다.

# 1. 파일시스템 타입으로 ext4를 지정하여 파일시스템 구성 $ sudo mkfs -t ext4 /dev/xvdb mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 13107200 inodes, 52428800 blocks 2621440 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2199912448 1600 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done # 2. /dev/xvdb의 파일 타입을 확인할 경우 다음과 같이 파일 타입이 변경되었음을 확인할 수 있음 $ file -s /dev/xvdb /dev/xvdb: Linux rev 1.0 ext4 filesystem data, UUID=f3e78836-1c2e-4f9e-8d02-08c1612c6166 (extents) (64bit) (large files) (huge files)

3. LVM 구성

RHEL 7에 LVM 패키지를 설치하고 본 패키지를 사용하여 pv, lv, vg를 구성하겠습니다.

# 1. lvm 패키지 설치 $ yum update -y $ yum install -y lvm # 2. lvm 데몬 시작 $ systemctl start lvm2-monitor.service $ systemctl enable lvm2-monitor.service # 3. PV 구성 # 1) 물리적 볼륨 생성 $ pvcreate /dev/xvdb WARNING: ext4 signature detected on /dev/xvdb at offset 1080. Wipe it? [y/n]: y Wiping ext4 signature on /dev/xvdb. Physical volume "/dev/xvdb" successfully created. # 2) 정상적으로 pv 생성이 되었는지 확인 $ pvdisplay /dev/xvdb "/dev/xvdb" is a new physical volume of "200.00 GiB" --- NEW Physical volume --- PV Name /dev/xvdb VG Name PV Size 200.00 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID ucFVhk-I9OG-dOLN-ZP3P-ML1F-Pjco-5azrSn # 4. VG 구성 # 1) 물리적인 볼륨을 하나의 그룹으로 생성 $ vgcreate vg1 /dev/sdb1 Volume group "vg_oracle" successfully created # 2) vg가 정상적으로 생성되었는지 확인 $ vgdisplay vg_oracle --- Volume group --- VG Name vg_oracle System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size <200.00 GiB PE Size 4.00 MiB Total PE 51199 Alloc PE / Size 0 / 0 Free PE / Size 51199 / <200.00 GiB VG UUID xRiUzh-d0Xq-owQZ-qzf6-BtrJ-P32d-7L2cAn # 5. LV 생성 # 1) lv_ora_data 생성 $ lvcreate -L 150G -n lv_ora_data vg_oracle # 2) lv_oracle 생성 $ lvcreate -L 100%FREE -n lv_oracle vg_oracle # 3) 정상적으로 생성됬는지 확인 $ --- Logical volume --- LV Path /dev/vg_oracle/lv_ora_data LV Name lv_ora_data VG Name vg_oracle LV UUID jtSjlM-29sE-apx6-0OZy-yo2D-5W8q-NBht0E LV Write Access read/write LV Creation host, time ip-172-31-13-2.ap-northeast-2.compute.internal, 2021-10-15 09:04:09 +0000 LV Status available # open 0 LV Size 150.00 GiB Current LE 38400 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0 --- Logical volume --- LV Path /dev/vg_oracle/lv_oracle LV Name lv_oracle VG Name vg_oracle LV UUID ptq4tM-I5S4-BQyD-E3i2-HQf4-lAMr-aPbdiD LV Write Access read/write LV Creation host, time ip-172-31-13-2.ap-northeast-2.compute.internal, 2021-10-15 09:10:26 +0000 LV Status available # open 0 LV Size <50.00 GiB Current LE 12799 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:1

[출처]

- https://wisdom16.tistory.com/10

- https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/ebs-using-volumes.html

- https://yoursyun.tistory.com/entry/%EB%94%94%EC%8A%A4%ED%81%AC-%EA%B4%80%EB%A6%AC-%EB%AA%85%EB%A0%B9%EC%96%B4

-

from http://kimdy.tistory.com/19 by ccl(A) rewrite - 2021-10-18 16:26:12