source : http://www.opennaru.com/open-source/open-source-software-u2l-visiting-seminar/
OPENMARU APM은 Apache 웹서버와 Tomcat 에 대하여 자동으로 설치와 구성 그리고 튜닝하며 해당 구성에 대한 설치보고서를 자동생성하는 OPENMARU Installer 기능을 제공합니다.
이 기능은 OS 만 설치되어 있으면 수분 이내에 웹 서버와 WAS 서버를 설치하고 고난이도의 클러스터링 설정이나 리눅스 튜닝을 자동으로 수행하여 즉시 서비스할 수 있는 환경을 구성해주는 자동 프로비져닝 기능입니다.
기존의 엔지니어의 기술 지원에 의존적인 웹서버와 WAS 구성을 전문가 수준으로 자동으로 구성하여, 구축기간 뿐만아니라 비용 절감 효과를 제공합니다.
kimsQ Rb vs Wordpress 를 브라우저상에서 로드타임 비교와 서버내에서의 실행속도를 기준으로 성능 비교를 해보았습니다. 객관적으로 동일한 환경에서 정량적인 테스트가 될 수 있도록 노력 했습니다. 산출된 결과는 킴스큐가 워드프레스에 비해 로드타임에서 3.6~5배 빠른 것으로 나왔으며, 서버내 스크립트 실행속도에서는 11~16배 빠르다는 결과를 얻을 수 있었습니다. 본 테스트를 위해 사이트를 제공해 주신 하비타임즈(hobbytimes.co.kr/) 킴스오빠(이영화)님께 감사 드립니다. - 레드블럭 킴스큐 운영팀 권기택
Source : http://www.opennaru.com/cloud/cloud-native-visiting-seminar/
* PaaS 환경에서 애플리케이션 모니터링의 차이점
*컨테이너 환경에서 꼭 봐야 할 모니터링 매트릭스
* 컨테이너 운영 환경에서 트러블슈팅 방안
* Grafana 모니터링 구성 화면 데모
* Jaeger/ Kiali 데모
* PaaS형 APM 애플리케이션 모니터링 데모
리눅스 pacemaker 기반의 High Availaiblity 구성방법에 대해 설명합니다. pacemaker를 사용하는 다른 리눅스 기반도 구성이 가능합니다.
Pacemaker 기반 Linux High Availability 입문용으로는 적합하지 않을 수 있습니다. Pacemaker 기반 Linux High Availability를 한 번도 설치 및 구성을 하지 않은 리눅스 관리자라면 설치 문서를 먼저 참고하십시오.
RHEL7 및 CentOS 7을 중심으로 레드햇 계열의 리눅스에 적합한 내용으로 작성되었습니다.
source : http://www.opennaru.com/open-source/open-source-software-u2l-visiting-seminar/
OPENMARU APM은 Apache 웹서버와 Tomcat 에 대하여 자동으로 설치와 구성 그리고 튜닝하며 해당 구성에 대한 설치보고서를 자동생성하는 OPENMARU Installer 기능을 제공합니다.
이 기능은 OS 만 설치되어 있으면 수분 이내에 웹 서버와 WAS 서버를 설치하고 고난이도의 클러스터링 설정이나 리눅스 튜닝을 자동으로 수행하여 즉시 서비스할 수 있는 환경을 구성해주는 자동 프로비져닝 기능입니다.
기존의 엔지니어의 기술 지원에 의존적인 웹서버와 WAS 구성을 전문가 수준으로 자동으로 구성하여, 구축기간 뿐만아니라 비용 절감 효과를 제공합니다.
kimsQ Rb vs Wordpress 를 브라우저상에서 로드타임 비교와 서버내에서의 실행속도를 기준으로 성능 비교를 해보았습니다. 객관적으로 동일한 환경에서 정량적인 테스트가 될 수 있도록 노력 했습니다. 산출된 결과는 킴스큐가 워드프레스에 비해 로드타임에서 3.6~5배 빠른 것으로 나왔으며, 서버내 스크립트 실행속도에서는 11~16배 빠르다는 결과를 얻을 수 있었습니다. 본 테스트를 위해 사이트를 제공해 주신 하비타임즈(hobbytimes.co.kr/) 킴스오빠(이영화)님께 감사 드립니다. - 레드블럭 킴스큐 운영팀 권기택
Source : http://www.opennaru.com/cloud/cloud-native-visiting-seminar/
* PaaS 환경에서 애플리케이션 모니터링의 차이점
*컨테이너 환경에서 꼭 봐야 할 모니터링 매트릭스
* 컨테이너 운영 환경에서 트러블슈팅 방안
* Grafana 모니터링 구성 화면 데모
* Jaeger/ Kiali 데모
* PaaS형 APM 애플리케이션 모니터링 데모
리눅스 pacemaker 기반의 High Availaiblity 구성방법에 대해 설명합니다. pacemaker를 사용하는 다른 리눅스 기반도 구성이 가능합니다.
Pacemaker 기반 Linux High Availability 입문용으로는 적합하지 않을 수 있습니다. Pacemaker 기반 Linux High Availability를 한 번도 설치 및 구성을 하지 않은 리눅스 관리자라면 설치 문서를 먼저 참고하십시오.
RHEL7 및 CentOS 7을 중심으로 레드햇 계열의 리눅스에 적합한 내용으로 작성되었습니다.
LENA는 Web Server, Web Application Server, Session Sever, Manager로 구성되어 있으며, Cluster Architecture를 통해 가용성
저비용 고효율 운영중심의 WAS를 제공
Session Clustering
Active-Standby/Active-Active Session Server 모드
Standalone Mode
Embedded Mode
장애 사전(예측) 진단
Server 설정 백업 및 복원
Server Cluster Snapshot
Server Patch 복원
Server 간 Compare/Sync/Restore
Multi-Server 관리 및 운영 관점의 편의 제공
4. 서비스 개요
서비스 구성
두 대의 서버를 이용하여 Active/Standby 무정지 웹서비스를 구성하도록 합니다.
구성
L2스위치 하단에 두 대의 서버가 물리적으로 연결되어 있으며 각각 IP가 할당되어 있습니다.
또한 각 서버에는 125.141.148.230(이하 VIP)가 공통적으로 셋팅되어 있는데,
평소에는 Oper-KR-LB-1(이하 LB-1)이 VIP를 가지고 있다가
장애가 나게되면 Oper-KR-LB-2(이하 LB-2)가 VIP를 가져오게 됩니다.
즉, 두 서버 모두 살아 있을 경우 LB-1이 Active상태이며 LB-2는 Standby상태라 지칭합니다.
만약 LB-1이 장애가 나게되면 LB-2가 VIP를 가지게 되며 이러한 전환과정을 Fail-over라 합니다.
이후 LB-1이 정상화되면 VIP를 다시 가져오는데 이 과정을 Fail-back이라 합니다.
무정지 웹서비스 구성 - 4
5. LB-1, LB-2의 장애와 상관없이
두 서버중 한대만 살아있더라도 VIP로 접속이 가능하므로
이러한 구성을 HA(High Availability)라 부릅니다.
무정지 웹서비스 구성 - 5
6. 하드웨어 선정
(주)윈퍼스트(http://winfirst.co.kr/)에서 판매하는 Intel WR1302 서버 2대로 구성하였으며
상세 스펙은 아래와 같습니다.
Intel Server Board S1200BTL
Intel Processor E3-1230v2 (8M Cache, 3.3Ghz, Max Turbo Freq. 3.6Ghz)
DDR 3 Unbuffered ECC 4GB * 2EA
SSD 120GB * 1EA
SATA 2TB * 2EA
350W Single PSU
하드웨어 스펙
* 구매비용을 줄이기 위해 고가의 레이드컨트롤러를 구매하지 않고 Software RAID기능을 사용하도록 합니다.
무정지 웹서비스 구성 - 6
8. CARP설정
서비스구성에서 보았던 VIP를 셋팅해보도록 하겠습니다.
CARP 설정
LB-1에 접속하여 /etc/rc.conf 파일을 에디터로 열어서 아래 내용을 추가해 줍니다.
cloned_interfaces="carp0"
ifconfig_carp0="vhid 230 advskew 50 pass P@ssw0rd 125.141.148.230/27"
LB-2에도 동일하게 셋팅해줍니다.
cloned_interfaces="carp0"
ifconfig_carp0="vhid 230 advskew 100 pass P@ssw0rd 125.141.148.230/27"
설정내용중 vhid(Virtual Host IDentification) 값과 P@ssw0rd로 셋팅된 pass값은 두 서버가 동일해야 하며,
이렇게 이중화된 여러개의 Pool이 있을 경우 vhid는 충돌나지 않게 정해아합니다.
저는 임의로 VIP 끝자리인 230으로 정했습니다.
그리고 advskew가 의미하는 것은 해당 서버들이 살아있을 때 작은 값으로 셋팅된 서버가 MASTER상태에 대한
우선순위를 갖는다는 뜻입니다.
즉, 두 서버 모두 정상상태 일경우 50으로 셋팅된 LB-1이 MASTER역할을 하게됩니다.
셋팅이 완료됐으면 저장후 리부팅을 하거나 네트웍인터페이스를 재시작해주세요
CARP 동작확인
CARP가 잘 동작중인지 ifconfig carp0 명령으로 확인해봅시다.
LB-2의 advskew값이 100으로, LB-1의 50보다 숫자가 크므로 우선순위가 낮겠죠?
그러므로 carp상태가 BACKUP으로 나오는게 정상입니다.
만약 LB-1이 죽어있다면 LB-2의 carp상태가 자동으로 MASTER로 바뀌고
125.141.148.230 VIP또한 LB-2가 사용하게 됩니다.
무정지 웹서비스 구성 - 8
10. NginX 설치
portsnap fetch extract
portsnap fetch update
위 명령을 통해 FreeBSD의 ports를 최신으로 업그레이드 합니다.
NginX 설치
cd /usr/ports/www/nginx 로 디렉토리를 옮겨,
make config install clean 으로 설치합니다.
무정지 웹서비스 구성 - 10
11. NginX 시작
/usr/local/etc/rc.d/nginx start 명령으로 NginX를 시작합니다.
이런... 시작할 수 없다고 나오네요
/etc/rc.conf에 nginx_enable="YES" 행을 추가한 후 시작합니다.
Index 페이지 만들기
LB-1에서
mkdir -p /usr/local/www/nginx
echo "LB-1" > /usr/local/www/nginx/index.html
위 명령으로 인덱스 페이지를 만듭니다.
LB-2 서버에서는
echo "LB-2" > /usr/local/www/nginx/index.html
위 명령처럼 인덱스 페이지를 다르게 만들어준다면 Fail-over가 잘 되는지 쉽게 확인할 수 있겠죠?
웹페이지 접속확인
LB-1이라고 적혀나오는걸보니 LB-1이 MASTER상태이군요
그럼 Fail-over가 잘 되는지 확인해봅시다.
LB-1을 리부팅합니다.
Fail-over 확인
LB-1이 리부팅되었으므로 LB-2가 MASTER상태가 되었음을 확인할 수 있습니다.
ifconfig carp0 명령으로 확인 할 수 있습니다.
무정지 웹서비스 구성 - 11
12. 웹페이지 접속확인
LB-2가 MASTER가 되었으므로 페이지 또한 LB-2로 바뀌었네요
어렵지 않죠?
저렴한 비용으로 웹서버를 이중화해보았습니다.
감사합니다.
무정지 웹서비스 구성 - 12