V. Apache Web Server 설치 및 설정

Download Report

Transcript V. Apache Web Server 설치 및 설정

실무자를 위한 리눅스
KIDC 아웃소싱팀
2004.9.
목차
Ⅰ. Linux
1. Linux 부팅과정
2. Network 설정 및 관리 명령
3. HDD 추가장착
4. Password Recovery (LILO, Grub)
5. 시스템 모니터링
6. Apache Web Server
7. Kernel Compile
Ⅱ. H/W Raid
1. ServerRaid Manager에서 Raid 구성(LG-IBM)
2. Raid 문제 발생시 대응방법
Ⅰ. LINUX
Ⅰ. LINUX 부팅 과정
Ⅰ. LINUX 부팅 과정
시스템 부팅 과정 이해도
Power on
ROM BIOS에서 지정된 부팅 드라이브로 부팅 시작
부팅 드라이브의 첫번째 섹터의 부트 섹터 읽어 들임
부팅 섹터의 부팅 프로그램인 부팅 로더(LILO) 작동
커널 이미지(/boot/vmlinuz-2.4.18-4) 적재
루트 파일 시스템(root filesystem) 마운트
시스템 최기화 프로그램(init) 작동
Login:프롬프트
Ⅰ. LINUX 부팅 과정
전원 가동후 LILO 부트가 나올 때까지의 과정
Power on
ROM BIOS에서 지정된 부팅 드라이브로 부팅 시작
부팅 드라이브의 첫번째 섹터의 부트 섹터 읽어 들임
부팅 섹터의 부팅 프로그램인 부팅 로더(LILO)작동
Ⅰ. LINUX 부팅 과정
커널 부트 이미지(vmlinuz) 적재
demsg 내용
Ⅰ. LINUX 부팅 과정
루트 파일 시스템 마운트
VFS Mount
Ⅰ. LINUX 부팅 과정
LILO설정 파일 인 LILO.conf
위치는 /etc/lilo.conf
Ⅰ. LINUX 부팅 과정
시스템 초기화 프로세스 init와 inittab
실행레벨(Run Level)
0
시스템 중지(Halt)
1
Single User Mode
2
NFS 기능을 제외한 Multi user mode
3
모든 기능을 포함한 Multi User Mode
4
사용하지 않음
5
X-Winodws X11 실행
6
System Rebooting
Ⅰ. LINUX 부팅 과정
init : 그 이후
getty에 의해서 login 화면을 불러옴
Log in :
bin/login에 의해서 password 프롬프트를 화면에 나타나게 함.
Password:
VI. Network 설정 및 관련 명령
Network 설정 방법
기본 설정
Ⅱ. Network 설정 및 관련 명령
Ⅱ. Network 설정 및 관련 명령
Network 설정 방법
네트워크 관리도구
Ⅱ. Network 설정 및 관련 명령
•
MII(Media Independent Interface ) Tool
•
Mii는 Network Interface Card의 speed와 Duplex의 설정을 보거나 설정할 수 있는 Tool 입니다.
<그림>현재 NIC의 speed와 duplex 확인
Ⅱ. Network 설정 및 관련 명령
•
MII(Media Independent Interface ) Tool
•
사용법
>mii-tool [option]
•
Mii-tool option (option 대소문자 구분)
-v, --verbose
-R, --reset
Ⅱ. Network 설정 및 관련 명령
-r, --restart:
-F media, --force=media : (100baseTx-FD,100baseTx-HD, 10baseT-FD, 10baseT-HD)
tip
/etc/rc.d/rc.loca파일에 이를 mii-tool을 speed와 duplex를 적용하고 저장하고 나오면 rebooting
할 때마다 재 설정을 해줘야 하는 번거로운 수고를 하지 않아도 된다.
Ⅲ. HDD 추가 장착
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 – 1
•
사용 중 이던 서버에 디스크 공간이 모자라는 경우 물리적인 HDD를 추가 하거나 LVM(Local Volum Manager)를 사
용하여 디스크 공간을 확보해야 하는데 여기서는 물리적인 HDD를 추가하는 것을 설명 합니다.
•
이제 물리적인 디스크를 추가 하기 전에 현재 사용중인 디스크 정보를 확인 합니다. (fdisk command 이용)
<그림>현재 fdisk 정보
Ⅲ. HDD 추가 장착
- HDD 추가장착하기 -2
•
Mount 명령어로 현재 마운트된 파일 시스템을 확인 합니다.
<그림>mount로 file system check
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 -3
<그림>추가된 디스크 dev/sdb
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 -4
Command
action
command
action
a
부팅파티션 설정
p
현재 설정된 파티션 정보를 보여줌
b
디스크 라벨 설정
q
설정된 정보를 저장하지 않고 fdisk
빠져나감
c
마운트 가능한 파티션설정
s
SUN 디스크라벨을 생성
d
파티션 삭제
t
파티션 타입을 변경
l
설정가능한 파티션 타입을 보여줌
u
유닛 정보를 열람하거나 변경 가능
m
파티션 설정 도움말
v
지정된 파티션을 검사
n
새로운 파티션을 생성
w
현재까지 설정한 파티션정보를 저
장하고 fdisk를 빠져나감.
o
도스 파티션 테이블을 생성
x
파티션 설정 전문가 모드로 들어감
<표> fdisk 명령어
참고: 전문가 모드에서는 실린더수나 헤드 수 그리고 트랙당 섹터 수를 변경할 수 있음.
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 -5
•
아래 그림은 앞에서 설명한 fdisk command로 구성한 fsidk 구성화면 후 저장한 모습입니다.
<그림>fdisk 를 이용한 파티션 구성
Ⅲ. HDD 추가 장착
- HDD 추가장착하기 -6
•
파일시스템 생성하기
<그림>file system format
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 – 7
•
이제 만든 파티션을 각 디렉토리를 생성하여 마운트 하도록합니다.
<그림>file system mount
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 – 8
•
mount 명령어로 마운트된 디렉토리를 확인 합니다.
•
<그림>mount 확인
Ⅲ. HDD 추가 장착
-
HDD 추가장착하기 – 9
•
자동마운트를 위한 /etc/fstab 편집
<그림> 추가한 디스크 자동마운트 확인
Ⅳ. Password Recovery
Ⅳ. Password Recovery
•
Boot Loader가 LILO일 경우
Control –x를 눌러 text mode로 이동
<그림>RedHat Linux 7.3 LILO
Ⅳ. Password Recovery
•
Boot Loader가 LILO일 경우
linux single or linux 1 입력
Ⅳ. Password Recovery
•
Boot Loader가 LILO일 경우
새로운 패스워드를 설정
<그림>새로운 root password 설정
Ⅳ. Password Recovery
•
Boot Loader가 Grub인 경우
single mode 들어가기-1
<그림> Boot Loader Grub
Ⅳ. Password Recovery
•
Boot Loader가 Grub인 경우
•
Single mode - 2
<그림>single mode로 들어가기
Ⅳ. Password Recovery
•
Boot Loader가 Grub일 경우
새로운 패스워드를 설정
<그림>새로운 root password 설정
Ⅳ. Password Recovery
•
Boot Loader Tip
•
•
LILO에서 Grub로 변경할때
/etc/lilo.conf 파일이 존재 하는데 이는 lilo설정 파일이다. 이 파일을 lilo.conf.anaconda
로 바꾼 뒤 grub를 install 해주면 된다.
Lilo.conf 파일이름 바꾸기:경로 /etc
mv lilo.conf lilo.conf.anaconda
Grub install하기: 경로 상관없음
grub-install /dev/sda
•
•
•
Grub에서 LILO로 변경할때
/etc경로에 가면 lilo.conf.anaconda라는 파일이 있는데 이를 lilo.conf로 바꾸고 lilo를 입
력해 주면된다.
Grub은 편집할 것이 없고, lilo 파일만 변경 후 리부팅 해주면 된다.
Lilo.conf.anaconda 파일이름 바꾸기:경로 /etc
mv lilo.conf.anaconda lilo.conf
Ⅳ. 시스템 모니터링
Ⅳ. 시스템 모니터링
•
uptime시스템 부하율 점검
•
<그림>uptime 화면
맨 끝의 3개의 숫자들은 지난 1분, 5분, 15분 동안 의 시스템을 각각 평균하여 나타내고 있는 것 입
니다.
Ⅳ. 시스템 모니터링
•
Top(시스템이 전체 운용상황 점검)
시스템 현황을 적나라게(?)보여줍니다.
<그림>top화면
Ⅳ. 시스템 모니터링
•
Free(메모리 사용현황)
•
현재 시스템의 메모리 사용상황을 나타냄.
<그림>free 화면
V. Apache Web Server 설치 및 설정
V. Apache Web Server 설치 및 설정
웹 서버 현황
웹 서버 현황
HTTP(Hyper Text Transfer Protocol)를 이용하는 인터넷 서비스 제공기능
일반 PC용과 유닉스 기반 서버들로 주로 구성
상용과 공개용으로 구분되어 출시
윈도우(windows) 계열의 경우
마이크로소프트사의 IIS(Internet Information Server)
넷스케이프사의 Enterprise 서버
오렐리사의 웹 사이트 프로페셔널
프로세스소프트웨어사의 퍼베이어 인크립트
인터넷팩토리사의 커머스 빌더 프로
유닉스(UNIX) 계열의 경우
NCSA(National Center for Supercomputing Applications) : 웹 서버의 원조
Enterprise 서버
아파치(Apache) 서버
매킨토시 계열의 경우
쿼터텍, 웹스타 등
V. Apach Web Server 설치 및 설정
아피치 웹 서버 소개
특징
기반 : 1995년 당시 가장 인기 있던 웹서버 NCSA HTTPD 1.3
이름 : NSCA 웹 데몬 배치 파일을 제공했던 사람들이 모여 구성된 구룹의 이름에서 유래
’A PATCH Server’를 조합하여 만든 이름
기존의 NCSA에 향상된 기능들을 탑재하여 아파치 웹 서버 발표
특징 : 뛰어난 기능과 안정성의 지속적 향상
최고의 성능을 발휘하여 현재 인터넷 웹 서버 중 최고의 인기 구가
지속적인 패치 파일 제공과 무료 제공
높은 마켓 셰어로 안정성 인정
응용
초기 : 유닉스(UNIX)계열 환경에서 사용
현재 : 1.3버전 이후에는 윈도우(Windows)계열용 프로그램도 발표
주의 : 1.2버전 이하는 안정성과 보안에 문제가 있을 수 있음
현재 최신 릴리즈
윈도우버젼 : apache_2.0.47-win32-x86-symbols.zip
유닉스버젼 : httpd-2.0.47.tar.gz
V. Apache Web Server 설치 및 설정
아피치 소스 구하기
- 다음의 사이트에 접속하여 다운로드
- 서적의 부록으로 제공되는 CD 등을 이용
- 최신의 아파치 웹 서버 프로그램을 다운로드
아파치 관련사이트
URL
Apache Software Foundation
http://www.apache.org
Apache Software Foundation Korea
ftp://ftp.apache.or.kr
V. Apache Web Server 설치 및 설정
기존 아파치 버전 삭제
V. Apache Web Server 설치 및 설정
다운로드 확인
V. Apache Web Server 설치 및 설정
압축 해제 목록 확인
V. Apache Web Server 설치 및 설정
설치 디렉토리 설정
V. Apache Web Server 설치 및 설정
모듈 설치 확인
V. Apache Web Server 설치 및 설정
운영 디렉토리 이동및 아파치 동작 확인
V. Apache Web Server 설치 및 설정
아파치 환경 설정하기
Httpd.conf file
내용
위치
역할
종류
:
:
:
:
아파치 웹 서버 1.3.27버전의 환경 설정 파일
아파치 설치 디렉토리 -> /usr/local/apache/conf
웹 서버 옵션 설정 수정 가능파일
htttpd.conf->아파치 웹 서버가 실행될 때 최초로 참고하는 config파일.각종 프로세스의 특징과 웹 서버의
성능 및 가상 호스트 정보들을 담고 있다.
srm.conf->서버의 각종 Mapping 정보로 보통 Aliases와 script Aliases를 가지고 있으며, 사용자 홈페이지
서비스를 위한 Users Directory,각종 서비스 파일의 확장자에 대한 Fancy Icon File들을 담고 있다.
access.conf->웹서버에 접속시 적용되는 규칙을 가지며,이로 인한 사용자 접근 제한이 가능합니다.
대표 :아파치 1.3.27버전에서는 모든 설정이 httpd.conf에 포함
선택 : httpd.conf에서 별도로 srm.conf와 access.conf를 사용할 수 있음
특징 : httpd.conf파일은 서버 운영에 대해 가장 기본적이고 기술적인 설명을 하는 서버 조정파일
설치에 관련한 httpd.conf의 위치 변화
소스 이용 설치의 경우 : /usr/local/apache/conf
와우리눅스와 함께 설치한 경우: /etc/httpd/conf
V. Apache Web Server 설치 및 설정
아파치 환경 설정 하기
V. Apache Web Server 설치 및 설정
서버 유형 설정
V. Apache Web Server 설치 및 설정
서버루트 디렉토리및 서비 Pidfile 설정
V. Apache Web Server 설치 및 설정
설정 파일 따로 사용 설정
V. Apache Web Server 설치 및 설정
타임아웃, 지속적 접속 허용, 최대 접속 허용 회수, 지속적인 접속타임 아웃 설정
V. Apache Web Server 설치 및 설정
서버 프로세스 수, 스타트 서버, 최대 클라이언트값 설정
V. Apache Web Server 설치 및 설정
포트 설정, 사용자/그룹 소유권, 서버관리자 메일주소 설정
V. Apache Web Server 설치 및 설정
서버이름, 웹 문서 디렉토리, 접근 디렉토리 유형 설정
V. Apache Web Server 설치 및 설정
에러 기록 위치 파일, 기록 메시지 범위, 별칭 정의 설정
V. Apache Web Server 설치 및 설정
접근 기록 파일 위치, 시스템 메시지 출력 설정
Ⅵ. Kernel Compile
커널 컴파일을 하게 되면 시스템에 가장 적합한 작은 커널을 만들어 시스템 성능을 최적할 수 있다.
또한 최신의 하드웨어 드라이버를 지원하고 가볍고 안정적이며 결함이 없는 시스템을 구축할 수 있다.
커널 컴파일 단계
-
-
-
커널 소스 받기
커널 소스 풀기
vi /usr/src/linux-2.4/Makefile수정
make mrproper
컴파일 옵션 설정
- make menuconfig(런레벨 3)
- make xconfig(런레벨 5)
make dep:clean
make bzlilo
모듈컴파일
- make modules
- make modules install
lilo 설정
커널 소스 받기
커널 소스 풀기
Makefile 수정, Make mrproper
Make menuconfig, make dep, make clean
Make bzlilo, make modules, make modules install
Depmode, boot image 설정
/etc/lilo.conf수정 및 적용
Ⅱ. Raid
I. LG-IBM ServeRAID Manager를
이용한 RAID 구성법
Raid Manager 초기 화면( ServeRAID 4H의 경우)
I. LG-IBMServeRAID Manager를 이용한 이용한 RAID 구성법
논리 드라이브에서 Write-Back 및 Write-Through 모드 이해(캐시 쓰기 모드 옵션) 캐시 쓰기 모드 옵션에는 다음 두개의
모드가 있다.
Write-Back 모드에서 운영 체제는 저장 영역에 기록하기 위해 데이터를 컨트롤러로 전송한다. 그 다음, 컨트롤러는
실제로 저장영역에 데이터를 기록하기 전에 운영 체제에 승인을 전송한다.
이렇게 함으로써, 성능은 증가되지만 위험이 따를 수 있다. 예를 들어, 전원 장애가 발생한 경우 현재 컨트롤러 캐시의
데이터가 손실된다. 배터리 백업 캐시 장치를 설치하여 이러한 위험을 막을 수 있다.
이 장치는 전원 장애 발생시 컨트롤러 캐시의 데이터를 보존한다.
참고: 1. 배터리 백업 캐시 장치 없이 Write-Back 모드를 사용하는 동안 정전이 되면 데이터가 손실될 수 있다.
2. 배터리 백업 캐시를 설치하지 않고 이 기능을 Write-Back 모드로 설정한 경우, 마지막 조작후 최소 10초가 지난
다음 시스템을 끈다. 이를 따르지 않는 경우에는 데이터가 손실될 수 있다.
Write-Through 모드에서 운영 체제는 저장영역에 기록하기 위해 데이터를 컨트롤러로 전송한다. 그 다음, 컨트롤러
는 데이터를 저장영역에 기록하고 운영 체제에 승인을 전송한다. 이 모드는 성능을 떨어뜨릴 수 있지만 데이터를 손실할
위험이 없다.
II. RAID 문제 발생시 대응방법
HDD Disk Fail 발생시
현재 KIDC에 설치되어 있는 RAID Conroller는 Auto Rebuild Option이 Enable이 되어 있는 상태이므로 Fail이 발생된 Disk를
제거 후 새 Disk를 삽입하면 자동으로 Rebuild를 시작한다.
전체 Disk or 2개 이상의 Disk가 Fail이 발생된 경우
이런증상의 대부분은 전원의 불안정 또는 갑작스런 시스템 다운으로 인해 발생되는 오류로서 O/S를 Booting하지 않고 Ctrl+I
를 눌러 Mini Configuration 메뉴로 진입하여 Disk 로부터 Controller로 RAID 정보를 Loading 하거나, IBM-ServeRAID
Configuration Diskette을 이용하여 부팅한 후 Make Online을 함으로서 간단하게 해결할 수 있다.
(만약, O/S를 부팅한 경우에는 반드시 Disk를 Rebuild하여야한다. 만약 그렇지 않은 경우 Data및 Kernel의 안정성을 보장
할 수 없다.)
RAID Controller 오류 발생시
흔한 경우는 아니지만 RAID Controller에 오류가 발생되는 경우가 있다. 이 경우에는 RAID Controller를 교체하여야 한다. 이
경우 새 Controller를 장착한 후에 Ctrl+I를 눌러 Mini Configuration으로 진입하여 Disk에서 RAID의 정보를 Loading한다. 이렇
게 하면 기존의 RAID구성을 그대로 인식하여 문제점을 해결할 수 있다.
RAID로 구성된 HDD의 용량이 부족하여 Disk를 추가하는 경우
Disk를 추가하는 경우 각 RAID Controller Vendor에서는 ADD Drive라는 기능을 내장하고 있다. 이 기능은 구현 가능은
하나 통상적으로 Storage Engineer사이에서는 사용되지 않는 기능이다.(시간도 많이 소요되고,RAID의 안정성도 떨어진다.)
이 경우에는 Backup을 전체적으로 한 후에 다시 재구성을 하는 것이 바람직하다.