SlideShare a Scribd company logo
1 of 18
아꿈사 박 기 덕
5.7 웹 서버 로그관리
웹 서버 로그
• 하나의 서비스는 여러대의 웹 서버로 제공
• 분산해서 출력되는 로그의 집약, 수집 필요
• 집약 : 출력하는 로그를 한곳으로 전송해 모으는 것
• 수집 : 각 서버상에 출력된 로그를 정기적으로 모아서 저장하는 것
• 로그를 수집하는 목적은 주로 집계와 분석, 보존
• 집약과 수집 모두 로그를 모으는 것이지만, 정밀도의 차이
로그 집약 (SYSLOG)
• mod_log_spread, logger를 이용해 아파치 로그를 syslog로 출력
• Syslog에는 기능성과 우선순위 설정
로그 집약 (SYSLOG-NG)
• 다양한 옵션을 수행해주는 syslog-ng
• 출력할 로그의 필터링, 회전, 디렉토리 자동생성 등의 기능 제공
• 로그에 관한 메타정보를 동적으로 나타내는 매크로 기능 제공
로그 수집
• 대부분 부하가 적은 새벽에 하루전 로그를 수집
• Hatena 환경에서는 로그의 수집과 동시에 오래된 로그 정리
• 오래된 로그의 경우 삭제 또는 압축하여 관리
• cron을 사용해 로그파일을 리네임하고 아파치를 재시작하여 로그 회전
• rotatelogs를 사용해 로그를 넘겨받으며 회전
• cron, rotatelogs 두개 모두 정확한 회전은 불가능
로그 서버
• 로그 수집, 집계, 분석 등의 작업을 위한 로그 서버 구축 필요
• 서비스를 제공하는 서버가 동시에 로그서버 역할을 하는 것은 지양
• Hatena의 경우 프라이머리용, 백업용 2대의 로그서버 유지
• 백업용 로그서버가 없을 경우에도 로그파일은 별도 보관 필요
아꿈사 박 기 덕
6.1 HATENA의 내부
HATENA 인프라
• Hatena 다이어리, 북마크, 인력검색 의 웹서비스 제공
• 2008.02 시점 월간 약 970만 트래픽 발생(unique user)
• 자전주의
(독자적으로 모든 일을 수행하는 기업 경영 원칙)
• 오픈소스주의
확장성과 안전성 (리버스 프록시)
• 부하분산을 위해 LVS(IPVS) + keepalived 이용
• LVS 서버의 스토리지로 하드디스크 대신 컴팩트플래스 이용
• 리버스 프록시에 mod_proxy 사용, 부하분산에 LVS 사용
• 리버스 프록시와 AP서버 사이에 Squid를 이용, 최대한 캐시해 부하 감소
• 저자가 개발한 Dos 공격 차단 프로그램 mod_dosdetector 사용
• 아파치 전면에 lighttpd 아키텍쳐 적용으로 효율 향상
확장성과 안전성 (DB)
• DB는 MySQL 4.0 계열과 MySQL 5.0계열 공존(타임스탬프 동작으로 인한)
• MySQL 리플리케이션에 의해 마스터/슬레이브 구성 사용
• MySQL 5.0 계열에서는 멀티마스터 구성으로 다중화 실현
확장성과 안전성 (DB)
• 멀티마스터 구성시 auto increment 경합 문제 발생
• auto_increment_offset을 통해 값을 지정해 해결 (P. 341)
• 각각의 마스터 서버에 keepalived를 실행하고 VRRP에 의한 Active/Standby
구성
• 컬럼 추가, 변경등의 유지보수 작업 시 서비스에 영향을 주지 않음
• 컬럼을 삭제하는 작업의 경우 에러 발생 가능 (리플리케이션이 정지되는 경
우 서비스의 정지를 동반하는 작업 필요)
확장성과 안전성 (DB)
• 멀티마스터의 슬레이브 추가시 장애처리
• A의 마스터가 장애시 A의 슬레이브에 갱신정보 미전달
• 장애 미발생한 B의 마스터가 A의 슬레이브에도 갱신정보 전달 시 Best
• 단, 리플리케이션 구조상 현재는 불가능 (추후 해결해야할 과제)
• 현재는 장애발생시 장애가 발생한 슬레이브 DB 중지
확장성과 안전성 (파일 서버)
• DRBD + keepalived 로 다중화 구성
• lighttpd에 의한 API, Squid 캐시 도입으로 다중성과 빠른 속도 유지
• DRBD로 다중화한 블록 디바이스를 OCFS2 클러스터 파일시스템으로 포맷
• Active 측에서 서비스를 제공, Backup측에서 백업을 수행해, 일일백업에 의
한 I/O 부하가 서비스에 영향을 받지 않도록 설계
운용효율 향상
• 새로운 서버를 인프라에 추가할 시 대부분 자동화를 통해 시간단축
• 서버조립이 완료되고 BIOS 설정이 끝나면 킥스타트로 OS 설치
• 무엇이든 rpm 패키지화 & yum 설치로 자동화 구현
• puppet을 이용 설정 자동화
• 빈번한 수정이 필요한 http.conf나 my.cnf등은 관리자가 직접 수정
운용효울 향상
• 서버의 정보 관리를 목록을 통해 관리 시 정보불일치 다수 발생
• Hatena 독자적인 서버관리 툴 구축
• 서버의 대수, 통계 데이터 등 관리 가능
• 인프라 규모, 구성장비의 변화 파악 가능
• Capistrano을 이용해 Deploy 진행
전원 효율
• 직접 조립을 통해 각각의 부품 소비전력을 측정하여 선정
• 기존 서버의 경우 일부 부품 교체로 성능 향상이나 소비전력 감소가 가능할
시 적극적으로 교체 진행
• Core2 Duo CPU -> Core2 Quad로 업그레이드 진행
• 가상화 기술 Xen을 도입해 서버 리소스 효율화
• Xen을 사용해 1대의 물리적인 서버에 논리적인 여러 개의 서버 구성 가능
전원 효율
• AP서버와 DB서버를 분리하여 가상화 구성하여 장애 대응
• DB서버에 남아있는 CPU성능은 AP서버로 구성하여 CPU I/O한계까지 사용
전원 효율
• 메로리를 저가에 최대한 설치하지 않고, 하드디스크 RAID 구성하지 않음
• 처음부터 하드디스크를 없앤 Diskless 서버 연구 중
• Diskless 장점으로 소비전력 저하, 하드웨어 고장화율 저하, 역할 설정 용이
• Diskless 단점으로 자력으로 부팅 불가, 로그파일 로컬 저장 불가

