본문

아이네트호스팅

본문 바로가기

주메뉴

전문 엔지니어의 관리+운영+유지보수, 최고의 전문엔지니어 그룹이 능동적인 서버 운영, 1:1 Technical support (윈도우, 리눅스, 네트워크, 보안 전문가 도움), 20여년 간 축적된 서버 운영 노하우 (인터넷의 시작과 함께)
통합관리서비스 자세히 보기

왼편 메뉴

서버·IDC
상품구성
상품개요
상품구성
견적 신청
서버 판매
부가 서비스
보안 서비스
상품권 받으러 가기
이벤트 바로 보기
  • 24시간 기술지원센터
    24시간 기술지원 : Tel. 1566-6757, Fax. 02-3472-8352, Mail. support@inet.co.kr
  • 서비스 문의
    서비스 문의 및 신청 : Tel. 02-2103-7600, Fax. 02-3472-8350, Mail. sale@inet.co.kr
  • 세금 계산서 문의
    세금 계산서 문의 : Tel. 02-2103-7744, Mail. tax@inet.co.kr
  • 결제 계좌 정보
    484201-01-108410

    (주) 아이네트호스팅
  • 네임 서버 정보
    ns.gihc.net
    203.235.122.164
    ns2.gihc.net
    210.116.98.164
    ns3.gihc.net
    121.254.196.150
  • 상품구성
  • 상품특징
  • 무료 기술 지원
  • Linux 도움말
  • Windows 도움말
  • APM 및 tomcat 설치파일 보기다운로드
  • Cent os 5.5 install파일 보기다운로드
  • mysql 백업 및 복구파일 보기다운로드
  • DB 생성 및 계정파일 보기다운로드

APM 및 Tomcat설치

1. Apache 컴파일 방법과 기본 디렉토리 구성
아파치를 OS셋팅 할 때 RPM으로 설치하게 되면 /etc/httpd/로 디렉토리가 설정이 되기 때문에 관리하기가 불편하다. 그래서
OS설치 시 package를 선택하지 않고 소스로 최신 버전을 다운받아 /usr/local/apache2로 위치로 컴파일 해준다. 모든 작업은
root계정으로 진행하며 작업 디렉토리는 mkdir /home/src 만들어서 해당 디렉토리의 소스들을 다운받아 놓고 작업을 진행을 한다.
아파치를 http://www.apache.org에서 최신 버전을 다운받는다.
(1)Apache 2.2.X 버전 설치
1.openssl 설치
[root@localhost src]# wget http://www.openssl.org/source/openssl-0.9.8k.tar.gz 
[root@localhost src]# tar -zxvf openssl-0.9.8e.tar.gz
[root@localhost src]# cd openssl-0.9.8e
[root@localhost openssl-0.9.8e]# ./config --prefix=/usr/local/openssl
[root@localhost openssl-0.9.8e]#make
[root@localhost openssl-0.9.8e]#make install
(2)apache 2.2.23 설치
아파치를 http://www.apache.org에서 최신 버전을 다운받는다. 현재 셋팅 httpd-2.2.23.tar.gz이다.
다운 받은 httpd-2.2.23.tar.gz를 압축을 풀고 설치 한다.
아파치2 컴파일 전에는 항상 worker.c, prefork.c 파일을 수정하여 접근할 수 있는 사용자의 수를 증가 시켜줘야 한다. 차후에 문제가 되어 재컴파일을 해야 할 수도 있으니 항상 확인 해야 한다.
[root@localhost src]# wget http://apache.tt.co.kr/httpd/httpd-2.2.23.tar.gz 
[root@localhost src]# tar -zxvf httpd-2.2.23.tar.gz 
[root@localhost src]#
vi /home/gihcuser/src/httpd-2.2.23/server/mpm/worker/worker.c 

#ifndef DEFAULT_SERVER_LIMIT

#define DEFAULT_SERVER_LIMIT 16   #(16 -> 20으로 수정한다)

[root@localhost src]#

vi /home/gihcuser/src/httpd-2.2.23/server/mpm/prefork/prefork.c

#endif

#ifndef DEFAULT_SERVER_LIMIT

#define DEFAULT_SERVER_LIMIT 256   #(256 -> 1280으로 수정한다)

#endif

