System

AWS EC2에 제니퍼 설치 (APM)

사리생성 2024. 3. 13. 16:13

 

EC2 선택
https://aws.amazon.com/ko/ec2/instance-types/

t3a medium,  cpu 2, mem 4G

 

메모리 swap 추가

https://repost.aws/ko/knowledge-center/ec2-memory-swap-file

8G (레드햇 권고 2~8G 램인 경우는 RAM의 1배 최대 2배, 

 

ubuntu@ip-172-0-0-1:~$ sudo free -m
               total        used        free      shared  buff/cache   available
Mem:            3859         186        3302           0         370        3442
Swap:              0           0           0
ubuntu@ip-172-0-0-1:~$ sudo fallocate -l 8G /swapfile
ubuntu@ip-172-0-0-1:~$ sudo chmod 600 /swapfile
sudo mkswap /swapfile
Setting up swapspace version 1, size = 8 GiB (8589930496 bytes)
no label, UUID=fb7ace07-9284-4b42-95e3-318926a261af
ubuntu@ip-172-0-0-1:~$ sudo swapon /swapfile
ubuntu@ip-172-0-0-1:~$ sudo vi /etc/fstab
ubuntu@ip-172-0-0-1:~$ sudo swapon -s
Filename				Type		Size		Used		Priority
/swapfile                               file		8388604		0		-2
ubuntu@ip-172-0-0-1:~$

 

 

제니퍼 설치 (자바로 메모리와 연관있음)
1. 신청한다. 
OS Type and Version : Ubuntu 22.04.1 LTS
Application Server Version and Type : nginx + php-fpm8.2
DBMS Type and Version : Aurora MySQL (8.0.mysql_aurora.3.03.0)


2. 설치.

sudo apt install unzip
sudo apt-get update
sudo apt install openjdk-11-jre-headless

다운 받은 제니퍼 서버 파일 unzip 하고 설정 파일 수정.

 

data-server (server_port = 5000)

## 자바 추가. 
/home/ubuntu/server.data/bin/jennifer_data.sh 설정정보 추가.
#!/bin/sh
...
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 <-- 추가.
..
JAVA_OPTS=" ${JAVA_OPTS} -Duser.timezone=Asia/Seoul" <-- 추가.
....

## 시작 및 종료.
/home/ubuntu/server.data/bin/startup_data.sh
/home/ubuntu/server.data/bin/shutdown_data.sh


## pstree | grep ja
        |-java---47*[{java}]

        
## 메모리 문제 : jennifer_bootstrap_check=false 를 추가하라고 함.
/home/ubuntu/server.data/conf/server_data.conf 에 내용 추가.
...
jennifer_bootstrap_check=false
...

 

 

 

view-server (server_port = 7900)

## /home/ubuntu/server.view/bin/jennifer_view.sh 설정
...
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 <-- 추가.
..
JAVA_OPTS=" ${JAVA_OPTS} -Duser.timezone=Asia/Seoul" <-- 추가.
....

## 시작 및 종료
/home/ubuntu/server.view/bin/startup_view.sh
/home/ubuntu/server.view/bin/shutdown_view.sh

## pstree | grep java
        |-java---47*[{java}]
        |-java---86*[{java}]
        
## ps -ef | grep view
ubuntu      4448       1  3 04:49 pts/1    00:00:52 java -Xms2g -Xmx2g -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -Djennifer.lib=/home/ubuntu/server.view/lib -Djennifer.viewserver.config=/home/ubuntu/server.view/conf/server_view.conf -Dlogback.configurationFile=/home/ubuntu/server.view/conf/logback.xml -Djennifer.help=/home/ubuntu/server.view/help -XX:+IgnoreUnrecognizedVMOptions -XX:-OmitStackTraceInFastThrow -jar /home/ubuntu/server.view/lib/jennifer.launcher.jar com.jennifersoft.view.Main start java        
        

## 라이센스 추가. *** 제일 중요. ***
관리자 로그인 -> JENNIFER 서버 -> 라이센스

 

 

agent 설치

## php 위치 : /etc/php/8.2/fpm/php.ini

내용 추가
[jennifer]
jenniferAgent.agent_file_root=/home/ubuntu/jennifer/agent.php
extension=/home/ubuntu/jennifer/agent.php/bin/jennifer5-php-8.2.x-NTS.so
jenniferAgent.enable_cgi_cli=0

## 설정파일 수정 jennifer.conf
server_address = x.x.x.x

재시작
sudo service php8.2-fpm restart

## agent 시작
/home/ubuntu/jennifer/agent.php/bin/Jennifer5Agent -k start -c /home/ubuntu/jennifer/agent.php

## agent 제거
php.ini 에서 
;extension=/home/jennifer/agent.php/jennifer5-php-5.3.x-NTS.so
;jenniferAgent.agent_file_root=/usr/local/jennifer5-debug/

 

 

라이센스 신청
내부IP -> 내부IP

파이어월 오픈.

'System' 카테고리의 다른 글

구글 서버에 php, mysql 설치.  (0) 2024.05.11
구글 클라우드.  (0) 2024.05.10
aws 권한 (계정 추가)  (0) 2024.03.12
ubuntu python mysql dynamodb airflow postgresql redis docker yarn  (0) 2024.02.17
AWS DynamoDB 설치 사용.  (1) 2024.02.15