More Related Content

What's hot

Cloudera Impala 1.0
Cloudera Impala 1.0Cloudera Impala 1.0
Cloudera Impala 1.0Minwoo Kim
 
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)Brian Hong
 
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon Web Services Korea
 
20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)
20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)
20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)Amazon Web Services Korea
 
AWS lambda, step function, cloud watch
AWS lambda, step function, cloud watchAWS lambda, step function, cloud watch
AWS lambda, step function, cloud watchHan Sung Kim
 
AWS 9월 웨비나 | Amazon Aurora Deep Dive
AWS 9월 웨비나 | Amazon Aurora Deep DiveAWS 9월 웨비나 | Amazon Aurora Deep Dive
AWS 9월 웨비나 | Amazon Aurora Deep DiveAmazon Web Services Korea
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)Hyojun Jeon
 
쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기Brian Hong
 
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석Amazon Web Services Korea
 
Aws발표자료 final
Aws발표자료 finalAws발표자료 final
Aws발표자료 finalGi Bong Kim
 
Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.Harrison Jung
 
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축Juhong Park
 
Amazon Aurora Deep Dive (김기완) - AWS DB Day
Amazon Aurora Deep Dive (김기완) - AWS DB DayAmazon Aurora Deep Dive (김기완) - AWS DB Day
Amazon Aurora Deep Dive (김기완) - AWS DB DayAmazon Web Services Korea
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 GamingAmazon Web Services Korea
 
파이어베이스 네이버 밋업발표
파이어베이스 네이버 밋업발표파이어베이스 네이버 밋업발표
파이어베이스 네이버 밋업발표NAVER D2
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWSMatthew (정재화)
 

