SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
최지웅 / 오픈소스컨설팅
아틀라시안 트러블 슈팅 및
가상화 기반 데이터 센터
본 세션에서 다루는 내용
• 아틀라시안 활용에 있어서 자주 발생하는 문제점에 대한 해결
• 가상화/클라우드 기반의 아틀라시안 솔루션 데이터 센터 구축
강연자 소개
• 웹 애플리케이션 서버를 만드는 외국계 회사에서 근무했습
니다
• 리눅스 파는 외국계 회사에 근무했습니다
• 기술 관련 번역을 수행하고 몇 권의 책이 서점과 고객사에
있습니다
• 년에 오픈소스 컨설팅이 만들어지고 식구 들와 좋은
회사를 만들지 고민하고 있습니다
• 클라우드 기반 최신 오픈소스 기술에 대
한 전파를 주로 하고 있습니다
프로세스
통합 대시보드
표준 규격화
업무 메타 관리
개발 진행 관리
등
배포 도구
문서
빌드
요구사항 개발 빌드 배포 운영
소스
소스 추적
코드 리뷰작업 관리 및
이슈 트래킹
기업 애플리케이션 협업 관리
요구사항현업 담당자
요구사항 입력
각 기능 별 모듈 분리 및 상호 기반 연동
시스템 관리자
운영 관리 모니터링
소스 품질
상호 기반
연동
상호 기반 연동
프로젝트 배포 승인
개발자
품질 관리자
품질 관리
통합 계정 관리
전사 업무 메시징
⋯
개발
운영
운영
운영
⋯
개발자
오픈소스컨설팅 특징
• 아틀라시안 파트너 공통
•
• 오픈소스컨설팅 전문성 분야
• 오픈 소스 통합 환경 구성 및 기술 지원
• 인프라 컨설팅 및 트러블슈팅 리눅스 가상화 클라우드
• 미들웨어 컨설팅 및 트러블슈팅
• 오픈 소스 애플리케이션 소스 코드 패치 및 플러그인 제작
• 기반
불안한 한 대의 서버
• 서버가 죽으면 현업에서 난리가 나요
• 아파치 웹 서버를 두고 로 연결하면 되는거 아닌가요
• 세션 클러스터링을 하면 되는 것 아닌가요
• 여러 고객사에서 이중화를 시도
솔루션 내부 구조는 보셨나요
• 기반의 애플리케이션으로 되어 있습니다
• 기반의 도 사용합니다
• 당연한 플러그인 기반으로 움직입니다
솔루션 내부 구조는 보셨나요
이중화는 어떻게 하나요
• 클러스터 안됩니다
• 형태로 시스템을 구성하여 만들어야 합니다 예
이중화는 어떻게 하나요?
JIRA
(Active)
MySQL
(jiradb)
IIS Web Server
isapi_redirect.dll
Crowd
(Active)
MySQL
(crowd)
Confluence
(Active)
MySQL
(confluence)
Crowd
(Standby)
Confluence
(Standby)
JIRA
(Standby)
isapi_redirect.properties
uriworkermap.properties
/jira=jiraworker
File System
Attachments
File System
Attachments
Active Servers (10.10.10.X)
Standby Server (10.10.20.X)
External Storage
• Confluence, JIRA의
Attachments 파일의 이중화는
외장 스토리지, NFS, RSYNC
등을 통해 구성
절차 내용
서버 준비 제품들을 설치할 장비 준비 및 환경 구성
제품 설치
서버
제품 설치
구성
서버에 설치된 의 구성을 기존 서버로 설
정
설정
외장 스토리지의 경우
기존 디렉토리의 내용을 외장 스토리지로 복제하고
서버에 및 구성 변경
설정
의 경우
서버에서 구성을 통해 디렉토리 공유
서버에서 및 구성
에 설정 변경 서버 간 모드로 동작하도록 구성 변경
테스트 간 전환 테스트
이중화는 어떻게 하나요?
부하는 여전히 못견뎌요
• 안정성은 조금 확보했으나 사용자 콘텐츠 증가에 대한 대책
• 다운타임이 발생할 가능성이 있어요
• 성능 스케일업은 한계가 있어요 최대 성능은 스케일 아웃에서 나와요
고민해야 할 문제들
다운타임의 유형
계획되지 않은
다운타임
프로세스 다운 등
프로세스 멈춤
노드 다운
네트워크 통신 장애
과 부하로 인한 성능 저하
데이터베이스 장애
스토리지 장애
계획된 다운타임
업그레이드
패치
작업
서버 동시 운영
•
• 예 웹서버 를 통해서 요청을 개 이상의
또는 시스템으로 분배 및 페일오버
• 서버 간에 클러스터링 컨텍스트
등 공유
파일 데이터베이스 레이어
• 데이터베이스 및 스토리지 공유
• 개 이상의 서버가 클러스터링 형태로 동작하며 공유 데이터베이스
와 스토리지에 접속
• 노드 정보 플러그인 인덱스 첨부파일 등의 데이터를 공유
응답시간개선
데이터센터 아키텍처 로드밸런싱 레이어
• 같은 하드웨어 장비 사용 가능
• 등과 사용 가능
• 등의 모듈을 통해서
요청을 분배 및 페일오버
애플리케이션 레이어
• 복수 서버 기반 들 동작
• 노드 간에 또는 자체
프로토콜을 통해 클러스터링 컨텍스트
정보 등 공유
• 동적인 노드 제거 또는 새로운 노드 추가
공유 자원 레이어
• 복수 서버가 데이터베이스 및
스토리지 공유해서 사용  빠른
• 등의 자원을 공유
통신통신
등 공유 등 공유
고가용성 아키텍처
• 관리 모니터링 기능이 내장
• 클러스터링 기능을 통한 고가용성을 유지하기 위해 각종 기능의 정상 동작 여부
를 상시 체크 및 조치 경고 발생
• 이러한 백그라운드 클러스터링 서비스들을 통해 클러스터 전체 또는 노드 별 안
정성 유지
기능 내용
검색 결과 예 가 즉 일부 노드에서 결과가 다름 일 경우 를 노드 간에 복제 함
노드 중에서 플러그인 또는 사용에 문제 예 가 안됨 가 있는지 모니터링
문제가 있을 경우 해당 노드에 대한 경고를 발생
의 각종 정보 동기화를 위한 스케줄러 정상 여부를 체크
클러스터 컨텍스트와 캐시 정보를 노드 간에 복제하기 위한 서비스 체크
특정 노드에서 문제가 발생할 경우 경고를 발생 함
클러스터 노드 간에 시간 불일치를 막기 위한 시간 동기화 서비스
여러 노드가 공유 스토리지의 을 정상적으로 공유하는지 체크
데이터 센터
• 가상화 기반의 스케일 아웃형 데이터 센터 아키텍처 구성
• 성능 저하에 대한 확장을 수평적으로 진행
가상화 클라우드 하면 뭐가 좋은가요
• 가상화 적용시 목적별 노드 가감 방법 및 대비 편의성
• 의 경우 을 통한 데이터센터 구성이 분 이내
• 백업 데이터 스냅샷을 통해 문제 발생 시 신규 인스턴스 즉시 생성 및 서비스 수
입 가능
• 즉 인스턴스 생성 및 서비스 투입을 최소화 시킴
목적에 따라 분리가 가능해요
• 서버들을 용도에 맞게 구분
• 일반 프로젝트 관리 및 을 위한 노드와 전용 노드를 구분
• 에서 를 구분하여 해당 노드로 라우팅
• 데이터베이스 스토리지 공유를 통해서 동일한 내용 제공 가능
목적에 따라 분리가 가능해요
• 목적에 따라 노드를 분리하여 분산형태로 사용 가능
노드 일반 노드
관리자 노드 파워유저 노드
•
• 헬스케어분야에서 연 조 매출
• 이상의 직원
• 사용자 폭발적 증가로 인한 심각한 성능 저하와 심각한 가용성 저하
• 분산된 개 노드에서 프로젝트 관리 많은 중복 요소
•
• 용도에 따라 인스턴스를 구분
• 개의 전용 노드 각종 관리 작업 수행
• 개의 일반 사용자 개발자 용 노드
• 개의 전용 노드
• 효과
• 년 연간 시간 가용성 에 이르던 다운타임
• 년 현재 수준으로 개선 이상 가용성 연간 시간 이내
우선 운영이라도 안정적으로 됐으면
결국 트러블 슈팅은 노하우
• 아틀라시안 소스 코드를 볼 수 있는 능력
• 미들웨어에서 발생하는
• 구간의 전반적인 구성
• 다양한 서포트 케이스 및 해결 경험의 중요성
변경하고 로그인이 안되네요
• 발생 원인
• 기존에 다른 디렉토리로부터 계정정보를 받아올 경우 해당 서버의 정보 변경
에 의해 발생 가능
• 해결 방법
• 권한회복 및 사용자 디렉토리 순서조절
로 아예 들어가질 못해요
• 원인
• 때문에 로그인을 못하는 경우 와 의 그림
문자가 깨져서 입력할 수 없는 경우
• 해결방법
• 에서 쿼리를 통해 를 초기화
• 는 기반으로 동작하나 가 서버 설정을 따라서 에
러가 발생할 수 있으므로 실행 옵션 자체에 명시적으로 추가
세션이 자주 끊겨요
• 원인
• 와 같은 다른 어플리케이션을 같이 사용 시 도메인이나 가 같은
상태에서 포트만 다르게 쓰면 발생 가능
• 해결방안
• 를 통한 설정이나 를 설정 설정에서 세션
쿠키명을 바꿔주는 방법 등이 있음
보드에서 에러가 나요
• 문제 상황
• 보드에서 를 클릭 시 에러가 발생하는 경우
• 원인
• 보드의 설정이
• 하나의 이슈에 대해 여러 개의 이 설정된 경우
• 문제 상황
• 로 모든 이슈들이 각각 하나의 만 가지도록 설정
페이지에서
• 요청
• 페이지 마크다운 플러그인 사용하여 커스터마이징하고 싶어요
• 마크다운 내 스크립트 사용
• <link rel="stylesheet"
href="http://localhost:8888/owl.carousel.css"> <script
type="text/javascript" src="https://code.jquery.com/jquery-
1.12.3.min.js"></script> <script> var jq11223 =
jQuery.noConflict(); </script> <script type="text/javascript"
src="http://localhost:8888/owl.carousel.js"></script> <script> //
alert($().jquery); // alert(AJS.$().jquery);
매크로에서 한글 그룹 검색이 안되요
• 요청
• Confluence User List 매크로 사용 시 한글 그룹이 검색이 안됩니다.
• 원인
• 한글 요청에 대한 NginX 웹 서버 proxy 세팅이 잘못된 경우 발생
• 해결
• {…
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
가 계속 돌아요
• 원인
• 첨부파일 개수가 많은 페이지가 지속적으로 쌓이는 경우
• 해결방안
• 데이터베이스를 통해 페이지의 첨부파일 개수가 특정 수를 넘는 것을 확인 후 삭제
• 페이지 내 첨부파일 개수 확인 쿼리
SELECT * FROM (
select r.pageid, r.spaceid, s.spacename, r.username, r.pageTitle, count(r.title) as attachment_count from (
SELECT DISTINCT c.pageid, c.spaceid, u.username, c.title, co.title AS pageTitle
FROM CONTENT AS c
JOIN user_mapping AS u
ON u.user_key = c.creator
JOIN CONTENT AS co
ON c.pageid = co.contentid
JOIN CONTENTPROPERTIES AS cn
를 모니터링 하고 싶어요
• 기술 지원 및 스카우터 세팅하여 보여드립니다
다양한 트러블 슈팅 노하우
• 오픈소스컨설팅에 연락하여 물어보시면 됩니다
•
•
• 아틀라시안 솔루션이 동작하는 운영체제 미들웨어까지 책임져 드립니다
[오픈소스컨설팅]Atlassian 트러블 슈팅 가상화 기반의 Atlassian Data Center 구축 최지웅 컨설팅코치

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Microservice coding guide
Microservice coding guideMicroservice coding guide
Microservice coding guide
 
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
 
Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
[AIS 2018] [Team Tools_Advanced] Jira Service Desk를 활용한 ITSM - 인프라웨어 테크놀러지
[AIS 2018] [Team Tools_Advanced] Jira Service Desk를 활용한 ITSM - 인프라웨어 테크놀러지[AIS 2018] [Team Tools_Advanced] Jira Service Desk를 활용한 ITSM - 인프라웨어 테크놀러지
[AIS 2018] [Team Tools_Advanced] Jira Service Desk를 활용한 ITSM - 인프라웨어 테크놀러지
 
[AIS 2018] [Team Tools_Advanced] 200명 이하 개발조직의 DevOps 구현 사례 - 오픈소스컨설팅
[AIS 2018] [Team Tools_Advanced] 200명 이하 개발조직의 DevOps 구현 사례 - 오픈소스컨설팅[AIS 2018] [Team Tools_Advanced] 200명 이하 개발조직의 DevOps 구현 사례 - 오픈소스컨설팅
[AIS 2018] [Team Tools_Advanced] 200명 이하 개발조직의 DevOps 구현 사례 - 오픈소스컨설팅
 
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
Atlassian 트러블슈팅 및 가상화기반 Confluence Data Center 구축 - 오픈소스...
 
Application Lifecycle Management - CURVC
Application Lifecycle Management - CURVCApplication Lifecycle Management - CURVC
Application Lifecycle Management - CURVC
 
DevOps - Mousoft
DevOps - MousoftDevOps - Mousoft
DevOps - Mousoft
 
성공하는 기업이 일하는 방법 : Organize + Discuss + Complete Work
성공하는 기업이 일하는 방법 : Organize + Discuss + Complete Work성공하는 기업이 일하는 방법 : Organize + Discuss + Complete Work
성공하는 기업이 일하는 방법 : Organize + Discuss + Complete Work
 
서버리스 대규모 리얼타임 웹 구축하기
서버리스 대규모 리얼타임 웹 구축하기서버리스 대규모 리얼타임 웹 구축하기
서버리스 대규모 리얼타임 웹 구축하기
 
Event Storming and Implementation Workshop
Event Storming and Implementation WorkshopEvent Storming and Implementation Workshop
Event Storming and Implementation Workshop
 
Agile Transformation - Tweoseed
Agile Transformation - TweoseedAgile Transformation - Tweoseed
Agile Transformation - Tweoseed
 
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
Atlassian을 이용한 애자일 ALM 소개 / JIRA 프로젝트 예산 관리 - 커브
 
[AIS 2018] [Team Tools_Basic] Jira Service Desk 개요 - 한국정보컨설팅
[AIS 2018] [Team Tools_Basic] Jira Service Desk 개요 - 한국정보컨설팅[AIS 2018] [Team Tools_Basic] Jira Service Desk 개요 - 한국정보컨설팅
[AIS 2018] [Team Tools_Basic] Jira Service Desk 개요 - 한국정보컨설팅
 
Azure DevOps를 활용한 CI, CD 구축
Azure DevOps를 활용한 CI, CD 구축Azure DevOps를 활용한 CI, CD 구축
Azure DevOps를 활용한 CI, CD 구축
 
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
14회 jco 컨퍼런스 조대협의 소프트웨어 개발 배포용
 
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
[AIS 2018] [Team Tools_Advanced] Altassian 기능 확장과 구축사례 - 한국정보컨설팅
 
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - TwoseedGit의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
 
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
Atlassian Product Overview (아틀라시안 제품 소개) - 2016년 4월 버전
 
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
Polaris Office - 제품 기획부터 출시까지 - 인프라웨어 테크놀러지
 

Ähnlich wie [오픈소스컨설팅]Atlassian 트러블 슈팅 가상화 기반의 Atlassian Data Center 구축 최지웅 컨설팅코치

홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
devCAT Studio, NEXON
 
SQL Azure 실무 도입하기
SQL Azure 실무 도입하기SQL Azure 실무 도입하기
SQL Azure 실무 도입하기
정현 남
 
엔터프라이즈 웹 동향 및 적용사례
엔터프라이즈 웹 동향 및 적용사례엔터프라이즈 웹 동향 및 적용사례
엔터프라이즈 웹 동향 및 적용사례
욱래 김
 

Ähnlich wie [오픈소스컨설팅]Atlassian 트러블 슈팅 가상화 기반의 Atlassian Data Center 구축 최지웅 컨설팅코치 (20)

1711 azure-live
1711 azure-live1711 azure-live
1711 azure-live
 
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
홍성우, 게임 서버의 목차 - 시작부터 출시까지, NDC2019
 
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
AWS 기반의 마이크로 서비스 아키텍쳐 구현 방안 :: 김필중 :: AWS Summit Seoul 20
 
2. microsoft azure 클라우드 및 쉐어포인트 포탈 소개
2. microsoft azure 클라우드 및 쉐어포인트 포탈 소개2. microsoft azure 클라우드 및 쉐어포인트 포탈 소개
2. microsoft azure 클라우드 및 쉐어포인트 포탈 소개
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
마이크로서비스 아키텍처 기반의 의료정보시스템 고도화 전환사례.건국대학교병원.이제관
 
Aws migration case_study_v1.0.1
Aws migration case_study_v1.0.1Aws migration case_study_v1.0.1
Aws migration case_study_v1.0.1
 
[오픈소스컨설팅]Data Center to cloud - 최지웅 컨설팅코치, 오픈소스컨설팅
[오픈소스컨설팅]Data Center to cloud - 최지웅 컨설팅코치, 오픈소스컨설팅[오픈소스컨설팅]Data Center to cloud - 최지웅 컨설팅코치, 오픈소스컨설팅
[오픈소스컨설팅]Data Center to cloud - 최지웅 컨설팅코치, 오픈소스컨설팅
 
SQL Azure 실무 도입하기
SQL Azure 실무 도입하기SQL Azure 실무 도입하기
SQL Azure 실무 도입하기
 
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021
Oracle DB를 AWS로 이관하는 방법들 - 서호석 클라우드 사업부/컨설팅팀 이사, 영우디지탈 :: AWS Summit Seoul 2021
 
Aws로 ci하기 안기욱
Aws로 ci하기 안기욱Aws로 ci하기 안기욱
Aws로 ci하기 안기욱
 
엔터프라이즈 웹 동향 및 적용사례
엔터프라이즈 웹 동향 및 적용사례엔터프라이즈 웹 동향 및 적용사례
엔터프라이즈 웹 동향 및 적용사례
 
Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos Private PaaS with Docker, spring cloud and mesos
Private PaaS with Docker, spring cloud and mesos
 
Cloud migration pattern using microservices
Cloud migration pattern using microservicesCloud migration pattern using microservices
Cloud migration pattern using microservices
 
[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션[찾아가는세미나] 클라우드 데이터 가상화솔루션
[찾아가는세미나] 클라우드 데이터 가상화솔루션
 
쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기쿠키런 1년, 서버개발 분투기
쿠키런 1년, 서버개발 분투기
 
고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)
고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)
고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)
 
4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴4. 대용량 아키텍쳐 설계 패턴
4. 대용량 아키텍쳐 설계 패턴
 
designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...
 
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
대용량 데이터베이스의 클라우드 네이티브 DB로 전환 시 확인해야 하는 체크 포인트-김지훈, AWS Database Specialist SA...
 

Mehr von Open Source Consulting

Mehr von Open Source Consulting (20)

클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략
 
[기술 트렌드] Gartner 선정 10대 전략 기술
[기술 트렌드] Gartner 선정 10대 전략 기술[기술 트렌드] Gartner 선정 10대 전략 기술
[기술 트렌드] Gartner 선정 10대 전략 기술
 
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
[오픈테크넷서밋2022] 국내 PaaS(Kubernetes) Best Practice 및 DevOps 환경 구축 사례.pdf
 
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
쿠버네티스 기반 PaaS 솔루션 - Playce Kube를 소개합니다.
 
Life science에서 k-agile으로 일하기 : with SAFe(Scaled Agile) & Atlassian
Life science에서 k-agile으로 일하기 : with SAFe(Scaled Agile) & Atlassian Life science에서 k-agile으로 일하기 : with SAFe(Scaled Agile) & Atlassian
Life science에서 k-agile으로 일하기 : with SAFe(Scaled Agile) & Atlassian
 
초보자를 위한 네트워크/VLAN 기초
초보자를 위한 네트워크/VLAN 기초초보자를 위한 네트워크/VLAN 기초
초보자를 위한 네트워크/VLAN 기초
 
Atlassian cloud 제품을 이용한 DevOps 프로세스 구축: Jira Cloud, Bitbucket Cloud
Atlassian cloud 제품을 이용한 DevOps 프로세스 구축: Jira Cloud, Bitbucket CloudAtlassian cloud 제품을 이용한 DevOps 프로세스 구축: Jira Cloud, Bitbucket Cloud
Atlassian cloud 제품을 이용한 DevOps 프로세스 구축: Jira Cloud, Bitbucket Cloud
 
[웨비나] 클라우드 마이그레이션 수행 시 가장 많이 하는 질문 Top 10!
[웨비나] 클라우드 마이그레이션 수행 시 가장 많이 하는 질문 Top 10![웨비나] 클라우드 마이그레이션 수행 시 가장 많이 하는 질문 Top 10!
[웨비나] 클라우드 마이그레이션 수행 시 가장 많이 하는 질문 Top 10!
 
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
[오픈소스컨설팅] EFK Stack 소개와 설치 방법[오픈소스컨설팅] EFK Stack 소개와 설치 방법
[오픈소스컨설팅] EFK Stack 소개와 설치 방법
 
[오픈소스컨설팅] SELinux : Stop Disabling SELinux
[오픈소스컨설팅] SELinux : Stop Disabling SELinux[오픈소스컨설팅] SELinux : Stop Disabling SELinux
[오픈소스컨설팅] SELinux : Stop Disabling SELinux
 
[오픈소스컨설팅] 서비스 메쉬(Service mesh)
[오픈소스컨설팅] 서비스 메쉬(Service mesh)[오픈소스컨설팅] 서비스 메쉬(Service mesh)
[오픈소스컨설팅] 서비스 메쉬(Service mesh)
 
[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community[오픈소스컨설팅] ARM & OpenStack Community
[오픈소스컨설팅] ARM & OpenStack Community
 
[오픈소스컨설팅] Linux Network Troubleshooting
[오픈소스컨설팅] Linux Network Troubleshooting[오픈소스컨설팅] Linux Network Troubleshooting
[오픈소스컨설팅] Linux Network Troubleshooting
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
 
Open infra and cloud native
Open infra and cloud nativeOpen infra and cloud native
Open infra and cloud native
 
Community Openstack 구축 사례
Community Openstack 구축 사례Community Openstack 구축 사례
Community Openstack 구축 사례
 
Ceph issue 해결 사례
Ceph issue 해결 사례Ceph issue 해결 사례
Ceph issue 해결 사례
 
Community openstack & Ceph 기반 서비스 운영 해결 방안
Community openstack & Ceph 기반 서비스 운영 해결 방안Community openstack & Ceph 기반 서비스 운영 해결 방안
Community openstack & Ceph 기반 서비스 운영 해결 방안
 
Modern Incident Management with Atlassian (오픈소스컨설팅)
Modern Incident Management with Atlassian (오픈소스컨설팅)Modern Incident Management with Atlassian (오픈소스컨설팅)
Modern Incident Management with Atlassian (오픈소스컨설팅)
 
[Atlassian meets dev ops and itsm] itsm in an agile world atlassian scott
[Atlassian meets dev ops and itsm] itsm in an agile world atlassian scott[Atlassian meets dev ops and itsm] itsm in an agile world atlassian scott
[Atlassian meets dev ops and itsm] itsm in an agile world atlassian scott
 

[오픈소스컨설팅]Atlassian 트러블 슈팅 가상화 기반의 Atlassian Data Center 구축 최지웅 컨설팅코치

  • 1.
  • 2. 최지웅 / 오픈소스컨설팅 아틀라시안 트러블 슈팅 및 가상화 기반 데이터 센터
  • 3. 본 세션에서 다루는 내용 • 아틀라시안 활용에 있어서 자주 발생하는 문제점에 대한 해결 • 가상화/클라우드 기반의 아틀라시안 솔루션 데이터 센터 구축
  • 4. 강연자 소개 • 웹 애플리케이션 서버를 만드는 외국계 회사에서 근무했습 니다 • 리눅스 파는 외국계 회사에 근무했습니다 • 기술 관련 번역을 수행하고 몇 권의 책이 서점과 고객사에 있습니다 • 년에 오픈소스 컨설팅이 만들어지고 식구 들와 좋은 회사를 만들지 고민하고 있습니다 • 클라우드 기반 최신 오픈소스 기술에 대 한 전파를 주로 하고 있습니다
  • 5. 프로세스 통합 대시보드 표준 규격화 업무 메타 관리 개발 진행 관리 등 배포 도구 문서 빌드 요구사항 개발 빌드 배포 운영 소스 소스 추적 코드 리뷰작업 관리 및 이슈 트래킹 기업 애플리케이션 협업 관리 요구사항현업 담당자 요구사항 입력 각 기능 별 모듈 분리 및 상호 기반 연동 시스템 관리자 운영 관리 모니터링 소스 품질 상호 기반 연동 상호 기반 연동 프로젝트 배포 승인 개발자 품질 관리자 품질 관리 통합 계정 관리 전사 업무 메시징
  • 7.
  • 8. 오픈소스컨설팅 특징 • 아틀라시안 파트너 공통 • • 오픈소스컨설팅 전문성 분야 • 오픈 소스 통합 환경 구성 및 기술 지원 • 인프라 컨설팅 및 트러블슈팅 리눅스 가상화 클라우드 • 미들웨어 컨설팅 및 트러블슈팅 • 오픈 소스 애플리케이션 소스 코드 패치 및 플러그인 제작 • 기반
  • 9. 불안한 한 대의 서버 • 서버가 죽으면 현업에서 난리가 나요 • 아파치 웹 서버를 두고 로 연결하면 되는거 아닌가요 • 세션 클러스터링을 하면 되는 것 아닌가요 • 여러 고객사에서 이중화를 시도
  • 10. 솔루션 내부 구조는 보셨나요 • 기반의 애플리케이션으로 되어 있습니다 • 기반의 도 사용합니다 • 당연한 플러그인 기반으로 움직입니다
  • 12. 이중화는 어떻게 하나요 • 클러스터 안됩니다 • 형태로 시스템을 구성하여 만들어야 합니다 예
  • 13. 이중화는 어떻게 하나요? JIRA (Active) MySQL (jiradb) IIS Web Server isapi_redirect.dll Crowd (Active) MySQL (crowd) Confluence (Active) MySQL (confluence) Crowd (Standby) Confluence (Standby) JIRA (Standby) isapi_redirect.properties uriworkermap.properties /jira=jiraworker File System Attachments File System Attachments Active Servers (10.10.10.X) Standby Server (10.10.20.X) External Storage • Confluence, JIRA의 Attachments 파일의 이중화는 외장 스토리지, NFS, RSYNC 등을 통해 구성
  • 14. 절차 내용 서버 준비 제품들을 설치할 장비 준비 및 환경 구성 제품 설치 서버 제품 설치 구성 서버에 설치된 의 구성을 기존 서버로 설 정 설정 외장 스토리지의 경우 기존 디렉토리의 내용을 외장 스토리지로 복제하고 서버에 및 구성 변경 설정 의 경우 서버에서 구성을 통해 디렉토리 공유 서버에서 및 구성 에 설정 변경 서버 간 모드로 동작하도록 구성 변경 테스트 간 전환 테스트 이중화는 어떻게 하나요?
  • 15. 부하는 여전히 못견뎌요 • 안정성은 조금 확보했으나 사용자 콘텐츠 증가에 대한 대책 • 다운타임이 발생할 가능성이 있어요 • 성능 스케일업은 한계가 있어요 최대 성능은 스케일 아웃에서 나와요
  • 16. 고민해야 할 문제들 다운타임의 유형 계획되지 않은 다운타임 프로세스 다운 등 프로세스 멈춤 노드 다운 네트워크 통신 장애 과 부하로 인한 성능 저하 데이터베이스 장애 스토리지 장애 계획된 다운타임 업그레이드 패치 작업
  • 17.
  • 18. 서버 동시 운영 • • 예 웹서버 를 통해서 요청을 개 이상의 또는 시스템으로 분배 및 페일오버 • 서버 간에 클러스터링 컨텍스트 등 공유
  • 19. 파일 데이터베이스 레이어 • 데이터베이스 및 스토리지 공유 • 개 이상의 서버가 클러스터링 형태로 동작하며 공유 데이터베이스 와 스토리지에 접속 • 노드 정보 플러그인 인덱스 첨부파일 등의 데이터를 공유 응답시간개선
  • 20. 데이터센터 아키텍처 로드밸런싱 레이어 • 같은 하드웨어 장비 사용 가능 • 등과 사용 가능 • 등의 모듈을 통해서 요청을 분배 및 페일오버 애플리케이션 레이어 • 복수 서버 기반 들 동작 • 노드 간에 또는 자체 프로토콜을 통해 클러스터링 컨텍스트 정보 등 공유 • 동적인 노드 제거 또는 새로운 노드 추가 공유 자원 레이어 • 복수 서버가 데이터베이스 및 스토리지 공유해서 사용  빠른 • 등의 자원을 공유 통신통신 등 공유 등 공유
  • 21. 고가용성 아키텍처 • 관리 모니터링 기능이 내장 • 클러스터링 기능을 통한 고가용성을 유지하기 위해 각종 기능의 정상 동작 여부 를 상시 체크 및 조치 경고 발생 • 이러한 백그라운드 클러스터링 서비스들을 통해 클러스터 전체 또는 노드 별 안 정성 유지 기능 내용 검색 결과 예 가 즉 일부 노드에서 결과가 다름 일 경우 를 노드 간에 복제 함 노드 중에서 플러그인 또는 사용에 문제 예 가 안됨 가 있는지 모니터링 문제가 있을 경우 해당 노드에 대한 경고를 발생 의 각종 정보 동기화를 위한 스케줄러 정상 여부를 체크 클러스터 컨텍스트와 캐시 정보를 노드 간에 복제하기 위한 서비스 체크 특정 노드에서 문제가 발생할 경우 경고를 발생 함 클러스터 노드 간에 시간 불일치를 막기 위한 시간 동기화 서비스 여러 노드가 공유 스토리지의 을 정상적으로 공유하는지 체크
  • 22. 데이터 센터 • 가상화 기반의 스케일 아웃형 데이터 센터 아키텍처 구성 • 성능 저하에 대한 확장을 수평적으로 진행
  • 23.
  • 24.
  • 25. 가상화 클라우드 하면 뭐가 좋은가요 • 가상화 적용시 목적별 노드 가감 방법 및 대비 편의성 • 의 경우 을 통한 데이터센터 구성이 분 이내 • 백업 데이터 스냅샷을 통해 문제 발생 시 신규 인스턴스 즉시 생성 및 서비스 수 입 가능 • 즉 인스턴스 생성 및 서비스 투입을 최소화 시킴
  • 26. 목적에 따라 분리가 가능해요 • 서버들을 용도에 맞게 구분 • 일반 프로젝트 관리 및 을 위한 노드와 전용 노드를 구분 • 에서 를 구분하여 해당 노드로 라우팅 • 데이터베이스 스토리지 공유를 통해서 동일한 내용 제공 가능
  • 27. 목적에 따라 분리가 가능해요 • 목적에 따라 노드를 분리하여 분산형태로 사용 가능 노드 일반 노드 관리자 노드 파워유저 노드
  • 28. • • 헬스케어분야에서 연 조 매출 • 이상의 직원 • 사용자 폭발적 증가로 인한 심각한 성능 저하와 심각한 가용성 저하 • 분산된 개 노드에서 프로젝트 관리 많은 중복 요소
  • 29. • • 용도에 따라 인스턴스를 구분 • 개의 전용 노드 각종 관리 작업 수행 • 개의 일반 사용자 개발자 용 노드 • 개의 전용 노드 • 효과 • 년 연간 시간 가용성 에 이르던 다운타임 • 년 현재 수준으로 개선 이상 가용성 연간 시간 이내
  • 31.
  • 32. 결국 트러블 슈팅은 노하우 • 아틀라시안 소스 코드를 볼 수 있는 능력 • 미들웨어에서 발생하는 • 구간의 전반적인 구성 • 다양한 서포트 케이스 및 해결 경험의 중요성
  • 33. 변경하고 로그인이 안되네요 • 발생 원인 • 기존에 다른 디렉토리로부터 계정정보를 받아올 경우 해당 서버의 정보 변경 에 의해 발생 가능 • 해결 방법 • 권한회복 및 사용자 디렉토리 순서조절
  • 34. 로 아예 들어가질 못해요 • 원인 • 때문에 로그인을 못하는 경우 와 의 그림 문자가 깨져서 입력할 수 없는 경우 • 해결방법 • 에서 쿼리를 통해 를 초기화 • 는 기반으로 동작하나 가 서버 설정을 따라서 에 러가 발생할 수 있으므로 실행 옵션 자체에 명시적으로 추가
  • 35. 세션이 자주 끊겨요 • 원인 • 와 같은 다른 어플리케이션을 같이 사용 시 도메인이나 가 같은 상태에서 포트만 다르게 쓰면 발생 가능 • 해결방안 • 를 통한 설정이나 를 설정 설정에서 세션 쿠키명을 바꿔주는 방법 등이 있음
  • 36. 보드에서 에러가 나요 • 문제 상황 • 보드에서 를 클릭 시 에러가 발생하는 경우 • 원인 • 보드의 설정이 • 하나의 이슈에 대해 여러 개의 이 설정된 경우 • 문제 상황 • 로 모든 이슈들이 각각 하나의 만 가지도록 설정
  • 37. 페이지에서 • 요청 • 페이지 마크다운 플러그인 사용하여 커스터마이징하고 싶어요 • 마크다운 내 스크립트 사용 • <link rel="stylesheet" href="http://localhost:8888/owl.carousel.css"> <script type="text/javascript" src="https://code.jquery.com/jquery- 1.12.3.min.js"></script> <script> var jq11223 = jQuery.noConflict(); </script> <script type="text/javascript" src="http://localhost:8888/owl.carousel.js"></script> <script> // alert($().jquery); // alert(AJS.$().jquery);
  • 38. 매크로에서 한글 그룹 검색이 안되요 • 요청 • Confluence User List 매크로 사용 시 한글 그룹이 검색이 안됩니다. • 원인 • 한글 요청에 대한 NginX 웹 서버 proxy 세팅이 잘못된 경우 발생 • 해결 • {… proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
  • 39. 가 계속 돌아요 • 원인 • 첨부파일 개수가 많은 페이지가 지속적으로 쌓이는 경우 • 해결방안 • 데이터베이스를 통해 페이지의 첨부파일 개수가 특정 수를 넘는 것을 확인 후 삭제 • 페이지 내 첨부파일 개수 확인 쿼리 SELECT * FROM ( select r.pageid, r.spaceid, s.spacename, r.username, r.pageTitle, count(r.title) as attachment_count from ( SELECT DISTINCT c.pageid, c.spaceid, u.username, c.title, co.title AS pageTitle FROM CONTENT AS c JOIN user_mapping AS u ON u.user_key = c.creator JOIN CONTENT AS co ON c.pageid = co.contentid JOIN CONTENTPROPERTIES AS cn
  • 40. 를 모니터링 하고 싶어요 • 기술 지원 및 스카우터 세팅하여 보여드립니다
  • 41. 다양한 트러블 슈팅 노하우 • 오픈소스컨설팅에 연락하여 물어보시면 됩니다 • • • 아틀라시안 솔루션이 동작하는 운영체제 미들웨어까지 책임져 드립니다