CentOS 7 에 Nginx + MongoDB + Wildfly 설치
다음은 이번 설치 에 사용 되 는 시스템 및 소프트웨어 버 전 입 니 다.
Nginx 를 설치 하려 면 Pcre 와 Zlib 가 필요 합 니 다. 버 전 은:
운영 체제 설치
1. 인터페이스 언어 설치
CentOS 7 의 설치 안내 인터페이스 가 비교적 뚜렷 하고 설치 인터페이스 언어 는 간 체 중국 어 를 선택 하면 된다.
2. 설치 정보 요약
설치 정보 요약 인터페이스 에 소프트웨어 선택 이 있 는데 그 중에서 자주 사용 하 는 장면 의 패키지 집합 을 정 의 했 습 니 다. 여기 서 우 리 는 인 프 라 서버 를 선택 합 니 다.
인 프 라 서버 는 시각 화 된 조작 인터페이스 가 없 으 며, 시각 화 된 조작 인터페이스 가 필요 하 다 면 GUI 가 있 는 서버 를 선택 할 수 있다.
설치 대상 위치 에서 필요 에 따라 디스크 를 구분 할 수 있 습 니 다.
CentOS 7 은 기본적으로 디스크 를 구분 할 때 권장 하 는 boot 크기 가 500 M 이 며, 디스크 를 사용자 정의 로 구분 할 경우 boot 를 500 M 으로 설정 하 는 것 을 권장 합 니 다.
시스템 네트워크 카드 는 기본적으로 비활성화 되 어 있 으 며 NETWORK & HOST NAME 에서 사용 할 수 있 습 니 다.
설치 가 완료 되면 계속 설치 할 수 있 습 니 다.
3. 설치 과정
설치 과정 에서 루트 사용자 의 암 호 를 설정 해 야 합 니 다.이전 단계 에서 인 프 라 서버 를 선택 하면 전체 설치 과정 이 빨리 끝 납 니 다. GUI 가 있 는 서버 를 선택 하면 설치 과정 이 조금 느 리 고 설치 가 완료 되면 일반 사용 자 를 시스템 의 일반적인 작업 에 사용 하도록 설정 해 야 합 니 다.
4. 컴 파 일 러 설치
설치 소프트웨어 집합 을 선택 할 때 추가 패 키 지 를 선택 하지 않 으 면 시스템 은 기본적으로 gcc 컴 파일 러 가 없 으 므 로 우리 가 직접 설치 해 야 합 니 다. 설치 과정 은 매우 간단 합 니 다.
# yum install gcc gcc-c++
3. Nginx 설치
nginx 를 설치 하려 면 pcre 와 zlib 에 가 야 합 니 다. 여기 서 우 리 는 세 개의 소프트웨어 의 소스 패 키 지 를 다운로드 해 야 합 니 다. 소스 코드 가 컴 파일 된 방식 으로 설치 하고 설정 해 야 합 니 다.
nginx, pcre, zlib 를 순서대로 풀 고 nginx 디 렉 터 리 에 들 어가 서 실행 합 니 다.
# ./configure --prefix=/usr/local/nginx-1.9.3 --with-zlib=../zlib-1.2.7 --with-pcre=../pcre-8.37
-- prefix 는 nginx 의 설치 디 렉 터 리 를 지정 했다
-- with - zlib 는 zlib 의 원본 패 키 지 를 가리킨다
-- with - pcre 가 가리 키 는 것 은 pcre 의 원본 패키지
설정 이 완료 되면 설치 할 수 있 습 니 다.
# make && make install
설치 가 완료 되면 해당 사용자 그룹 및 사용 자 를 만 들 고 Nginx 의 디 렉 터 리 권한 과 설정 을 조정 해 야 합 니 다.
Nginx 설정 수정
# vi /usr/local/nginx-1.9.3/conf/nginx.conf
장차
#user nobody;
#pid logs/nginx.pid;
#access_log logs/access.log main;
주석 을 지우 고
user nginx;
pid /usr/local/nginx-1.9.3/nginx.pid;
access_log /www/log/nginx/access.log main;
사용자 그룹 및 사용자 추가
# groupadd nginx
# useradd -g nginx nginx
Nginx 디 렉 터 리 권한 조정
# chown nginx:nginx /usr/local/nginx-1.9.3 -R
그리고 Nginx 로그 디 렉 터 리 를 만 들 고 디 렉 터 리 권한 을 설정 합 니 다.
# mkdir -p /www/log/nginx
# chown nginx:nginx /www/log/nginx -R
4. Nginx 설정
Nginx 를 설정 하려 면 주로 두 가지 일 을 해 야 합 니 다. 1. Nginx 가 자동 으로 작 동 하도록 설정 합 니 다. 2. 방화벽 을 설정 하면 외부 네트워크 가 80 포트 에 접근 할 수 있 습 니 다.
1. Nginx 부팅 설정
/ lib / systemd / system 에 Nginx 서비스 스 크 립 트 를 새로 만 듭 니 다.
# touch /lib/systemd/system/nginx.service
다음 내용 을 입력 하 십시오.
[Unit]
Description=The nginx HTTP and reverse proxy server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx-1.9.3/nginx.pid
ExecStartPre=/usr/local/nginx-1.9.3/sbin/nginx -t
ExecStart=/usr/local/nginx-1.9.3/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
KillMode=process
KillSignal=SIGQUIT
TimeoutStopSec=5
PrivateTmp=true
[Install]
WantedBy=multi-user.target
저장 후 실행
# systemctl enable nginx.service
Nginx 가 시동 을 걸 수 있 도록, 시동 을 취소 하려 면 실행 할 수 있 습 니 다.
# systemctl disable nginx.service
Nginx 를 시작 하면 실행 할 수 있 습 니 다.
# systemctl start nginx.service
Nginx 설정 을 다시 불 러 오 면 실행 할 수 있 습 니 다.
# systemctl reload nginx.service
Nginx 실행 상태 보기
# systemctl status nginx.service
2. 방화벽 설정
Nginx 설치 가 완료 되면 80 포트 가 통과 할 수 있 도록 방화벽 에 규칙 을 설정 해 야 합 니 다.방법 이 간단 하 다
# firewall-cmd --permanent --zone=public --add-service=http
그리고 방화벽 을 다시 켜 면 효력 이 발생 한다.
# systemctl restart firewalld.service
3. 테스트
브 라 우 저 로 서버 주 소 를 방문 하면 Nginx 의 환영 인터페이스 를 보고 설정 이 성공 했다 는 것 을 설명 합 니 다.
5. MongoDB 설치 및 설정
MongoDB 를 / usr / local / mongodb - 3.0.5 로 압축 해제
MongoDB 프로필 추가
# touch /usr/local/mongodb-3.0.5/mongodb.conf
다음 내용 입력
systemLog:
destination: file
path: /www/log/mongodb/mongodb.log
logAppend: true
processManagement:
fork: true
pidFilePath: /usr/local/mongodb-3.0.5/mongodb.pid
storage:
dbPath: /data/mongodb
directoryPerDB: true
사용자 그룹 및 사용자 추가:
# groupadd mongodb
# useradd -g mongodb mongodb
MongoDB 의 디 렉 터 리 권한 조정
# chown mongodb:mongodb /usr/local/mongodb-3.0.5 -R
그리고 MongoDB 의 데이터 디 렉 터 리 와 로그 디 렉 터 리 를 만 들 고 해당 디 렉 터 리 권한 을 설정 합 니 다.
# mkdir -p /www/log/mongodb
# chown mongodb:mongodb /www/log/mongodb -R
# mkdir -p /data/mongodb
# chown mongodb:mongodb /data/mongodb -R
/ lib / systemd / system 에 MongoDB 서비스 스 크 립 트 를 새로 만 듭 니 다.
# touch /lib/systemd/system/mongodb.service
다음 내용 을 입력 하 십시오.
[Unit]
Description=Mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/mongodb-3.0.5/mongodb.pid
ExecStartPre=/bin/rm -rf /data/mongodb/mongod.lock
ExecStart=/bin/su - mongodb -c "/usr/local/mongodb-3.0.5/bin/mongod --config /usr/local/mongodb-3.0.5/mongodb.conf"
ExecStop=/bin/kill -2 $MAINPID
KillMode=process
KillSignal=SIGQUIT
TimeoutStopSec=5
PrivateTmp=true
[Install]
WantedBy=multi-user.target
저장 후 다음 명령 을 실행 하여 부팅 을 추가 합 니 다.
# systemctl enable mongodb.service
다음 명령 을 실행 하여 MongoDB 를 시작 합 니 다.
# systemctl start mongodb.service
6. 설치 설정 JDK
JDK 압축 풀기 / usr / local / jdk 1.8.051
/ etc / profile 마지막 가입
export JAVA_HOME=/usr/local/jdk1.8.0_51
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
저장 후 실행
# source /etc/profile
환경 변수 적용, 통과
# java -version
설정 성공 여부 확인
7. 설치 설정 Wildfly
Wildfly 를 / usr / local / wildfly - 9.0.1. Final 로 압축 풀기
1. 시작 프로필 수정
# vi /usr/local/wildfly-9.0.1.Final/bin/init.d/wildfly.conf
아래 설정
# JAVA_HOME="/usr/lib/jvm/default-java"
# JBOSS_HOME="/opt/wildfly"
# JBOSS_USER=wildfly
주석 을 지우다
JAVA_HOME="/usr/local/jdk1.8.0_51"
JBOSS_HOME="/usr/local/wildfly-9.0.1.Final"
JBOSS_USER=www
2. 시작 스 크 립 트 수정
# vi /usr/local/wildfly-9.0.1.Final/bin/init.d/wildfly-init-redhat.sh
찾아내다
JBOSS_CONF="/etc/default/wildfly.conf"
으로 변경
JBOSS_CONF="/usr/local/wildfly-9.0.1.Final/bin/init.d/wildfly.conf"
찾아내다
JBOSS_HOME=/opt/wildfly
으로 변경
JBOSS_HOME=/usr/local/wildfly-9.0.1.Final
찾아내다
JBOSS_PIDFILE=/var/run/wildfly/wildfly.pid
으로 변경
JBOSS_PIDFILE=/usr/local/wildfly-9.0.1.Final/wildfly.pid
찾아내다
JBOSS_CONSOLE_LOG=/var/log/wildfly/console.log
으로 변경
JBOSS_CONSOLE_LOG=/www/log/jboss/console.log
Wildfly 로그 디 렉 터 리 수정
다음 파일 편집
# vi /usr/local/wildfly-9.0.1.Final/standalone/configuration/standalone.xml
찾아내다
<file relative-to="jboss.server.log.dir" path="server.log"/>
으로 변경
<file path="/www/log/jboss/server.log"/>
사용자 그룹 및 사용자 추가
# groupadd www
# useradd -g www www
Wildfly 디 렉 터 리 권한 조정
# chown www:www /usr/local/wildfly-9.0.1.Final -R
그리고 Wildfly 로그 디 렉 터 리 를 만 들 고 디 렉 터 리 권한 을 설정 합 니 다.
# mkdir -p /www/log/jboss
# chown www:www /www/log/jboss -R
시작 스 크 립 트 추가
/ lib / systemd / system 에 Wildfly 서비스 스 크 립 트 를 새로 만 듭 니 다.
# touch /lib/systemd/system/jboss.service
다음 내용 을 입력 하 십시오.
[Unit]
Description=Wildfly
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/wildfly-9.0.1.Final/bin/init.d/wildfly-init-redhat.sh start
ExecStop=/usr/local/wildfly-9.0.1.Final/bin/init.d/wildfly-init-redhat.sh stop
[Install]
WantedBy=multi-user.target
저장 후 다음 명령 을 실행 하여 부팅 을 추가 합 니 다.
# systemctl enable jboss.service
다음 명령 을 실행 하여 Wildfly 시작
# systemctl start jboss.service
우량 하 다
상기 절 차 를 거 친 후에 필요 한 소프트웨어 가 설치 되 었 고 그 다음 에 일부 설정 을 해서 시스템 을 최적화 시 켜 야 한다.
1. MongoDB 튜 닝
MongoDB 실행 시 큰 메모리 페이지 를 사용 하지 않 는 것 을 권장 합 니 다 (http://docs.mongodb.org/manual/tutorial/transparent-huge-pages/)
새 스 크 립 트
# touch /etc/init.d/disable-transparent-hugepages
다음 내용 입력
#!/bin/sh
### BEGIN INIT INFO
# Provides: disable-transparent-hugepages
# Required-Start: $local_fs
# Required-Stop:
# X-Start-Before: mongod mongodb-mms-automation-agent
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Disable Linux transparent huge pages
# Description: Disable Linux transparent huge pages, to improve
# database performance.
### END INIT INFO
case $1 in
start)
if [ -d /sys/kernel/mm/transparent_hugepage ]; then
thp_path=/sys/kernel/mm/transparent_hugepage
elif [ -d /sys/kernel/mm/redhat_transparent_hugepage ]; then
thp_path=/sys/kernel/mm/redhat_transparent_hugepage
else
return 0
fi
echo 'never' > ${thp_path}/enabled
echo 'never' > ${thp_path}/defrag
unset thp_path
;;
esac
저장 후 파일 을 수정 할 수 있 는 실행 권한
# chmod +x /etc/init.d/disable-transparent-hugepages
/ lib / systemd / system 아래 시작 스 크 립 트 를 새로 만 듭 니 다.
# touch /lib/systemd/system/dthp.service
다음 내용 을 입력 하 십시오.
[Unit]
Description=Disable Transparent Huge Pages (THP)
[Service]
ExecStart=/etc/init.d/disable-transparent-hugepages start
TimeoutStopSec=5
PrivateTmp=true
[Install]
WantedBy=multi-user.target
저장 후 다음 명령 을 실행 하여 부팅 을 추가 합 니 다.
# systemctl enable dthp.service
다음 명령 실행 스 크 립 트 시작
# systemctl start dthp.service
MongoDB 를 다시 시작 하면 유효 합 니 다.
2. ulimit 튜 닝
편집 / etc / security / limits. conf
# vi /etc/security/limits.conf
다음 설정 추가
* soft nofile 65536
* hard nofile 65536
저장 후 현재 사용 자 를 종료 하고 다시 로그 인 후 실행
# ulimit -n
유효 여부 확인
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.