What's hot (20)

Cloudera Impala 1.0
Cloudera Impala 1.0Cloudera Impala 1.0
Cloudera Impala 1.0
 
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
아마존 클라우드와 함께한 1개월, 쿠키런 사례중심 (KGC 2013)
 
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
게임 서비스를 위한 AWS상의 고성능 SQL 데이터베이스 구성 (이정훈 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
 
20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)
20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)
20140806 AWS Meister BlackBelt - Amazon Redshift (Korean)
 
Amazon Aurora 100% 활용하기
Amazon Aurora 100% 활용하기Amazon Aurora 100% 활용하기
Amazon Aurora 100% 활용하기
 
AWS lambda, step function, cloud watch
AWS lambda, step function, cloud watchAWS lambda, step function, cloud watch
AWS lambda, step function, cloud watch
 
AWS RDS, DYNAMO
AWS RDS, DYNAMOAWS RDS, DYNAMO
AWS RDS, DYNAMO
 
AWS 9월 웨비나 | Amazon Aurora Deep Dive
AWS 9월 웨비나 | Amazon Aurora Deep DiveAWS 9월 웨비나 | Amazon Aurora Deep Dive
AWS 9월 웨비나 | Amazon Aurora Deep Dive
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유 (2부)
 
쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기
 
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
AWS Summit Seoul 2015 - 게임 서비스 혁신을 위한 데이터 분석
 
Aws발표자료 final
Aws발표자료 finalAws발표자료 final
Aws발표자료 final
 
Aws로 ci하기 안기욱
Aws로 ci하기 안기욱Aws로 ci하기 안기욱
Aws로 ci하기 안기욱
 
Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.Google Cloud Next 2017 Seoul Extended 1st Session.
Google Cloud Next 2017 Seoul Extended 1st Session.
 
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
[NDC 2018] Spark, Flintrock, Airflow 로 구현하는 탄력적이고 유연한 데이터 분산처리 자동화 인프라 구축
 
Amazon Aurora Deep Dive (김기완) - AWS DB Day
Amazon Aurora Deep Dive (김기완) - AWS DB DayAmazon Aurora Deep Dive (김기완) - AWS DB Day
Amazon Aurora Deep Dive (김기완) - AWS DB Day
 
AWS-IAM,S3,EC2
AWS-IAM,S3,EC2AWS-IAM,S3,EC2
AWS-IAM,S3,EC2
 
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
게임 서비스 품질 향상을 위한 데이터 분석 활용하기 - 김필중 솔루션즈 아키텍트:: AWS Cloud Track 3 Gaming
 
파이어베이스 네이버 밋업발표
파이어베이스 네이버 밋업발표파이어베이스 네이버 밋업발표
파이어베이스 네이버 밋업발표
 
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
스타트업 사례로 본 로그 데이터 분석 : Tajo on AWS
 

Viewers also liked

성미급한 사람들을 위한 아파치 설치
성미급한 사람들을 위한 아파치 설치성미급한 사람들을 위한 아파치 설치
성미급한 사람들을 위한 아파치 설치경민 남
 
오픈 소스 소개
오픈 소스 소개오픈 소스 소개
오픈 소스 소개trustinlee
 
웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION
웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION
웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTIONKOPENS .Inc
 
Tech Update - The Future of .NET Framework (김명신 부장)
Tech Update - The Future of .NET Framework (김명신 부장)Tech Update - The Future of .NET Framework (김명신 부장)
Tech Update - The Future of .NET Framework (김명신 부장)Eunbee Song
 
2012people
2012people2012people
2012peoplenahyjoa
 
[비즈스프링] 웹로그분석 보고서 Example
[비즈스프링] 웹로그분석 보고서 Example[비즈스프링] 웹로그분석 보고서 Example
[비즈스프링] 웹로그분석 보고서 ExampleBizSpring Inc.
 
WebSocket 기반 쌍방향 메시징
WebSocket 기반 쌍방향 메시징WebSocket 기반 쌍방향 메시징
WebSocket 기반 쌍방향 메시징trustinlee
 
Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012Daum DNA
 
