혹시 Ubuntu나 Centos8버전으로 3tier 구성 하는법 아시는분은 댓 달아주세요!
1. 리소스 그룹 생성
2. 가상 네트워크 생성 (192.168.0.0/16)
- web-sub(192.168.1.0/24)
- was-sub(192.168.2.0/24)
- db-sub(192.168.3.0/24)
3.VM(가상머신) 2개 생성 (Ubuntu 18.4)
- 가용성 집합으로 생성 해준다.
※업데이트 도메인 : 동시에 다시 부팅할 수 있는 가상 머신 그룹과 기본 물리적 하드웨어를 나타낸다.
※장애 도메인 : 공통 전원과 네트워크 스위치를 공유하는 가상 머신 그룹을 정의 한다.
web-vm을 하나 생성 해준다.
vm이 생성 되면 mobaXterm 에서 vm으로 원격 접속을 해준다.
이후 apt을 업데이트 해주고 아래 코드를 작성 해준다.
Ubuntu 버전
sudo su -
#root권한으로 변경
apt-get update
sudo
#apt 업데이트
apt-get install apache2
#apache2 설치
apt-get install libapache2-mod-jk
#apache와 tomcat 연동 모듈 설치
vim /etc/apache2/mods-available/jk.conf
#연동 모듈 설정
#위의 conf에 들어가면 JkWorkersFile /etc/libapache2-mod-jk/workers.properties 경로가 있는데
#/etc/libapache2-mod-jk/workers.properties 를 복사 해준다.
vim /etc/libapache2-mod-jk/workers.properties
worker.list=ajp13_worker
worker.ajp13_worker.port=8009
worker.ajp13_worker.host=192.168.0.20
worker.ajp13_worker.type=ajp13
worker.ajp13_worker.lbfactor=1
##설명##
#worker.list = 이름 // 이름설정으로 연결할 tomcat서버를 구분 명을 쓰면됩니다.
#worker.이름.port = port번호 // tomcat 서버의 ajp 포트를 말합니다.
#worker.이름.host = IP나 url 주소 // tomcat 서버주소
#worker.이름.type = ajp13 // apache서버와 tomcat 서버가 통신하는 프로토콜 명으로, ajp13으로 설정하면 됩니다.
#worker.이름.lbfactor=1 // 부하분산 설정으로 분산지수로 기본은 1입니다.
########
vim /etc/apache2/sites-available/000-default.conf
JkMount /*.jsp ajp13_worker
#해당 url로 들거가면 .jsp 파일은 was 서버를 향하게 된다.
아래 코드는 centos 버전
sudo yum update
#yum업데이트
sudo yum install -y httpd
#http 설치
sudo systemctl start firewalld
#firewalld 실행
sudo firewall-cmd --permanent --add-service=http
#http 방화벽 실행
sudo firewall-cmd --reload
#재시작
sudo systemctl enable httpd
#시작시 자동 실행
sudo systemctl start httpd
#httpd 데몬 실행
cd /var/www/html
sudo vim ./index.html
#index 파일에 홈페이지에 출력할 내용을 작성 해준다
#예
<head>
<title> test page </title>
</head>
<h1> WEB test page 입니다 </h1>
was-vm을 생성 해준다.
was-vm이 생성 되면 tomcat을 설치 한다.
sudo su -
#root권한으로 변경
apt-get update
apt-get upgrade
#apt 업데이트
apt-get install tomcat9
#tomcat9 설치
vim /etc/tomcat9/server.xml
# <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> 이부분 주석 해제
vim /var/lib/tomcat9/webapps/ROOT/test.jsp
#test.jsp 파일 생성
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Web Title</title>
</head>
<body>
<h1>이름, 나이, 급여 각각 입력</h1>
<form action = "res.jsp">
이름<input type = "text" name = "name"/><br/>
나이<input type = "text" name = "age"/><br/>
급여<input type = "text" name = "salary"/><br/>
<input type = "submit" value = "전송"/><br/>
</form>
</body>
</html>
#코드 작성
아래 버전은 centos 버전
sudo yum install wget
#wget 설치
sudo wget http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.27/bin/apache-tomcat-8.5.27.tar.gz
#tomcat 8.5 설치
sudo tar zxvf apache-tomcat-8.5.27.tar.gz
#압축 해제
sudo mv apache-tomcat-8.5.27 /usr/local/tomcat8
#압축 해제한 tomcat을 /usr/local/tomcat8 경로로 이동
###################### Java 설치 ##########################
# http://www.oracle.com/technetwork/java/javase/downloads/index.html
# pc로 오라클 웹 사이트 접속 후 jdk rpm 다운로드 링크 주소 복사
## 다운로드 링크 : https://download.oracle.com/java/19/latest/jdk-19_linux-x64_bin.rpm
sudo wget -c 다운로드 링크 주소
sudo rpm -ivh jdk-19_linux-x64_bin.rpm
#설치
sudo alternatives --config java
###########################################################
### 환경변수 등록 ###
sudo vim /etc/profile
#하단에 입력 해줄 것
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.11.0.9-1.el7_9.x86_64
CATALINA_HOME=/usr/local/tomcat8
CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib-jsp-api.jar:$CATALINA_HOME/lib/servlet-api.jar
PATH=$PATH:$JAVA_HOME/bin:/bin:/sbin
export JAVA_HOME PATH CLASSPATH CATALINA_HOME
#:wq 저장후 나와서 아래 명령어 입력
source /etc/profile
### server.xml 설정 ###
sudo vim /usr/local/tomcat8/conf/server.xml
#아래 설정에서 URIEncoding="UTF-8" 추가
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8" />
### tomcat8 실행 ###
sudo /usr/local/tomcat8/bin/startup.sh
or
$CATALINA_HOME/bin/startup.sh
#startup.sh 로 tomcat server 실행
#### 실행 확인 ###
Using CATALINA_BASE: /usr/local/tomcat8
Using CATALINA_HOME: /usr/local/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat8/temp
Using JRE_HOME: /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-1.el7_9.x86_64
Using CLASSPATH: /usr/local/tomcat8/bin/bootstrap.jar:/usr/local/tomcat8/bin/tomcat-juli.jar
Tomcat started.
##################
netstat -ntl
#8080 port 가 열려있는지 확인
### systemctl 등록 ###
sudo vim /etc/systemd/system/tomcat8.service
################################## 아래 내용 입력 #####################################
# Systemd unit file for tomcat
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.11.0.9-1.el7_9.x86_64"
Environment="CATALINA_HOME=/usr/local/tomcat8"
Environment="CATALINA_BASE=/usr/local/tomcat8"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
ExecStart=/usr/local/tomcat8/bin/startup.sh
ExecStop=/usr/local/tomcat8/bin/shutdown.sh
User=root
Group=root
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
############################################################################################
sudo systemctl daemon-reload
sudo systemctl enable tomcat8
# systemctl 리로드
sudo systemctl start firewalld
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
#방화벽 설정
sudo systemctl start tomcat8
#tomcat8 실행
### systemctl service 부팅 시 자동 실행 되도록 설정
sudo systemctl enable tomcat8.service
#//부팅 시 자동 실행 서비스 등록
sudo systemctl list-unit-files --type service |grep tomcat8
#등록된 서비스 조회
web nsg
was nsg
'클라우드 > Company' 카테고리의 다른 글
Azure VM port 변경하여 ssh 접속(ubuntu) (0) | 2023.01.06 |
---|---|
Azure 공부2일차 (0) | 2022.11.15 |
Azure 공부1일차 (0) | 2022.11.14 |