1. 기존 설치된 패키지 제거
> OS에 포함되어 있거나 기존에 쓰던 서버를 활용하는 것이라면 버전 호환성을 위해 제거 후 다시 설치
001
002
003
004
005
| yum -y remove \ httpd \ nginx \ java*jdk-devel \ php |
>>>>>> description
– 설치여부 및 버전 확인 : yum list installed httpd* nginx* php* java*jdk-devel
2. APACHE OR NGINX
>>> 설치
001
002
003
004
005
006
| ## apache yum -y install --enablerepo=remi,remi-php56 \ httpd httpd-devel ## nginx yum -y install --enablerepo=remi,remi-php56 \ nginx nginx-devel |
>>>>>> description
– remi repository를 사용
>>> 시스템 시작시 자동실행설정
001
002
003
004
| ## apache systemctl enable httpd ## nginx systemctl enable nginx |
>>>>>> description
– 서비스는 설정파일 수정 후 시작함. (step5. 서비스 설정)
3. JDK & TOMCAT
>>> jdk 설치 가능여부 확인
001
| yum list --enablerepo=remi java*jdk-devel |
>>>>>> description
– 설치가능여부를 확인하고 필요한 버전의 패키지(1.7 or 1.8)를 설치
>>> jdk 설치
001
002
| yum -y install --enablerepo=remi \ java-1.8.0-openjdk-devel.x86_64 |
>>>>>> description
– 의존성 있는 기타 패키지가 함께 설치됨
>>> jdk 설치 확인
001
| java -version |
>>>>>> description
– 버전정보가 확인된다면 정상설치된 것임
>>> tomcat7 설치 : yum 설치시 apache-common-collections 버전 충돌로 설치 되지 않는다. 직접 다운받아 설치하도록 한다.
001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
| ## yum 설치 : 현재기준[2014-09-14] 의존성 에러발생 yum -y install --nogpgcheck \ tomcat7 tomcat7-admin-webapps tomcat7-webapps ## 다운로드 cd /usr/local/src wget http: //server .opendocs.co.kr /apache-tomcat-8 .0.21. tar .gz ## 압축해제 tar xvf apache-tomcat-8.0.21. tar .gz ## 폴더이동 mv apache-tomcat-8.0.21 ../ ## 시작 / 종료 / 재시작 스크립트 작성 vi /etc/init .d /tomcat ## 실행권한 변경 chmod 755 /etc/init .d /tomcat ## 시작시 자동실행 chkconfig --add tomcat chkconfig --level 234 tomcat on ## 서비스 시작 service tomcat start |
001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
| ## /etc/init.d/tomcat #!/bin/bash # description: Tomcat Start Stop Restart # processname: tomcat # chkconfig: 234 20 80 # 환경변수 등록 JAVA_HOME= /usr/lib/jvm/java-1 .8.0-openjdk export JAVA_HOME PATH=$JAVA_HOME /bin :$PATH export PATH CATALINA_HOME= /usr/local/apache-tomcat-8 .0.21 case $1 in start) # 시작 sh $CATALINA_HOME /bin/startup .sh ;; stop) # 종료 sh $CATALINA_HOME /bin/shutdown .sh ;; restart) # 재시작 sh $CATALINA_HOME /bin/shutdown .sh sh $CATALINA_HOME /bin/startup .sh ;; esac exit 0 |
>>>>>> description
– 단순압축 해제만으로 설치가능
– 운영을 위하여 시작/종료/재시작의 스크립트를 작성
– 운영을 위하여 시작/종료/재시작의 스크립트를 작성
4. PHP
>>> 설치
001
002
| yum -y install --enablerepo=remi,remi-php56 \ php php-devel php-pear |
>>>>>> description
– remi repository를 사용
– PEAR : 재사용할 수 있는 PHP 컴포넌트를 관리해주는 시스템
– PECL : PHP 확장라이브러리 설치 및 업그레이드 기능을 제공하며 PEAR와 함께 설치됨
– PEAR : 재사용할 수 있는 PHP 컴포넌트를 관리해주는 시스템
– PECL : PHP 확장라이브러리 설치 및 업그레이드 기능을 제공하며 PEAR와 함께 설치됨
>>> 확장라이브러리 설치
001
002
003
004
| yum -y install --enablerepo=remi,remi-php56 \ php-gd php-mbstring php-mhash \ php-mcrypt php-bcmath \ php-mysql php-mysqli |
>>>>>> description
– remi repository를 사용
– PHP로 각종 라이브러리를 사용할 수 있도록 설치
– PHP로 각종 라이브러리를 사용할 수 있도록 설치
>>> PECL을 통한 확장라이브러리 설치 및 충돌해결
001
002
003
004
005
006
007
| ## 충돌해결 pecl upgrade igbinary pecl upgrade memcached redis ## 설치 yum -y install --enablerepo=remi,remi-php56 \ php-pecl-memcached php-pecl-redis \ php-pecl-zendopcache php-pecl-xdebug |
001
002
003
004
| ## 설치시 충돌발생 PHP Warning: PHP Startup: igbinary: Unable to initialize module PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/redis.so' - /usr/lib64/php/modules/redis .so: undefined symbol: igbinary_unserialize in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/memcached.so' - /usr/lib64/php/modules/memcached .so: undefined symbol: igbinary_unserialize in Unknown on line 0 |
>>>>>> description
충돌내용
– 설치된 php컴파일 버전과 라이브러리의 컴파일 버전이 일치하지않음
– PECL로 라이브러리의 컴파일버전을 업그레이드 해야함
– 설치된 php컴파일 버전과 라이브러리의 컴파일 버전이 일치하지않음
– PECL로 라이브러리의 컴파일버전을 업그레이드 해야함
>>> yum으로 제공되지 않는 확장라이브러리 설치
001
002
003
004
005
006
007
008
| ## mongoDB 라이브러리 설치 pecl install mongo vi /etc/php .d /mongo .ini extension=mongo.so ## svn 라이브러리 설치 pecl install svn vi /etc/php .d /svn .ini extension=svn.so |
>>>>>> description
– redis, memcached등은 자동으로 ini에 추가되나 mongo, svn의 경우 수동으로 추가해주어야 함
– 다음명령으로 PECL 설치내역 및 버전 확인
pecl list
– 다음명령으로 PECL 설치내역 및 버전 확인
pecl list
5. NodeJS
>>> 설치
001
002
003
004
| # 패키지 설치 yum -y install --enablerepo=remi npm nodejs # 패키지 관리자 업데이트 npm -g update |
>>>>>> description
– remi repository를 사용
– NPM(Node Package Manager) : nodejs와 함께 자동 설치됨
– NPM(Node Package Manager) : nodejs와 함께 자동 설치됨
>>> 서비스 운영을 위한 패키지 설치
001
| npm -g install supervisor forever |
>>>>>> description
– ‘-g’ : 글로벌 옵션을 주어 설치
– supervisor : js 파일 수정시 자동으로 재시작 해줌
– forever : 예외 발생시 데몬이 죽어도 자동으로 재시작(무한 또는 횟수 지정) 해줌
※ 상세 활용법은 별도 문서 작성 [forever], [supervisor]
– supervisor : js 파일 수정시 자동으로 재시작 해줌
– forever : 예외 발생시 데몬이 죽어도 자동으로 재시작(무한 또는 횟수 지정) 해줌
※ 상세 활용법은 별도 문서 작성 [forever], [supervisor]
[참고]
http://myblog.opendocs.co.kr/archives/117
댓글 없음:
댓글 쓰기