본문

아이네트호스팅

본문 바로가기

주메뉴

전문 엔지니어의 관리+운영+유지보수, 최고의 전문엔지니어 그룹이 능동적인 서버 운영, 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
  • PC 원격 지원
  • 결제 계좌 정보
    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

하단 푸터