Total: Today: Yesterday:
'노하우/Server'에 해당되는 글 3건
2020.05.31 [nginx] websocket forwarding
2019.08.10 [MongoDB] CentOS 7에 설치하기
2019.04.19 [scouter] AWS EC2 인스턴스에 scouter 설치하기 1
노하우/Server | 2020. 5. 31. 18:58 | Posted by 자수씨

웹소켓 서버를 nginx 를 통해 포워딩을 하려고 단순하게 아래와 같이 서버 설정을 할 경우 정상적으로 처리가 되지 않는다.

    server {
        ...

        # forward {context-path}
        location /{context-path}/ {
            proxy_pass http://localhost:{port}/{context-path}/;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "Upgrade";
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $host;
        }

아래와 같이 map 설정을 해주어야 정상동작을 한다.

    map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
    }

    server {
        ...

 

참고자료: http://nginx.org/en/docs/http/websocket.html

'노하우 > Server' 카테고리의 다른 글

[MongoDB] CentOS 7에 설치하기  (0) 2019.08.10
[scouter] AWS EC2 인스턴스에 scouter 설치하기  (1) 2019.04.19

노하우/Server | 2019. 8. 10. 18:34 | Posted by 자수씨

1. yum repository 에 MongoDB 추가

# vi /etc/yum.repos.d/mongodb.repo

/etc/yum.repos.d/mongodb.repo

[MongoDB]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1

2. MongoDB 서버 설치

# yum install mongodb-org

설치하는 시점(2019.08.10)에는 4.0.12 버전으로 설치가 되었습니다.

Installed:
  mongodb-org.x86_64 0:4.0.12-1.el7                                                                                                                                                                     

Dependency Installed:
  mongodb-org-mongos.x86_64 0:4.0.12-1.el7          mongodb-org-server.x86_64 0:4.0.12-1.el7          mongodb-org-shell.x86_64 0:4.0.12-1.el7          mongodb-org-tools.x86_64 0:4.0.12-1.el7

3. MongoDB 서비스 시작

MongoDB 서비스를 시작하기 위해서는 아래와 같은 명령어를 입력합니다.

# systemctl start mongod.service

시스템 부팅 시에 자동으로 시작되게 하기 위해서 아래의 명령어를 입력합니다.

# systemctl enable mongod.service

서비스가 시작된 후 버전 확인을 위해서는 다음 명령을 통해 확인 가능합니다.

# mongod --version
db version v4.0.12
git version: **
OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
allocator: tcmalloc
modules: none
build environment:
    distmod: rhel70
    distarch: x86_64
    target_arch: x86_64

참고자료

'노하우 > Server' 카테고리의 다른 글

[nginx] websocket forwarding  (0) 2020.05.31
[scouter] AWS EC2 인스턴스에 scouter 설치하기  (1) 2019.04.19

노하우/Server | 2019. 4. 19. 22:47 | Posted by 자수씨

스카우터 설치

2019.04.19 기준 2.6.1 버전으로 설치

서버 (collector) 설치

서버만 돌릴 거면 agent 는 제거

$ wget https://github.com/scouter-project/scouter/releases/download/v2.6.1/scouter-all-2.6.1.tar.gz
$ tar xzf scouter-all-2.6.1.tar.gz

$ cd scouter
$ rm -rf agent.*

scouter/server/conf/scouter.conf 설정 (6180 은 api 서버에서 쓸 예정이므로 다른 포트로 변경해준다.)

# Agent Control and Service Port(Default : TCP 6100)
net_tcp_listen_port=6100

# UDP Receive Port(Default : 6100)
net_udp_listen_port=6100

# Http Port for scouter-pulse(Default : 6180)
net_http_port=6101

# DB directory(Default : ./database)
db_dir=/<스토리지경로>/scouter/database

# Log directory(Default : ./logs)
log_dir=/<스토리지경로>/scouter/logs

실행법은 startup.sh 로 한다. (java 가 설치안된 경우에는 별도로 설치)

[ec2-user@~~ server]$ ./startup.sh 
nohup: redirecting stderr to stdout
  ____                  _            
 / ___|  ___ ___  _   _| |_ ___ _ __ 
 \___ \ / __/   \| | | | __/ _ \ '__|
  ___) | (_| (+) | |_| | ||  __/ |   
 |____/ \___\___/ \__,_|\__\___|_|                                      
 Open Source S/W Performance Monitoring  
 Scouter version 2.6.1

[ec2-user@~~ server]$ netstat -na | grep LISTEN    
tcp        0      0 :::6100                     :::*                        LISTEN      
tcp        0      0 :::6101                     :::*                        LISTEN      

client 에서 정상적으로 접근되면 서버는 설치 완료

에이전트 (agent.host) 설치

리눅스 서버에 agent.host 를 설치할 예정이므로 min 버전을 다운 받아 설치한다.
(server 는 필요 없으므로 제거)

$ wget https://github.com/scouter-project/scouter/releases/download/v2.6.1/scouter-min-2.6.1.tar.gz
$ tar xzf scouter-min-2.6.1.tar.gz

$ cd scouter
$ rm -rf server

scouter/agent.host/conf/scouter.conf 설정

obj_name=<agent이름>
net_collector_ip=<collector IP>
net_collector_udp_port=6100
net_collector_tcp_port=6100
#cpu_warning_pct=80
#cpu_fatal_pct=85
#cpu_check_period_ms=60000
#cpu_fatal_history=3
#cpu_alert_interval_ms=300000
#disk_warning_pct=88
#disk_fatal_pct=92

scouter/agent.host 에서 ./host.sh 로 실행시킨다.

[ec2-user@ip~~ agent.host]$ ./host.sh 
nohup: redirecting stderr to stdout
  ____                  _            
 / ___|  ___ ___  _   _| |_ ___ _ __ 
 \___ \ / __/   \| | | | __/ _ \ '__|
  ___) | (_| (+) | |_| | ||  __/ |   
 |____/ \___\___/ \__,_|\__\___|_|                                      
 Open Source S/W Performance Monitoring  
 Scouter version 2.6.1

Configure -Dscouter.config=./conf/scouter.conf
Scouter Host Agent Version 2.6.1 2019-03-17 08:45 GMT
System JRE version : 1.8.0_201

클라이언트에 정상적으로 host 정보가 집계되면 성공

에이전트 (agent.java) 설치

데이터를 집계할 WAS 는 Tomcat 이기 때문에 catalina.sh 에 다음과 같이 추가한다.

$CATALINA_HOME/bin/catalina.sh

# scouter settings
JAVA_OPTS="$JAVA_OPTS -javaagent:/home/ec2-user/scouter/agent.java/scouter.agent.jar"

Tomcat 을 재시작 하면 collector 쪽에 데이터를 전송한다.

참고자료

http://gunsdevlog.blogspot.com/2017/07/scouter-apm-1.html

'노하우 > Server' 카테고리의 다른 글

[nginx] websocket forwarding  (0) 2020.05.31
[MongoDB] CentOS 7에 설치하기  (0) 2019.08.10