KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직Hyunjik Bae
클라이언트 개발자들은 직접 서버와 네트워크를 다루지는 않더라도 컴퓨터 네트워크의 특징에 대해서는 알고 있어야 한다. 본 강연은 클라이언트 개발자들이 반드시 알아야 하는 컴퓨터 네트워크 관련 용어와 특징을 소개한다. 아울러 스마트폰 무선 네트워크 관련해서 주안점도 다룬다.
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직Hyunjik Bae
클라이언트 개발자들은 직접 서버와 네트워크를 다루지는 않더라도 컴퓨터 네트워크의 특징에 대해서는 알고 있어야 한다. 본 강연은 클라이언트 개발자들이 반드시 알아야 하는 컴퓨터 네트워크 관련 용어와 특징을 소개한다. 아울러 스마트폰 무선 네트워크 관련해서 주안점도 다룬다.
An introduction to IBM MessagSight, IBM's gateway to the Internet of Things and Mobile Messaging. As the Internet of Things and M2M become more pervasive are you ready to engage and get the benefits? Do you want to get the benefits of rapid, reliable messaging in the mobile world? This session will cover an introduction to MessageSight, latest updates and an introduction to MQTT.
Definition and Tendency of Fabric Computing (패브릭 컴퓨팅의 정의와 현재 경향)Jo Sangwon
I describe Fabric-Computing.
* What is Fabric computing?
* What are kinds of Fabric computing?
* What is property of Fabric computing?
* What technology we need?
* What is product of corporation?
I describe those things.
패브릭 컴퓨팅에 대한 발표 자료입니다.
* 패브릭 컴퓨팅이란 무엇인지?
* 패브릭 컴퓨팅의 종류가 무엇인지?
* 패브릭 컴퓨팅의 특징은 무엇인지?
* 패브릭 컴퓨팅을 위해 필요한 기술이 무엇인지?
* 현재 기업들에서 내놓은 제품은 무엇이 있는지?
위와 같은 사항들을 설명하였습니다.
NPO Media 2013: 네트워크 안에 힘이 있다 – 한국 비영리 조직 실무자들의 디지털 미디어 사용실태 조사 발표 /한동우 (강남대학교 사회복지전문대학원 교수)
최근 비영리 기관의 조직 모델과 커뮤니케이션 패러다임이 변화함에 따라 비영리 조직의 디지털 미디어 활용 역량이 더욱 중요해지고 있습니다. 앞으로 비영리 조직들은 더욱 개방적, 수평적으로 조직구조를 혁신하고, 내/외부 참여자 간의 신속하고 투명한 의사소통 및 참여를 이끌어내기 위해 미디어를 적극 활용해 나가야 합니다. 이에 국내 비영리 조직들이 보유하고 있는 미디어 인프라 현황과 실제 활용도 수준, 조직문화와 커뮤니케이션 현황 등을 분석하였습니다.
https://vimeo.com/77934553 #changeon
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 관리 및 운영 관점의 편의 제공
[ CB-Larva - 멀티클라우드 인프라 및 응용을 위한 네트워킹 (Networking for multicloud infrastructure and applications) ]
- 글로벌 스케일 네트워킹
- Cloud Adaptive Network 구조 및 주요 기능
- CLADNet 기술 시연: 글로벌 스케일 MCIS에 CLADNet 입혀 보기
- Cloud Adaptive Network 활용 예시
- CB-Larva의 현재, 비전, 그리고 공개SW
# 발표영상(YouTube) : https://youtu.be/6ylyEoQvNN8?t=7741
----------------------------------------------------------------------------------------------------------
# Cloud-Barista Community Homepage : https://cloud-barista.github.io
# Cloud-Barista Community GitHub : https://github.com/cloud-barista
# Cloud-Barista YouTube channel : https://cloud-barista.github.io/youtube
# Cloud-Barista SlideShare : https://cloud-barista.github.io/slideshare
리눅스 pacemaker 기반의 High Availaiblity 구성방법에 대해 설명합니다. pacemaker를 사용하는 다른 리눅스 기반도 구성이 가능합니다.
Pacemaker 기반 Linux High Availability 입문용으로는 적합하지 않을 수 있습니다. Pacemaker 기반 Linux High Availability를 한 번도 설치 및 구성을 하지 않은 리눅스 관리자라면 설치 문서를 먼저 참고하십시오.
RHEL7 및 CentOS 7을 중심으로 레드햇 계열의 리눅스에 적합한 내용으로 작성되었습니다.
1. 서버/인프라를 지탱하는 기술
1.서버/인프라 구축 입문 : 다중화/부하분산의 기본
1.1 다중화의 기본 / 1.2 웹 서버의 다중화
Hwanseok, Park
2. 용어정리
• VIP ( Virtual IP )
– 물리적 서버에 할당되지 않고 유동적인 서비스나 역할에 할당된 IP
• ICMP ( Internet Control Message Protocol )
– IP의 오류보고 / 오류정정 부재를 보완하기 위한 메시지 프로토콜
• ARP ( Address Resolution Protocol )
– 다른 호스트의 MAC 주소를 알기 위해 사용되는 프로토콜
• GARP ( Gratuitous ARP )
– 서브넷에 자싞의 IP의 사용을 확인, 타 호스트에 자싞의 MAC 주소 갱싞을 요청
• 가용성 ( Availability )
– 시스템이 필요할 때 동작하는지 비율
• Round Robin
– 태스크를 공평하게 cpu에 할당하는 것
5. 현대의 다중화의 예
• Disaster recovery
– 재해를 대비, 인프라를 복구 또는 지속을 목적을 가진 과정, 정책, 절차
– For example, of companies that had a major loss of business data,
43% never reopen and 29% close within two years.
– IT DR은 세가지 타입으로 구분하여 측정
• Preventive measure
• Detective measure
• Corrective measure.
6. 다중화란?
Redundancy is…
• 장애가 발생해도 예비 운용장비로 지속적인 서비스를 제공하는 것
• 현대 네트워크 서비스에서는 가용성을 확보하는 것이 관건
• 9.11 테러 이후 특히 Disasters Recovery 에 대한 관심 집중
• 1장에서 소개되는 다중화의 방법
– DNS Round Robin
– Load Balancer
7. 가용성 (Availability)
• 위키…
– システムが継続して稼動できる能力のこと
– 利用者から見て「使用できる」度合いを示す
– Availability of a system is typically measured as a factor of its reliability
- as reliability increases, so does availability.
– 그러면 반대로 availability를 증가시킨다고 reliability가 증가하는가?
• Blog에서…
– 시스템 품질요소 가운데 가장 중요한 요소로 주어진 시간 동안 주어진 환
경하에서 프로그램이 장애 없이 운영되는 특성
• 소프트웨어 아키텍처 이론과 실제 – 린 베스
– 시스템의 가용성은 시스템이 필요할 때 동작하는지에 대한 비율을 말한다
8. 다중화의 본질
• 장애를 산정한다
– 라우터가 장애, 서버 장애
• 예비 장비를 준비한다
– 예비 운영장비를 도입
• 운용체제의 정비
– 장애에 대해 어떤 장비로 구성할 지, 어떤 방식을 사용할 지 결정
9. 웹 서버 라우터
인터넷
웹 서버 라우터
예비 예비
Hot Standby Cold Standby
Hot Standby는 두 대를 가동시켜 늘 같은 상태로 운용.
반면 Cold Standby는 물리적 회선 및 전원상태를 변경
12. 장애시 대응
라우터
웹 서버
10.0.0.101 인터넷
10.0.0.1
라우터
웹 서버 예비
예비 10.0.0.1로 접속!
10.0.0.102
유
저
13. 장애극복 동작 확인
ip_takeover() {
MAC='ip link show $DEV | egrep -o '([0-9a-f]{2{:){5}[0-9a-f]{2}' |
head -n 1 | tr -d :'
ip addr add $VIP/24 dev $DEV
send_arp $VIP $MAC 255.255.255.255 ffffffffffff
}
64bytes from 10.0.0.1: icmp_seq=5 ttl=64 time 0.453 ms
64bytes from 10.0.0.1: icmp_seq=6 ttl=64 time 3.73 ms
...
64bytes from 10.0.0.1: icmp_seq=8 ttl=64 time 0.418 ms
64bytes from 10.0.0.1: icmp_seq=11 ttl=64 time 3.20 ms
14. 장애검출
• Health Check라는 방법을 사용
– ICMP 감시 ( Layer 3)
• Webserver 장애 검출이 어려움
• 라우터에 의한 헬스 체크
– 포트 감시 (Layer 4)
• 과부하 상태를 확인 할 수 없음
– 서비스 감시 (Layer 7)
• 서버의 과부하 발생
• Web server의 헬스체크에 사용
16. DNS 라운드 로빈
• DNS round robin is
– DNS를 이용하여 하나의 서비스에 여러 대의 서버를 분산시키는 방법
10.0.0.101
• 동일한 이름으로 여러 개의 IP를 등록.
• 비교적 간단한 방법이지만 단점이 존재
②
– 서버의 수만큼 주소가 필요 10.0.0.101
– 균등 분산되지 않음 DNS 유
10.0.0.101 저
①
– 웹서버의 장애를 감지하지 못함 10.0.0.102
Ex.com 접속
③
웹 서버1
10.0.0.101
17. DNS 라운드로빈의 다중화 구성 예
10.0.0.1
(VIP) 웹 서버1
10.0.0.101 유
라우터 인터넷
저
10.0.0.2
(VIP) 웹 서버2 Ex.com 접속
10.0.0.102
웹 서버
10.0.0.101 유
라우터 인터넷
저
10.0.0.1
웹 서버2 Ex.com 접속
10.0.0.2
10.0.0.102
18. • 웹서버1과 웹서버2의 vip가 다르므로 script 수정
– 두개의 VIP를 가지고 반복문을 이용한 script 작성
• ICMP 감시이므로 웹서비스 장애시 극복 불가
– Ping이 아닌 curl을 이용하여 헬스 체크
• 웹서비스가 정지해도 VIP를 해제 하지 않으므로 IP 주소 중복
– VIP를 해제하는 ip_del()함수 작성
• 한 번이라도 장애가 극복되면 스크립트가 정지
– While true문으로 무한반복
19. ip_add() {
MAC = 'ip link show $DEV | egrep -o '([0-9a-f]{2}:){5}[0-9a-f]{2}' | head -n 1 | tr -d :'
ip addr add $1/24 dev $DEV
send_arp $1 255.255.255.255 ffffffffffff 기존의 ip_takeover와 동일
} -즉, 다른 webserver로 스위칭
ip_del() {
ip addr del $1/24 dev $DEV IP 중복을 막기 위해 설정된 vip를 제거
}
healthcheck() {
for I in $VIP;do
if(["200" -ne "'curl -s -I 'http://$i/' | head -n 1 | cut -f 2 -d''']; then
if[-z"'ip addr show $DEV | grep $i'" ]; then
ip_add $i
else
ip_del $i
while true; do healthcheck;sleep 1;done
20. 보다 편하게 확장하기
• 서버가 2->3대로 늘어 난다면
– 한 서버가 다운되면 어떤 서버가 vip를 인계하는가?
– 장애극복 순간 두 대의 서버가 같은 vip를 가질 수 있음
– 한번 정지한 서버 복귀가 곤란
• 다음장 1.3 웹 서버의 다중화에서 소개
– Load Balancer을 이용하여 해결