위와 같이 수정하고 하고 다시 httpd-2.2.23 디렉토리로 이동하여 컴파일을 진행한다.
[root@localhost src]# cd /home/gihcuser/src/httpd-2.2.23
[root@localhost src]# ./configure --prefix=/usr/local/apache2 --enable-modules=ssl --enable-modules=so --enable-modules=mos --enable-so --enable-mods-shared=most --enable-ssl --with-ssl=/usr/local/openssl --enable-static-rotatelogs
[root@localhost src]# make
[root@localhost src]# make install
apache 기본 Document root, script 디렉터리와 log 설정을 바꾸기 위해 아래와 같이 진행 해서 사용할 디렉토리를 만들어 놓는다. 기본으로 설정되는 /usr/local/apache2/htdocs에서의 많은 자료나 로그 그 외 서비스 설치등으로 /usr 이 full 나는 경우를 방지하기 위해 apache Document root는 파티션이 충분한 /home으로 변경하고, apache로그도 로그가 쌓이는 /var/log/apachelog로 지정해야 한다.
[root@localhost /src]#mkdir /home/httpd
[root@localhost /src]#mkdir /home/httpd/html
[root@localhost /src]#mkdir /home/httpd/cgi-bin
[root@localhost /src]#ln -s /home/httpd/html /home/ftp아이디/public_html
[root@localhost /src]#chown -R ftp아이디:ftp아이디 /home/ftp아이디/
[root@localhost /src]#chmod 711 /home/ftp아이디
[root@localhost /src]#mkdir /var/log/apachelog
디렉터리를 만들어 준 것과 같이 document root와 그 외 설정을 변경하기 위해 httpd.conf를 아래와 같이 수정한다.

[root@localhost httpd-2.2.11]# vi /usr/local/apache2/conf/httpd.conf
# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80 #(주석처리를 빼고 업체 도메인으로 수정한다)
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/usr/local/apache2/htdocs" #( 경로를 /home/httpd/html로 수정한다)
# for more information.
#
Options Indexes FollowSymLinks #(Indexes 삭제한다)
#

아파치로그 부분이 많이 쌓이기 때문에 rotatelogs 를 걸어서 200M씩 로그를 분산한다

CustomLog "|/usr/local/apache2/bin/rotatelogs /var/log/apachelog/도메인-access_log.%Y%m%d 200M" common env=!IMAGE
#(수정 전->logs/access_log , 파이프 기호 주의 )
# ErrorLog "/var/log/apachelog/ 도메인-error_log " #( 수정 전 -> logs/error_log ) #
ScriptAlias /cgi-bin/ "/home/httpd/cgi-bin/" #(수정전 -> "/usr/local/apache2/cgi-bin” )
(수정 전 -> "/usr/local/apache2/cgi-bin” )

시스템이 부팅할 때 apache가 실행 되게하고, daemon을 따로 관리할 수 있도록 /etc/rc.d/rc3.d/S99apache를 symbolic link 로 연결해준다.

[root@ /rc3.d]#ln -s /usr/local/apache2/bin/apachectl /etc/rc.d/rc3.d/S99apache

2. MySQL 설치
(1)Mysql-5.1.X 설치 방법

Mysql 5.1.37으로 인스톨한다. 테스트를 거친 최신 버전으로 설치하도록 한다.}
www.mysql.com 에서 받는다.
디렉토리 지정과 한글을 지정하도록 최소한의 옵션을 지정해 준다.
[root@localhost/src]#wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.37.tar.gz /from/ftp://mysql.byungsoo.net/pub/mysql/
[root@localhost/src]#tar -zxvf mysql-5.1.37.tar.gz
[root@localhost/src]#cd mysql- mysql-5.1.37
[root@localhost / mysql-5.1.37]#./configure --with-charset=euckr --prefix=/usr/local/mysql

Thank you for choosing MYSQ! 이라는 메시지가 뜰 것이다.
[root@localhost /mysql-5.1.37]#make
[root@localhost /mysql-5.1.37]#make install
MYSQL의 데이트를 관리 할 기초적인 테이블들이 생성이 된다.
[root@localhost /mysql-5.1.37]#cd /usr/local/mysql/bin
[root@localhost /mysql-5.1.37]#./mysql_install_db
보안상 안전하도록 mysql 이라는 유저와 그룹을 지정해서 mysql 을 구동하도록 한다.
groupadd mysql
useradd -g mysql mysql
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var chgrp -R mysql /usr/local/mysql

MySQL 소스를 풀어둔 디렉토리로 돌아가 MySQL config 파일을 copy 한다. 메모리가 512MB 경우 my-large.cnf,1~2G 경우 my-huge.cnf ,4G 경우 my-innodb-heavy-4G.cnf
cd /home/gihcuser/src/mysql-5.1.37
cp support-files/my-large.cnf /etc/my.cnf

부팅할 때 mysql을 시작시키기 위해서 실행 스크립트를 symbolic link해준다.
[root@www /rc3.d]#ln -s /usr/local/mysql/share/mysql/mysql.server /etc/rc.d/rc3.d/S99mysql

