CentOS LVM 생성(Mirror) / Server 기본 설정(네트워크 설정 및 확인, SELINUX, firewall daemon)에 대해서 정리한다.
※ LVM 생성 [ Mirror ]
1. 디스크 추가
- /dev/sdb ( 1G )
- /dev/sdc ( 1G )
2. LVM 파티션 생성 ( 시스템ID - 8e )
- /dev/sdb1
- /dev/sdc1
3. PV 생성
#>pvcreate /dev/sdb1
#>pvcreate /dev/sdc1
#>pvcreate /dev/sdd1
- 확인
#>pvs
4. VG 생성
#>vgcreate mirror /dev/sdb1 /dev/sdc1
- 확인
#>vgs
( 2G mirror 구성을 하기 위해서 vgcreate로 /dev/sdb1과 /dev/sdc1을 묶어준다 )
5. LV 생성
#>lvcreate -l|-L <size> -m <사본갯수> -n <lv_name> <vg_name> <pv_name> ...
#>lvcreate -L 500M -m 1 -n lv01 mirror /dev/sdb1 /dev/sdc1
-확인
#>lvs
#>vgs
( 옵션 -L로 용량을 단위로 지정할때는 지정한 크기가 사용가능한 용량을 넘는다면 맨 위처럼 에러가
발생하기 때문에 주의해야한다 )
6. 파일시스템 생성
#>mkfs -t ext4 /dev/mapper/mirror-lv01
- 확인
#>file -s /dev/dm-6
( file -s로 mirror 구성된 장치 파일을 확인하려면 위와 같이 확인 해줘야 한다 )
( /dev/mirror를 확인 해보면 /dev/mapper/mirror-lv01은 링크파일로 ../dm-8을 가르키고 있는걸 볼 수 있다 )
7. 마운트
#>mkdir /lvm/mirror
#>mount /dev/mapper/mirror-lv01 /lvm/mirror
- 확인
#>df -h
( 임의의 마운트 포인트를 생성해서 마운트 연결 작업을 해준다 )
8. 장애발생
#>dd if=/dev/zero of=/dev/sdb1 count=10
#>reboot
- 확인
#>mount /dev/mapper/mirror-lv01 /lvm/mirror
#>lvscan
#>lvchange --activate a /dev/mapper/mirror-lv01
( 강제로 /dev/sdb1 장치에 장애를 발생 시켜본 결과 pvs로 확인 해보면 알 수 없는 장치가 하나 있는걸 확인 가능하다 )
9. 복구
- 장치 제거
#>vgreduce --removemissing --force <vg_name>
#>vgreduce --removemissing --force mirror
- VG 확장
#>vgextend mirror /dev/sdd1
- LV 변경
#>lvconvert -m 1 /dev/mirror/lv01 /dev/sdd1
#>lvconvert -m 0 /dev/mirror/lv01
( lvscan 명령어를 통해서 /dev/mirror/lv01이 동작하지 않고 있다는게 보인다 )
( lvchange --activate a 를 이용해서 /dev/mirror/lv01을 다시 활성화 시켜준다음 확인 해봤는데
활성화는 됬지만 여전히 에러가 발생한다 )
( VG에서 mirror에 에러가 발생한 장치를 vgreduce에서 옵션을 이용해 없애준다 )
( 미리 준비해둔 정상적인 장치인 /dev/sdd1을 mirror에 확장 시켜준다 )
( lvconvert로 LV를 변경 시켜주는데 맨 위에서 에러가 발생 하는 이유는 리눅스는 아직 자신이 PV 두개를 가지고
있는걸로 착각하기 때문에 저런 에러가 발생하는데 위와 같이 해주면 된다 )
※ Server 기본 설정
1. 네트워크 설정
#>vi /etc/sysconfig/network-scripts/ifcfg-en<tab>
( 뒤쪽에 <tab>을 누르라고 쓴 이유는 그 이후에는 사용자마다 다를수 있기 때문이다 )
ONBOOT="yes"
-> 네트워크 daemon 다시 시작
#>systemctl restart network
( ONBOOT="no"라면 yes로 변경 해주고 네트워크 데몬을 다시 시작 해준다 )
2. 네트워크 확인
- DNS lookup
#>ping www.google.co.kr
- 외부 네트워크
#>ping 8.8.8.8
- 내부 네트워크
#>ping 100.100.100.2 <gateway_address>
3. SELINUX
#>vi /etc/sysconfig/selinux
7 SELINUX=enforcing 되있다면
7 SELINUX=disabled 로 변경
* SELINUX 때문에 충돌이 나는 경우가 생기기 때문에 일단은 끄고 진행을 했다.
4. firewall daemon
#>systemctl stop firewalld
#>systemctl disabled firewalld
( 시작 프로그램에 등록을 해제 시켜주는 커멘드 )
#>systemctl status firewalld
( 상태 확인 커멘드 )
( 방화벽 데몬을 멈추고 상태를 확인 해보면 inactive가 되있는걸 확인 할 수 있다 )
댓글