일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- DataTable
- jQuery
- MySQL
- android fragment
- Firebase
- Android Apk 이름
- fragment
- error
- 안드로이드
- apache gzip
- Program type already present
- JavaScript
- html
- android error
- R프로그래밍
- tomcat
- Eclipse
- Android Apk
- Kotlin
- Java
- css
- Android
- release Apk
- Android Apk 이름 변경
- spring
- CSS사용법
- java error
- FLUTTER
- release unsigned
- Exception
- Today
- Total
selfstarter
Centos7 서버 구축 정리 본문
Centos7 서버 구축 정리
스펙
centos download : http://mirror.kakao.com/centos/7.8.2003/isos/x86_64/ CentOS-7-x86_64-DVD-2003.iso
Jdk version : 1.8.0_261(Oracle jdk) (https://www.hanumoka.net/2018/04/30/centOs-20180430-centos-install-jdk/)
DB version : 10.2.13-MariaDB
tomcat version : tomcat 9.0.21
Virtualbox 네트워크 설정
1) virtualbox에서 상단 메뉴에서 파일 -호스트 네트워크 관리자 선택
2) 수동으로 어댑터 설정 선택하고 Ipv4, Ipv4 서브넷 마스크를 기존 ip에 알맞게 작성(호스트 ip주소 맨끝자리를 변경한다던가)
3) 실행시킬 가상환경을 선택 후 오른쪽 마우스 클릭해서 설정 이동
4) 네트워크에서 어댑터 2에 어댑터에 브리지 선택(공유기로 부터 ip를 할당받음)
5) 어댑터1에서 NAT 선택하고 포트포워딩 설정(호스트 IP는 수동으로 어댑터 설정에서 설정한 IP를 입력한다. 즉 10.0.2.15 라는 로컬 IP에 접근할 수 없으므로 192.168.38.3 IP로 접속하면 10.0.2.15 로컬 IP로 접속할 수 있게 하는것)
NAT 및 Bridge Adapter 개념 및 설정 출처
Name | 프로토콜 | Host IP | Host Port | Guest IP | Guest Port |
Putty | TCP | 192.168.38.3 | 22 | 10.0.2.15 | 22 |
Http | TCP | 192.168.38.3 | 80 | 10.0.2.15 | 80 |
FTP 데이터 | TCP | 192.168.38.3 | 20 | 10.0.2.15 | 20 |
FTP 로그인 | TCP | 192.168.38.3 | 21 | 10.0.2.15 | 21 |
MariaDB | TCP | 192.168.38.3 | 3306 | 10.0.2.15 | 3306 |
Tomcat | TCP | 192.168.38.3 | 8080 | 10.0.2.15 | 8080 |
CentOS 설치
1) http://mirror.kakao.com/centos/7.8.2003/isos/x86_64/ 에서 CentOS-7-x86_64-DVD-2003.iso 다운로드
2) 설치대상에서 반드시 디스크를 많이 잡아줄것!!. 만약 virtualbox에서 20GB를 잡았다면 널널해보이지만... 표준파티션, swap, 홈 디렉토리로 나뉘어 지고 swap이 표준파티션의 두배이므로 표준파티션이 10GB도 못 갖게 된다(서버 구축하다가 용량 모질라서 다시 설치했음...) 운영체제 설치 후 df -h 환경 구성을 확인해서 용량이 알맞게 설정되었는지 확인한다
Oracle JDK 설치
1) https://www.hanumoka.net/2018/04/30/centOs-20180430-centos-install-jdk/ 다운로드
2) java설치 확인
java -version
2) 설치가 되어있지 않다면 설치 가능한 JDK 버전 확인
yum list java*jdk-devel
3) 내가 구성하려는 스펙을 가진 서버의 Java, JDK 버전을 확인한다
java -version
# Oracle jdk
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
# Open jdk
openjdk version "<version>"
OpenJDK Runtime Environment .....
4) oracle jdk 1.8 Linux x64 Compressed Archive 설치
www.oracle.com/kr/java/technologies/javase/javase-jdk8-downloads.html
5) jdk 다운로드 받은 후 FTP 프로그램으로 다운로드 받은 압축파일을 옮긴다. 그리고 압축을 푼다
-ll
tar -xvf jdk-8u261-linux-x64.tar.gz
6) jdk 파일 이동
mv jdk1.8.0_261/ /usr/local
7) 심볼링 링크를 생성한다. 심볼릭링크는 window의 바로가기이다.사용법은 ln -s [원본파일] [바로가기 이름]
cd /usr/local
ln -s jdk1.8.0_181 java
8) /etc/profile 수정, 맨 밑에 환경설정 추가, 그리고 선언된 변수, 함수 제거 그리고 다시 시작
vi /etc/profile
아래는 vi
#add java
JAVA_HOME=/usr/local/jdk1.8.0_261
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:\JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
unset i
unset -f pathmunge
shutdown -r now
9) 재시작 후 java version 확인
java -version
10) 아래와 같이 나오면 설치 완료
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
MariaDB 설치
1) 필요 패키지 설치
yum install gcc.x86_64 gcc-c++.x86_64 wget.x86_64 bzip2-devel.x86_64 pkgconfig.x86_64 openssl-devel.x86_64 make.x86_64 man-db.x86_64 nasm.x86_64 readline-devel.x86_64 ncurses-devel.x86_64 automake* autoconf* pcre-devel.x86_64 cmake.x86_64 libaio-devel.x86_64 libevent-devel.x86_64 bison.x86_64 bison-devel.x86_64 numactl-devel.x86_64 cracklib-devel.x86_64 pam-devel.x86_64 systemd-devel.x86_64
2) maria db repository 추가(10.2 버전으로 설치)
sudo vi /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
3) mariadb 설치 명령어 실행
yum install MariaDB
4) mariadb 설치 여부 확인. 그리고 mysql 항상부팅 시 실행되도록 등록한다. mariadb 실행 후 접속(비밀번호는 그냥 enter 친다)
rpm -qa | grep MariaDB
sudo systemctl anable mariadb
systemctl start mariadb
mysql -u root -p mysql
5) 사용자 생성 및 권한 부여
GRANT USAGE ON *.* TO 'user'@'%' IDENTIFIED BY PASSWORD '암호화된 비밀번호';
GRANT ALL PRIVILEGES ON `mobilebills`.* TO 'user'@'%' IDENTIFIED BY '암호화된 비밀번호';
Tomcat9 설치
1) tomcat9 다운로드
mkdir /tmp/lib
cd /tmp/lib
wget http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.21/bin/apache-tomcat-9.0.21.tar.gz
2) 압축 풀고 /usr/local로 이동 시킨 후 심볼릭 링크 추가
mv apache-tomcat-9.0.21/ /usr/local
cd /usr/local
ln -s apache-tomcat-9.0.21/ tomcat
3) tomcat user와 group을 생성하고 tomcat 소유권 변경
useradd tomcat
groupadd tomcat
chown -R tomcat:tomcat apache-tomcat-9.0.21/
4) 환경 변수 설정
vi /etc/profile
JAVA_HOME=/usr/local/jdk1.8.0_261
JRE_HOME=$JAVA_HOME/jre
CATALINA_HOME=/usr/local/tomcat
CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/jsp-api.jar:$CATALINA_HOME/lib/servlet-api.jar
PATH=$PATH:$JAVA_HOME/bin:\JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export CLASSPATH
export PATH
5) 설정 반영 및 변수 확인
source /etc/profile
echo $CATALINA_HOME
/usr/local/tomcat/bin/startup.sh
netstat -an | grep 8080
6) 톰캣 시작
/usr/local/tomcat/bin/startup.sh
/usr/local/tomcat/bin/shutdown.sh
7) 방화벽 해제
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --reload
배포
1) 이클립스에서 프로젝트 오른쪽 마우스 클릭. Export 선택
2) WAR file 선택. ROOT.war로 이름을 지으면 따로 설정을 하지 않아도 ContextPath가 붙지 않는다.
3) 만약 ROOT.war로 하지 않는다면 tomcat의 server.xml 에서 Host 정보 안에 아래 정보를 넣어야 한다. 그런데 문제는 /<war파일 이름>의 ContextPath도 같이 생겨서 결국 2개의 path가 된다. 그러므로 ROOT.war로 간편하게 만들도록 하자
<Context docBase="./<war파일 이름>" path="/" reloadable="false" />
4) 배포할 서버의 tomcat 폴더 안에 webapps 폴더 안에 ROOT.war 파일을 놓는다
5) 해당 tomcat의 bin폴더로 가서 톰캣을 꼈다 다시 실행시킨다. 그러면 ROOT.war의 압축이 풀리면서 해당 ROOT.war가 서버에 적용된다
/usr/local/tomcat/bin/startup.sh
/usr/local/tomcat/bin/shutdown.sh
6) ROOT.war 파일로 만들면 path도 1개이고 ContextPath는 붙지 않는다. 그러므로 ROOT.war로 만드는 것을 추천
'Etc' 카테고리의 다른 글
Mysql RAND 함수 (0) | 2020.08.10 |
---|---|
Mysql 홀짝에 따라서 다른 값 주기 (0) | 2020.08.10 |
Centos7 고정 IP 설정 (0) | 2020.07.30 |
Window 특정 포트로 프로세스 종료 시키기 (0) | 2020.07.24 |
Ubuntu root 비밀번호 분실 재설정 (0) | 2020.06.05 |