3. PHP 인스톨하기
(1)PHP_5.2.X 버전 설치
http://php.net 에서 다운 받고 압축을 푼다. 압축이 풀린 디렉터리로 이동해서 configure 한다.
[root@localhost /src]# wget http://kr2.php.net/get/php-5.2.10.tar.gz/from/kr.php.net/mirror
[root@localhost /src]# tar -zxvf php-5.2.8.tar.gz
[root@localhost /src]# cd php-5.2.8
[root@localhost /php-5.2.8]#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2
/bin/apxs --with-mysql=/usr/local/mysql --with-gd --with-png-dir --with-zlib-dir --with-jpeg-dir --with-kerberos --with-freetype-dir --enable-ftp --enable-sockets
--disable-debug --enable-magic-quotes --enable-gd-native-ttf --enable-dba=shared
[root@localhost /php-5.2.8]# make
[root@localhost /php-5.2.8]# make install
만일 libjpeg , libpng ,freetype 부분에 에러가 발생하면 yum 으로 해당 rpm 소스를 설치해준다. 설치할때 3개의 소스 devel에 관한것도 같이 설치해야 한다.
아파치가 2.x 버전이면 --with-apxs 이부분을 --with-apxs2 라고 지정을 해줘야 한다.
자세한 옵션은 .configure --help|more해서 볼 수 있다.
[root@localhost /php-5.2.8]#make
[root@localhost /php-5.2.8]#make install
환경 설정을 해주기 위해서 아래처럼 ini파일을 만들어준다.
[root@localhost /php-5.2.8]#cp php.ini-dist /usr/local/lib/php.ini

아파치의 httpd.conf 파일을 편집하여, 아래와 같이 해당라인을 추가한다.

DirectoryIndex index.html index.php #(index.php를 추가해준다)
#
AddType application/x-tar .tgz
AddType application/x-httpd-php .php htm ( 한줄을 추가 한다. )
AddType application/x-httpd-php-source .phps (한줄을 추가 한다. )

so파일을 찾을 수 있도록 ld.so.conf의 맨 아래줄에 mysqllib의 디렉터리를 지정해준다.
[root@localhost /html]#vi /etc/ld.so.conf
/usr/local/mysql/lib/mysql
저장하고 나와서 적용 될 수 있도록 ldconfig해준다
[root@localhost /etc] ldconfig

Apache 에서 인식할 수 있도록 Apache 를 재실행 시킨다.
[root@localhost /] /usr/local/apache2/bin/apachectl restart

아래와 같은 간단한 소스를 test.php라는 파일로 /home/httpd/html 안에다 만들어 실행해 본다.
[root@www /html]#vi test.php
그 다음 http://작업하고있는 서버 도메인 or IP/test.php <- php에 대한 정보가 나오면 성공이다.

4. Zend Optimizer 설치

http://zend.org/store/free_download.php 에서 최신 버전의 Zend Optimizer 를 다운 받는다.
기존 ZendOptimizer 와 다르게 최근 버전은 자동 스크립트를 제공해서 기존처럼 수동으로 라이브러리를 옮겨주고 설정하는 수고를 덜게 했다.

[root@localhost /src]#tar -zxvf ZendOptimizer-2[1].1.0b-Linux_glibc21-i386.tar.gz
[root@localhost /src]#cd ZendOptimizer-2.1.0b-Linux_glibc21-i386
[root@localhost /ZendOptimizer-2.1.0b-Linux_glibc21-i386]#./install.sh

특별한 변경사항 없이 기본으로 “OK” 를 선택해서 인스톨을 마친다.
3.3.9버전의 경우에는 ZendOptimizer디렉토리 내부에서 PHP버전에 맞는 버전의 모듈 파일을 임의의 디렉토 리에 카피하고 php.ini파일의 끝부분에 아래와 같은 내용을 추가해 준다.
[Zend]
Zend_optimizer.version=3.3.9
Zend_extension=/절대경로/ZendOptimizer.so

/home/httpd/html에 ZendOptimizer를 통해서 속도가 얼마나 향상되었는지 test2.php를 통해서 확인 해 볼 수 있다. Optimization level값을 조절 해 가면서 테스트 해본다.

[root@www /html]#vi test2.php

5. Tomcat 설치
(1)Tomcat 6.0.18설치 (jdk-6-linux-i586 바이너리)_

1) jdk 바이너리 설치 파일 다운로드
  http://java.sun.com/j2se/downloads.html
  예)j2sdk-1_4_2_05-linux-i586.bin - 리눅스 기반의 jdk 1.4.2 바이너리)
[root@localhost /src]# tar -zxvf apache-tomcat-6.0.18.tar.gz
[root@localhost /src]# mv apache-tomcat-6.0.18 /usr/local/
[root@localhost /src]# ln -s apache-tomcat-6.0.18 tomcat

2) 설치 파일 실행
다음처럼 다운받은 설치 파일을 실행시키면 jdk-6-linux-i586와 같이
디렉토리가 생성된다.
[root@localhost /src]# ./ jdk-6-linux-i586.bin
- 버전 및 플랫폼에따라 파일명은 다를 수 있음.

