베하~ 안녕하세요 BETTER MONDAY 팀 입니다.
이번주는 VM을 간단하게 설치해보고 Apache를 Yum이 아닌 Compile로 직접 설치해보도록 하겠습니다.
그럼~~~이번주도 슈우우우웃~~!
웹 서버?
웹 서버라는 것은 우리가 가장 많이 이용하는 웹 브라우저와 같은 클라이언트들로 부터 HTTP요청을 받아들이고,
HTML 문서와 같은 웹페이지를 반환하는 일종의 컴퓨터 프로그램입니다.
Apache 웹 서버 개요
Apache HTTP Server (일반적으로 Apache라고 함)는 일반적으로 세계에서 가장 유명한 HTTP 웹 서버로 알려져 있습니다. 빠르고 안전하며 전 세계 모든 웹 서버의 절반 이상을 실행합니다.
Why Apache?
- 개인적 용도와 상업적 용도에서 비용이 자유로움
- 우수한 기능을 지속적으로 제공
- 지속적인 보안 패치 및 취약점 업데이트
Compile 설치를 하는 이유?
패키지로 설치할 경우 간편하게 설치를 할 수 있지만 불필요하게 설치되는 파일들이 시스템의 자원을 사용하게 되고 패키지 단위로 설치되기에 관리가 용이하지 못하다.
또한 개인 환경이 아닌 회사등에서는 모든 패키지를 설치하는게 아닌 필요한 패키지만 설치합니다.
VM생성
- 저번주에 만들었던 리소스 그룹을 선택하고 아래와 같이 설정값을 입력해줍니다.
그리고 네트워크 창에서 저번주에 만들었던 VNet만 지정을 해주세요.
최대한 쉽게 만들기위해 다른 것은 손대지 않고 바로 검토 + 만들기 하도록 하겠습니다.
필요한 것은 그때그때 채워넣는 식으로 하겠습니다.
저희는 Azure 자체 시스템인 Bastion을 사용하지않고 CRT프로그램중 하나인 XShell을 사용하여 VM에 접속하도록 하겠습니다. (깔려있는 아무 CRT를 사용하여도 상관없습니다. 로컬CMD에서 ssh를 명령어를 사용하여도 무관합니다.)
다음과 같이 XShell로 접속을 완료하였습니다.
Apache Compile 설치
우선 root로 권한을 변경해주겠습니다.
sudo -i
Apache Compile을 위해선 필수 의존파일 설치가 필요합니다.
yum install -y gcc
yum install -y gcc-c++
yum install -y expat expat-devel expat-static
yum install -y vim
최신버전 소스파일을 다운받겠습니다.
mkdir /usr/local/src
cd /usr/local/src
wget https://dlcdn.apache.org//apr/apr-util-1.6.1.tar.gz --no-check-certificate //apr-util 설치
wget https://dlcdn.apache.org/httpd/httpd-2.4.53.tar.gz --no-check-certificate //apache 설치
wget https://dlcdn.apache.org//apr/apr-1.7.0.tar.gz --no-check-certificate //apr 설치
wget https://sourceforge.net/projects/pcre/files/pcre/8.45/pcre-8.45.tar.gz --no-check-certificate //pcre 설치
다운 받은 압축파일 들을 tar명령어로 압축해제 해줍니다.
tar xvfz apr-util-1.6.1.tar.gz
tar xvfz httpd-2.4.52.tar.gz
tar xvfz pcre-8.45.tar.gz
tar xvfz apr-1.7.0.tar.gz
압축해제한 파일들은 configure 해주고, make && make install 명령어를 통해 설치해줍니다.
apr configure
cd /usr/src/apr-1.7.0
./configure --prefix=/usr/local/apache2 ; make && make install
apr-util configure
cd /usr/src/apr-util-1.6.1
./configure --with-apr=/usr/local/apache2/apr --prefix=/usr/local/apache2/apr-util; make && make install
pcre configure
cd /usr/src/pcre-8.45
./configure --prefix=/usr/local/apache2/pcre; make && make install
httpd configure
cd /usr/src/httpd-2.4.53
./configure --prefix=/usr/local/apache2 --enable-module=so --enable-rewrite --enable-so --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2/apr-util --with-pcre=/usr/local/apache2/pcre/bin/pcre-config; make && make install
간편한 실행과 관리를 위하여systemd에 Service 등록합니다.
아래 명령어를 입력합니다.
vim /usr/lib/systemd/system/httpd.service
[Unit]
Description=Apache Service
[Service]
Type=forking
#EnvironmentFile=/usr/local/apache2/bin/envvars
PIDFile=/usr/local/apache2/logs/httpd.pid
ExecStart=/usr/local/apache2/bin/apachectl start
ExecReload=/usr/local/apache2/bin/apachectl graceful
ExecStop=/usr/local/apache2/bin/apachectl stop
KillSignal=SIGCONT
PrivateTmp=true
[Install]
WantedBy=multi-user.target
systemctl daemon-reload 명령어를 통해 데몬을 리로드해줍니다.
systemctl status httpd 명령어로 상태를 확인합니다.
curl localhost
위 명령어를 통하여 서버가 제대로 구축되었는지 확인합니다.
VM의 공용 IP주소를 통해 웹브라우저로 확인해보겠습니다.
어라? 접속이 되지 않는군요!?
방화벽을 확인하기 위해 Azure Potal 로 접속하여 Vnet을 확인해보겠습니다.
외부 통신을 위한 80포트가 열려있지 않네요.. 추가해주겠습니다.
다시 공용IP 로 접속을 시도하겠습니다.
접속에 성공했습니다. 여기까지 컴파일방식으로 직접 apache를 설치해보았습니다.
여러분 다음시간에 만나요 안녕~~베바~~~~777
출처:[https://koras02.tistory.com/226](https://koras02.tistory.com/226)
[https://m.blog.naver.com/sincc0715/221815775570](https://m.blog.naver.com/sincc0715/221815775570)
'CSP (Cloud Service Provider) > Azure' 카테고리의 다른 글
WAS : Tomcat설치 (0) | 2022.04.29 |
---|---|
Azure Devops를 통해 협업하기(2) (0) | 2022.04.28 |
Azure Devops를 통해 협업하기(1) (0) | 2022.04.22 |
Azure 리소스그룹/VNet (0) | 2022.04.14 |
Azure , Cloud의 개요 및 기초 (0) | 2022.04.07 |
댓글