[비즈스프링] 웹로그분석은 무엇인가?
[비즈스프링] 웹로그분석은 무엇인가?[비즈스프링] 웹로그분석은 무엇인가?
[비즈스프링] 웹로그분석은 무엇인가?BizSpring Inc.
 
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지Han Woo PARK
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203doo rip choi
 
Mysql old password 깨기
Mysql old password 깨기Mysql old password 깨기
Mysql old password 깨기HyunSeung Kim
 
쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정Yoonwhan Lee
 
More effective c++ 1
More effective c++ 1More effective c++ 1
More effective c++ 1현찬 양
 
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬KTH, 케이티하이텔
 
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTPHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTYoung D
 
programming with GDB
programming with GDBprogramming with GDB
programming with GDBNakCheon Jung
 
[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법Amy Kim
 

Viewers also liked (20)

성미급한 사람들을 위한 아파치 설치
성미급한 사람들을 위한 아파치 설치성미급한 사람들을 위한 아파치 설치
성미급한 사람들을 위한 아파치 설치
 
오픈 소스 소개
오픈 소스 소개오픈 소스 소개
오픈 소스 소개
 
웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION
웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION
웹 애플리케이션 로그 분석 - REAL-TIME INSIGHT SOLUTION
 
Tech Update - The Future of .NET Framework (김명신 부장)
Tech Update - The Future of .NET Framework (김명신 부장)Tech Update - The Future of .NET Framework (김명신 부장)
Tech Update - The Future of .NET Framework (김명신 부장)
 
2012people
2012people2012people
2012people
 
[비즈스프링] 웹로그분석 보고서 Example
[비즈스프링] 웹로그분석 보고서 Example[비즈스프링] 웹로그분석 보고서 Example
[비즈스프링] 웹로그분석 보고서 Example
 
WebSocket 기반 쌍방향 메시징
WebSocket 기반 쌍방향 메시징WebSocket 기반 쌍방향 메시징
WebSocket 기반 쌍방향 메시징
 
Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012Daum내부 Hadoop 활용 사례 | Devon 2012
Daum내부 Hadoop 활용 사례 | Devon 2012
 
[비즈스프링] 웹로그분석은 무엇인가?
[비즈스프링] 웹로그분석은 무엇인가?[비즈스프링] 웹로그분석은 무엇인가?
[비즈스프링] 웹로그분석은 무엇인가?
 
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
인포그래픽스 데이터분석과 저널리즘 3장 데이터수집,정제에서 분석까지
 
시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203시스템 관리자를 위한 리눅스강의 1강 20130203
시스템 관리자를 위한 리눅스강의 1강 20130203
 
Mysql old password 깨기
Mysql old password 깨기Mysql old password 깨기
Mysql old password 깨기
 
쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정
 
More effective c++ 1
More effective c++ 1More effective c++ 1
More effective c++ 1
 
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
H3 2011 대형사이트 구축을 위한 MySQL 튜닝전략_데이터지능팀_성동찬
 
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTPHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
 
PHP Profiling
PHP ProfilingPHP Profiling
PHP Profiling
 
Exception&log
Exception&logException&log
Exception&log
 
programming with GDB
programming with GDBprogramming with GDB
programming with GDB
 
[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법[2015:1] phpdocumentor 설치와 사용법
[2015:1] phpdocumentor 설치와 사용법
 

Similar to 로그 수집, 집약

Time navigator innotrack[1]
Time navigator innotrack[1]Time navigator innotrack[1]
Time navigator innotrack[1]정호 최
 
한국사이버테크 Ha dr 구축전략 160527
한국사이버테크 Ha dr 구축전략 160527한국사이버테크 Ha dr 구축전략 160527
한국사이버테크 Ha dr 구축전략 160527성호 윤
 
1711 azure-live
1711 azure-live1711 azure-live
1711 azure-live세준 김
 
20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈ymtech
 
[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션해은 최
 
Maxscale 소개 1.1.1
Maxscale 소개 1.1.1Maxscale 소개 1.1.1
Maxscale 소개 1.1.1NeoClova
 
IBM Spectrum Protect Plus Overview
IBM Spectrum Protect Plus OverviewIBM Spectrum Protect Plus Overview
IBM Spectrum Protect Plus OverviewDongjae Yeo
 
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법Ji-Woong Choi
 
Giip bp-giip connectivity1703
Giip bp-giip connectivity1703Giip bp-giip connectivity1703
Giip bp-giip connectivity1703Lowy Shin
 
SteelEye 표준 제안서
SteelEye 표준 제안서SteelEye 표준 제안서
SteelEye 표준 제안서Yong-uk Choe
 
Serverless Architecture with Cloud Function
Serverless Architecture with Cloud FunctionServerless Architecture with Cloud Function
Serverless Architecture with Cloud FunctionHarrison Jung
 
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...Cloud-Barista Community
 
실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018
실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018
실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018Amazon Web Services Korea
 
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례SONG INSEOB
 
NexGen overview_201705
NexGen overview_201705NexGen overview_201705
NexGen overview_201705CDIT-HCI
 
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관제관 이
 
AWS Aurora 운영사례 (by 배은미)
AWS Aurora 운영사례 (by 배은미)AWS Aurora 운영사례 (by 배은미)
AWS Aurora 운영사례 (by 배은미)I Goo Lee.
 
SEP Overview - 이비플러스(주)
SEP Overview - 이비플러스(주)SEP Overview - 이비플러스(주)
SEP Overview - 이비플러스(주)silverfox2580
 

Similar to 로그 수집, 집약 (20)

Time navigator innotrack[1]
Time navigator innotrack[1]Time navigator innotrack[1]
Time navigator innotrack[1]
 
[웨비나] Follow me! 클라우드 인프라 구축 기본편 - 강지나 테크 에반젤리스트
[웨비나] Follow me! 클라우드 인프라 구축 기본편 - 강지나 테크 에반젤리스트[웨비나] Follow me! 클라우드 인프라 구축 기본편 - 강지나 테크 에반젤리스트
[웨비나] Follow me! 클라우드 인프라 구축 기본편 - 강지나 테크 에반젤리스트
 
한국사이버테크 Ha dr 구축전략 160527
한국사이버테크 Ha dr 구축전략 160527한국사이버테크 Ha dr 구축전략 160527
한국사이버테크 Ha dr 구축전략 160527
 
steeleye Replication
steeleye Replication steeleye Replication
steeleye Replication
 
1711 azure-live
1711 azure-live1711 azure-live
1711 azure-live
 
20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈
 
[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션
 
Maxscale 소개 1.1.1
Maxscale 소개 1.1.1Maxscale 소개 1.1.1
Maxscale 소개 1.1.1
 
IBM Spectrum Protect Plus Overview
IBM Spectrum Protect Plus OverviewIBM Spectrum Protect Plus Overview
IBM Spectrum Protect Plus Overview
 
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
[오픈소스컨설팅]Day #1 MySQL 엔진소개, 튜닝, 백업 및 복구, 업그레이드방법
 
Giip bp-giip connectivity1703
Giip bp-giip connectivity1703Giip bp-giip connectivity1703
Giip bp-giip connectivity1703
 
SteelEye 표준 제안서
SteelEye 표준 제안서SteelEye 표준 제안서
SteelEye 표준 제안서
 
Serverless Architecture with Cloud Function
Serverless Architecture with Cloud FunctionServerless Architecture with Cloud Function
Serverless Architecture with Cloud Function
 
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
Cloud-Barista 제1차 오픈세미나 : CB-Dragonfly-멀티 클라우드 통합 모니터링 프레임워크(1st Open Seminar...
 
실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018
실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018
실전! AWS 기반 데이터베이스 마이그레이션::최홍식::AWS Summit Seoul 2018
 
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례오픈스택 기반 클라우드 서비스 구축 방안 및 사례
오픈스택 기반 클라우드 서비스 구축 방안 및 사례
 
NexGen overview_201705
NexGen overview_201705NexGen overview_201705
NexGen overview_201705
 
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
 
AWS Aurora 운영사례 (by 배은미)
AWS Aurora 운영사례 (by 배은미)AWS Aurora 운영사례 (by 배은미)
AWS Aurora 운영사례 (by 배은미)
 
SEP Overview - 이비플러스(주)
SEP Overview - 이비플러스(주)SEP Overview - 이비플러스(주)
SEP Overview - 이비플러스(주)
 

More from kidoki

Hadoop io
Hadoop ioHadoop io
Hadoop iokidoki
 
Chapter 14. json
Chapter 14. jsonChapter 14. json
Chapter 14. jsonkidoki
 
전문 검색 기술
전문 검색 기술전문 검색 기술
전문 검색 기술kidoki
 
Http 헤더
Http 헤더Http 헤더
Http 헤더kidoki
 
14. no sql을 넘어
14. no sql을 넘어14. no sql을 넘어
14. no sql을 넘어kidoki
 
My sql 장애복구
My sql 장애복구My sql 장애복구
My sql 장애복구kidoki
 
9장. 문서 데이터베이스
9장. 문서 데이터베이스9장. 문서 데이터베이스
9장. 문서 데이터베이스kidoki
 
[NoSQL] 2장. 집합적 데이터 모델
[NoSQL] 2장. 집합적 데이터 모델[NoSQL] 2장. 집합적 데이터 모델
[NoSQL] 2장. 집합적 데이터 모델kidoki
 
Code chapter15
Code chapter15Code chapter15
Code chapter15kidoki
 
Code chapter5
Code chapter5Code chapter5
Code chapter5kidoki
 
Ch18. 빅리그 거물에서 선지자로
Ch18. 빅리그 거물에서 선지자로Ch18. 빅리그 거물에서 선지자로
Ch18. 빅리그 거물에서 선지자로kidoki
 
Ch.11 승진
Ch.11 승진Ch.11 승진
Ch.11 승진kidoki
 
Ch7. 소프트웨어 r&d 조직
Ch7. 소프트웨어 r&d 조직Ch7. 소프트웨어 r&d 조직
Ch7. 소프트웨어 r&d 조직kidoki
 
Ch2. 좋은 소프트웨어란
Ch2. 좋은 소프트웨어란Ch2. 좋은 소프트웨어란
Ch2. 좋은 소프트웨어란kidoki
 
11장. 분석 패턴의 적용
11장. 분석 패턴의 적용11장. 분석 패턴의 적용
11장. 분석 패턴의 적용kidoki
 
2장. 의사소통과 언어 사용
2장. 의사소통과 언어 사용2장. 의사소통과 언어 사용
2장. 의사소통과 언어 사용kidoki
 
11장 시스템
11장 시스템11장 시스템
11장 시스템kidoki
 
10장 클래스
10장 클래스10장 클래스
10장 클래스kidoki
 
클러스터링을 통한 패턴 추출
클러스터링을 통한 패턴 추출클러스터링을 통한 패턴 추출
클러스터링을 통한 패턴 추출kidoki
 
정규확률분포
정규확률분포정규확률분포
정규확률분포kidoki
 

More from kidoki (20)

Hadoop io
Hadoop ioHadoop io
Hadoop io
 
Chapter 14. json
Chapter 14. jsonChapter 14. json
Chapter 14. json
 
전문 검색 기술
전문 검색 기술전문 검색 기술
전문 검색 기술
 
Http 헤더
Http 헤더Http 헤더
Http 헤더
 
14. no sql을 넘어
14. no sql을 넘어14. no sql을 넘어
14. no sql을 넘어
 
My sql 장애복구
My sql 장애복구My sql 장애복구
My sql 장애복구
 
9장. 문서 데이터베이스
9장. 문서 데이터베이스9장. 문서 데이터베이스
9장. 문서 데이터베이스
 
[NoSQL] 2장. 집합적 데이터 모델
[NoSQL] 2장. 집합적 데이터 모델[NoSQL] 2장. 집합적 데이터 모델
[NoSQL] 2장. 집합적 데이터 모델
 
Code chapter15
Code chapter15Code chapter15
Code chapter15
 
Code chapter5
Code chapter5Code chapter5
Code chapter5
 
Ch18. 빅리그 거물에서 선지자로
Ch18. 빅리그 거물에서 선지자로Ch18. 빅리그 거물에서 선지자로
Ch18. 빅리그 거물에서 선지자로
 
Ch.11 승진
Ch.11 승진Ch.11 승진
Ch.11 승진
 
Ch7. 소프트웨어 r&d 조직
Ch7. 소프트웨어 r&d 조직Ch7. 소프트웨어 r&d 조직
Ch7. 소프트웨어 r&d 조직
 
Ch2. 좋은 소프트웨어란
Ch2. 좋은 소프트웨어란Ch2. 좋은 소프트웨어란
Ch2. 좋은 소프트웨어란
 
11장. 분석 패턴의 적용
11장. 분석 패턴의 적용11장. 분석 패턴의 적용
11장. 분석 패턴의 적용
 
2장. 의사소통과 언어 사용
2장. 의사소통과 언어 사용2장. 의사소통과 언어 사용
2장. 의사소통과 언어 사용
 
11장 시스템
11장 시스템11장 시스템
11장 시스템
 
10장 클래스
10장 클래스10장 클래스
10장 클래스
 
클러스터링을 통한 패턴 추출
클러스터링을 통한 패턴 추출클러스터링을 통한 패턴 추출
클러스터링을 통한 패턴 추출
 
정규확률분포
정규확률분포정규확률분포
정규확률분포
 

로그 수집, 집약

  • 1. 아꿈사 박 기 덕 5.7 웹 서버 로그관리
  • 2. 웹 서버 로그 • 하나의 서비스는 여러대의 웹 서버로 제공 • 분산해서 출력되는 로그의 집약, 수집 필요 • 집약 : 출력하는 로그를 한곳으로 전송해 모으는 것 • 수집 : 각 서버상에 출력된 로그를 정기적으로 모아서 저장하는 것 • 로그를 수집하는 목적은 주로 집계와 분석, 보존 • 집약과 수집 모두 로그를 모으는 것이지만, 정밀도의 차이
  • 3. 로그 집약 (SYSLOG) • mod_log_spread, logger를 이용해 아파치 로그를 syslog로 출력 • Syslog에는 기능성과 우선순위 설정
  • 4. 로그 집약 (SYSLOG-NG) • 다양한 옵션을 수행해주는 syslog-ng • 출력할 로그의 필터링, 회전, 디렉토리 자동생성 등의 기능 제공 • 로그에 관한 메타정보를 동적으로 나타내는 매크로 기능 제공
  • 5. 로그 수집 • 대부분 부하가 적은 새벽에 하루전 로그를 수집 • Hatena 환경에서는 로그의 수집과 동시에 오래된 로그 정리 • 오래된 로그의 경우 삭제 또는 압축하여 관리 • cron을 사용해 로그파일을 리네임하고 아파치를 재시작하여 로그 회전 • rotatelogs를 사용해 로그를 넘겨받으며 회전 • cron, rotatelogs 두개 모두 정확한 회전은 불가능
  • 6. 로그 서버 • 로그 수집, 집계, 분석 등의 작업을 위한 로그 서버 구축 필요 • 서비스를 제공하는 서버가 동시에 로그서버 역할을 하는 것은 지양 • Hatena의 경우 프라이머리용, 백업용 2대의 로그서버 유지 • 백업용 로그서버가 없을 경우에도 로그파일은 별도 보관 필요
  • 7. 아꿈사 박 기 덕 6.1 HATENA의 내부
  • 8. HATENA 인프라 • Hatena 다이어리, 북마크, 인력검색 의 웹서비스 제공 • 2008.02 시점 월간 약 970만 트래픽 발생(unique user) • 자전주의 (독자적으로 모든 일을 수행하는 기업 경영 원칙) • 오픈소스주의
  • 9. 확장성과 안전성 (리버스 프록시) • 부하분산을 위해 LVS(IPVS) + keepalived 이용 • LVS 서버의 스토리지로 하드디스크 대신 컴팩트플래스 이용 • 리버스 프록시에 mod_proxy 사용, 부하분산에 LVS 사용 • 리버스 프록시와 AP서버 사이에 Squid를 이용, 최대한 캐시해 부하 감소 • 저자가 개발한 Dos 공격 차단 프로그램 mod_dosdetector 사용 • 아파치 전면에 lighttpd 아키텍쳐 적용으로 효율 향상
  • 10. 확장성과 안전성 (DB) • DB는 MySQL 4.0 계열과 MySQL 5.0계열 공존(타임스탬프 동작으로 인한) • MySQL 리플리케이션에 의해 마스터/슬레이브 구성 사용 • MySQL 5.0 계열에서는 멀티마스터 구성으로 다중화 실현
  • 11. 확장성과 안전성 (DB) • 멀티마스터 구성시 auto increment 경합 문제 발생 • auto_increment_offset을 통해 값을 지정해 해결 (P. 341) • 각각의 마스터 서버에 keepalived를 실행하고 VRRP에 의한 Active/Standby 구성 • 컬럼 추가, 변경등의 유지보수 작업 시 서비스에 영향을 주지 않음 • 컬럼을 삭제하는 작업의 경우 에러 발생 가능 (리플리케이션이 정지되는 경 우 서비스의 정지를 동반하는 작업 필요)
  • 12. 확장성과 안전성 (DB) • 멀티마스터의 슬레이브 추가시 장애처리 • A의 마스터가 장애시 A의 슬레이브에 갱신정보 미전달 • 장애 미발생한 B의 마스터가 A의 슬레이브에도 갱신정보 전달 시 Best • 단, 리플리케이션 구조상 현재는 불가능 (추후 해결해야할 과제) • 현재는 장애발생시 장애가 발생한 슬레이브 DB 중지
  • 13. 확장성과 안전성 (파일 서버) • DRBD + keepalived 로 다중화 구성 • lighttpd에 의한 API, Squid 캐시 도입으로 다중성과 빠른 속도 유지 • DRBD로 다중화한 블록 디바이스를 OCFS2 클러스터 파일시스템으로 포맷 • Active 측에서 서비스를 제공, Backup측에서 백업을 수행해, 일일백업에 의 한 I/O 부하가 서비스에 영향을 받지 않도록 설계
  • 14. 운용효율 향상 • 새로운 서버를 인프라에 추가할 시 대부분 자동화를 통해 시간단축 • 서버조립이 완료되고 BIOS 설정이 끝나면 킥스타트로 OS 설치 • 무엇이든 rpm 패키지화 & yum 설치로 자동화 구현 • puppet을 이용 설정 자동화 • 빈번한 수정이 필요한 http.conf나 my.cnf등은 관리자가 직접 수정
  • 15. 운용효울 향상 • 서버의 정보 관리를 목록을 통해 관리 시 정보불일치 다수 발생 • Hatena 독자적인 서버관리 툴 구축 • 서버의 대수, 통계 데이터 등 관리 가능 • 인프라 규모, 구성장비의 변화 파악 가능 • Capistrano을 이용해 Deploy 진행
  • 16. 전원 효율 • 직접 조립을 통해 각각의 부품 소비전력을 측정하여 선정 • 기존 서버의 경우 일부 부품 교체로 성능 향상이나 소비전력 감소가 가능할 시 적극적으로 교체 진행 • Core2 Duo CPU -> Core2 Quad로 업그레이드 진행 • 가상화 기술 Xen을 도입해 서버 리소스 효율화 • Xen을 사용해 1대의 물리적인 서버에 논리적인 여러 개의 서버 구성 가능
  • 17. 전원 효율 • AP서버와 DB서버를 분리하여 가상화 구성하여 장애 대응 • DB서버에 남아있는 CPU성능은 AP서버로 구성하여 CPU I/O한계까지 사용
  • 18. 전원 효율 • 메로리를 저가에 최대한 설치하지 않고, 하드디스크 RAID 구성하지 않음 • 처음부터 하드디스크를 없앤 Diskless 서버 연구 중 • Diskless 장점으로 소비전력 저하, 하드웨어 고장화율 저하, 역할 설정 용이 • Diskless 단점으로 자력으로 부팅 불가, 로그파일 로컬 저장 불가