3) 원하는 설치경로에 생성된 디렉토리를 옮긴다.
[root@localhost /src] # mv jdk1.6.0 /usr/local

4) 설치 디렉토리를 jdk 및 jsdk로 심볼릭 링크
[root@localhost /src]# cd /usr/local
[root@localhost /local]# ln -s jdk1.6.0 java

(2)아파치 톰켓 커넥터 모듈 설치(jakarta-tomcat-connectors)

1) http://jakarta.apache.org/ 에서 현재 설치 버전에 맞는 커넥터 소스 파일을 다운로드 한다.
[root@localhost /src]# jakarta-tomcat-connectors-1.2.16-src.tar.gz

2) 해당 파일의 압축을 풀고 모듈을 설치한다.
[root@localhost /src]# tar -zvxf jakarta-tomcat-connectors-1.2.16-src.tar.gz
[root@localhost /src]# cd jakarta-tomcat-connectors-1.2.16-src/jk/native
[root@localhost /native]# ./configure --with-apxs=/usr/local/apache2/bin/apxs
[root@localhost /native]# make
[root@localhost /native]# make install

3) srcers.properties 파일을 아파치 conf 디렉토리로 복사한 후아래와 같이 값을 수정한다.
[root@localhost /src]# cp jakarta-tomcat-connectors-1.2.16-src /conf/srcers.properties /usr/local/apache2/conf/

################ JK Connetion #########################
LoadModule jk_module modules/mod_jk.so
JkSrcersFile "/usr/local/apache2/conf/srcers.properties"
JkLogFile "logs/mod_jk.log"
JkLogLevel error
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkMount /*.jsp ajp13
JkMount /admin ajp13
JkMount /admin/* ajp13
JkMount /jsp-examples ajp13
JkMount /jsp-examples/* ajp13
jkMount /servlets-examples ajp13
JkMount /servlets-examples/* ajp13
JkMount /webdav ajp13
#JkMount /webdav/* ajp13

4)아파치의 httpd.conf 에 모듈 설정부분을 추가한다.
LoadModule jk_module modules/mod_jk.so
JkSrcersFile "/usr/local/apache-ssl/conf/srcers.properties"
JkLogFile "/usr/local/tomcat/logs/mod_jk.log"
JkLogLevel debug
JkMount /examples ajp13
JkMount /examples/* ajp13
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13

(3)mysql jdbc 드라이버 설치

1)http://dev.mysql.com/downloads/connector/j/5.1.html 에서
드라이버 파일 다운로드 후 tomcat/common/lib/ 에 복사해 넣는다.
(tomcat restart 해야 적용됨)
[root@localhost /src]# wget http://dev.mysql.com/get/Downloads/Connector-J/
mysql-connector-java-5.0.5.tar.gz/from/ftp://mirror.khlug.org/mysql/
[root@localhost mysql-connector-java-5.0.5.]#]#cp mysql-connector-java-5.0.5-bin.jar
/usr/local/tomcat/common/lib/

5.1.2.5 환경변수 PATH 설정

/etc/profile 에 다음 PATH 설정 부분을 추가한다.

####java##########
export JAVA_HOME=/usr/local/java
export CATALINA_HOME=/usr/local/tomcat
PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH
export CLASSPATH=./:$JAVA_HOME/lib/tools.jar:/usr/local/tomcat/common/lib/servlet.jar
/etc/profile 설정후 바로 tomcat을 가동시키려면
source /etc/profile 을 실행하여 설정내용이 적용되도록 한다.

5.1.3 VirtualHost 추가 (virtualhost 할 때 추가)

1) httpd.conf 설정

VirtualHost XXX.XXX.XXX.XXX
DocumentRoot /home/httpd/html
ServerName hosting.test.kr
Options Indexes ExecCgi FollowSymlinks
JkMount /examples/* ajp13
JkMount /*.jsp ajp13
JkMount /servlet/* ajp13
WebAppDeploy java connection /java
CustomLog logs/hosting.inet.co.kr-access_log common
VirtualHost

2) server.xml 설정
Host name="hosting.test.kr" reloadable="true"
Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs"
prefix=”hosting.inet.co.kr_access_log."
suffix=".txt"
pattern="combined" resolveHosts="false
Context path="/java" docBase="/home/httpd/html/java"
debug="0" reloadable="true" crossContext="true"
Context path="" docBase="/home/httpd/html" debug="0"
reloadable="true" crossContext="true"
Host

5.1.4. 서비스 데몬 가동

1)아파치를 가동한다.
# /uar/local/apache2/bin/apachectl start

2)tomcat 을 가동시킨다.
# /usr/local/tomcat/bin/startup.sh

하단 푸터