레이블이 cdn인 게시물을 표시합니다. 모든 게시물 표시
레이블이 cdn인 게시물을 표시합니다. 모든 게시물 표시

2014년 9월 4일 목요일

edns-client-subnet 지원이 CDN 성능에 미치는 영향


2012년에 구글이 제안해서 현재 Google Public DNS, OpenDNS에 구현되어 있는 edns-client-subnet 기능은 사실 DNS 기반으로 로드 밸런싱을 하는 CDN 에 있어서는 매우 필요한 기능이었습니다. 이에 따른 실제 POP 분포 및 성능 변화에 대한 분석을 CDNetworks US 블로그에 올려 두었습니다.
  1. Analyzing The Performance Impact of edns-client-subnet on CDN: Part 1
  2. Analyzing The Performance Impact of edns-client-subnet on CDN: Part 2
딱히 번역할 생각은 없고... ^^ 어렵지 않은 글이니 재미있게 읽어 주셨으면 하는군요. 우리 팀의 김지훈씨가 많이 수고 하셨습니다.


2014년 6월 26일 목요일

구글 IO 2014 및 Velocity Santa Clara 2014

이틀동안 구글I/O와 Velocity Santa Clara 2014를 왔다갔다 했습니다. 하나는 샌프란시스코, 하나는 산타클라라... 둘이 약 45마일 떨어져 있는데 한번 이동하는데 한시간이라...

이하 간단한 감상

- 구글I/O: 사실 팬부심으로 가야 하는데, 팬 수준은 아닌 사람이라... 아이폰 천국인 미국에서 안드로이드 사용자 밀도가 가장 높은 곳일듯 하더군요. 구글 글래스 쓴 사람도 많고요.
구글 글래스는 1층 부스에서 $1500에 팔고 있는데 여전히 사고 싶지 않습니다... 그 돈이면 PS4 + 크롬북 사고도 남겠다. 근데 거기 돌아다니면 워낙 글래스 쓴 사람이 많아서 지름신이 떠다니긴 하죠.

키노트는 너무 많은걸 나열하느라 핵심을 놓쳐 보입니다. 안드로이드 L 위주이긴 한데 안드로이드오토 (vs 카플레이) 안드로이드웨어(vs 아이워치) 안드로이드핏 (vs 헬스) 등 모바일 분야에서는 애플을 따라가야 하고, 클라우드 플랫폼은 아마존을 따라가야 하는데, 클라우드의 경우 Docker 통합과 더불어서 PaaS라는 면에서는 한단계 이상에 접근한 것으로 보이지만 구글이 아무리 크다고 해도 두 거물을 동시에 따라가기에는 한계가 있어 보입니다.

신 서비스 데이터플로는 멋져 보이긴 한데 모르는 사람은 통 모르는 서비스이고, 키노트에서 라이브 디버깅은 마찬가지로 공돌이의 로망이겠지만 모르는 사람은 통 모르는 일이죠. 주목도 면에서는 차라리 셀프드라이빙카나 구글글래스 차기버전을 팡팡 터뜨리는게 더 낫지 않았을까요. 뭐 그걸 모르는 바 아닐 테지만 안드로이드 L의 이름도 못정한 걸로 보아서 여러가지 사정이 있지 않았을까 합니다.

나머지는... 여전히 밥은 맛있고 선물은 좋긴 한데 안드로이드웨어 시계는 연동하려면 안드로이드 4.3이상 되는 폰이 있어야 하는데 저는 아이폰과 파이어폭스OS폰 그리고 안드로이드 4.2폰만 있어서 꽝. 킨들파이어에 루팅한 킷캣이 깔려 있는데 그건 블루투스가 안달려 있고... 막상 모토롤라의 스마트워치는 LG나 삼성것이랑 시간을 못맞추어서 나중에 보내 준다는 굴욕이... 뭐 이젠 구글 아니라 관심이 떨어진것 같습니다.

키노트에서 무언가 발표할 때 마다 환호성이 영 시원찮은게 원인이 1) 공돌이라 그런 타이밍을 못맞춘다 (미드 실리콘밸리를 보시길) 2) 발표자가 박수를 이끌어내는 타이밍이 애매하다 둘 다에 속하는듯. 애플이 그런 프레젠테이션 기술에서는 갑이지요...

- Velocity Santa Clara: 사실 많이는 못봤는데 CDN, 성능 모니터링, 자동 디플로이 관계된 회사가 점점 더 많이 나옵니다. 웹 성능 모니터링은 국내에서는 주목도가 높지 않은 분야인데 이 분야에는 대기업 (Compuware라든가) 중소기업 스타트업 모두 몰려드는 분야이고 요즘의 빅데이터 바람을 타고 있어 보임. 국내 스타트업도 이런 회사들이 나와 주었으면 좋곘는데... 최근에 관심 있는 회사는 New Relic, Appneta 같은 성능 측정 회사나 관리엔진의 신예 Ansible 등입니다.

2014년 6월 18일 수요일

Unbound win32 버전으로 PC에 DNS 리졸버 만들기

unbound 는 DNS서버이긴 한데 캐시 모드만 동작 시키면 기존 ISP의 DNS서버를 지정하는 대신 자신의 PC에 DNS 로컬 리졸버를 설치할 수 있습니다. 즉 ISP에서 제공하는 DNS서버를 자신의 PC에 설치한다고 보면 됩니다.

1. 설치


http://unbound.net/download.html

에서 Win32 (32비트 버전 또는 64비트 버전)을 설치하면 됩니다. 설치시에 특별히 해 주어야 할 일은 없습니다. 저는 XP에서 해 보았지만 Vista 이후 버전에서도 문제 없을 겁니다.

2. 설정


C:\Program Files\Unbound 에 설치 되었다고 가정 하고, 다음과 같이 설정 합니다. DNS서버로 설정 하려면 더 복잡한 설정이 필요하겠지만 이건 캐시 용도로만 사용할 거니까요.

C:\Program Files\Unbound\service.conf :
server:
directory: "c:\Program Files\Unbound"
root-hints: "c:\Program Files\Unbound\root.hints"
interface: 127.0.0.1
access-control: 127.0.0.0/8 allow_snoop
verbosity: 1
hide-identity: yes
hide-version: yes
prefetch: yes
do-ip4: yes
do-ip6: no
do-udp: yes
do-tcp: no
private-address: 10.0.0.0/8
private-address: 172.16.0.0/12
private-address: 192.168.0.0/16
private-address: 127.0.0.1/8
logfile: "c:\unbound.log"


그리고 root 서버의 목록인 root.hints를 만들어야 합니다. 이 파일은 IANA에서 보급하는 네임서버용 root.hints를 사용하면 되므로, http://www.internic.net/domain/named.root 를 다운로드해서 C:\Program Files\Unbound\root.hints 로 저장하면 됩니다. 이 파일을 종종 업데이트되니 위 URL에서 최신 버전을 다운로드받아 쓰는게 제일 좋습니다.

C:\Program Files\Unbound\root.hints :
;       This file holds the information on root name servers needed to
;       initialize cache of Internet domain name servers
;       (e.g. reference this file in the "cache  .  "
;       configuration file of BIND domain name servers).
;
;       This file is made available by InterNIC 
;       under anonymous FTP as
;           file                /domain/named.cache
;           on server           FTP.INTERNIC.NET
;       -OR-                    RS.INTERNIC.NET
;
;       last update:    June 2, 2014
;       related version of root zone:   2014060201
;
; formerly NS.INTERNIC.NET
;
.                        3600000  IN  NS    A.ROOT-SERVERS.NET.
A.ROOT-SERVERS.NET.      3600000      A     198.41.0.4
A.ROOT-SERVERS.NET.      3600000      AAAA  2001:503:BA3E::2:30
;
; FORMERLY NS1.ISI.EDU
;
.                        3600000      NS    B.ROOT-SERVERS.NET.
B.ROOT-SERVERS.NET.      3600000      A     192.228.79.201
B.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:84::B
;
; FORMERLY C.PSI.NET
;
.                        3600000      NS    C.ROOT-SERVERS.NET.
C.ROOT-SERVERS.NET.      3600000      A     192.33.4.12
C.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:2::C
;
; FORMERLY TERP.UMD.EDU
;
.                        3600000      NS    D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET.      3600000      A     199.7.91.13
D.ROOT-SERVERS.NET.  3600000      AAAA  2001:500:2D::D
;
; FORMERLY NS.NASA.GOV
;
.                        3600000      NS    E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET.      3600000      A     192.203.230.10
;
; FORMERLY NS.ISC.ORG
;
.                        3600000      NS    F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET.      3600000      A     192.5.5.241
F.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:2F::F
;
; FORMERLY NS.NIC.DDN.MIL
;
.                        3600000      NS    G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET.      3600000      A     192.112.36.4
;
; FORMERLY AOS.ARL.ARMY.MIL
;
.                        3600000      NS    H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET.      3600000      A     128.63.2.53
H.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:1::803F:235
;
; FORMERLY NIC.NORDU.NET
;
.                        3600000      NS    I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET.      3600000      A     192.36.148.17
I.ROOT-SERVERS.NET.      3600000      AAAA  2001:7FE::53
;
; OPERATED BY VERISIGN, INC.
;
.                        3600000      NS    J.ROOT-SERVERS.NET.
J.ROOT-SERVERS.NET.      3600000      A     192.58.128.30
J.ROOT-SERVERS.NET.      3600000      AAAA  2001:503:C27::2:30
;
; OPERATED BY RIPE NCC
;
.                        3600000      NS    K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET.      3600000      A     193.0.14.129
K.ROOT-SERVERS.NET.      3600000      AAAA  2001:7FD::1
;
; OPERATED BY ICANN
;
.                        3600000      NS    L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET.      3600000      A     199.7.83.42
L.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:3::42
;
; OPERATED BY WIDE
;
.                        3600000      NS    M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET.      3600000      A     202.12.27.33
M.ROOT-SERVERS.NET.      3600000      AAAA  2001:DC3::35
; End of File

2.1. 설정 확인


cmd 를 쓰면 쉽게 할 수 있습니다.

> cd c:\program files\unbound
> unbound-checkconf
unbound-checkconf: no errors in C:\Program Files\Unbound\service.conf

이렇게 나오면 문제 없습니다. 다른 오류가 나오면 설정 파일을 수정하시기 바랍니다.

2.2. 서비스로 실행


이미 서비스로 설치가 되어 있으니, cmd 또는 services.msc 에서 재시작만 해 주면 됩니다.

> net stop unbound
> net start unbound

2.3. DNS resolver 변경


이제 사용하는 PC 네트워크 장치의 DNS resolver 를 127.0.0.1 로 변경해 주세요.

동작 확인은 직접 브라우저를 띄워 보거나, nslookup 명령으로 해 볼 수 있습니다.

> nslookup daum.net
Server: localhost
Address: 127.0.0.1

Non-authoritative answer:
Name: daum.net
Addresses: 110.45.215.23, 114.108.157.19, 61.111.62.173, 114.108.157.50


3. 끝으로


굳이 ISP의 네임서버를 쓰면 되지 이게 왜 필요할까 하지만... ISP의 네임서버에 문제가 있을 경우 (오래전의 인터넷대란)라든가, ISP 네임서버의 정책을 우회하고 싶다거나 (접속이 안되는 사이트), DNS 기반으로 로드밸런싱을 하는 CDN 에게 자신의 위치를 더 정확하게 알려 주어서 인터넷 속도가 (주로 웹 브라우징이나 비디오이겠죠) 향상되는 효과를 거둘 수 있습니다. 기존에 이런 용도로 Google DNS (8.8.8.8)이나 OpenDNS를 쓰기도 하는데, 이런걸 자신의 PC에 설치한다고 생각하면 되겠죠. Google DNS나 OpenDNS가 edns-client-subnet extension을 지원해서 CDN의 로드밸런싱을 방해하는 일은 거의 없어졌지만, 아직 모든 DNS서버가 그걸 지원하는 것도 아니고 아무래도 자신의 PC에 DNS서버 (127.0.0.1 로만 뜨니까 외부에서 접속 염려는 없습니다)가 있다는 점에 안심하는 분들도 있겠죠.

이 글은 http://npr.me.uk/unbound.html의 내용을 많이 참고하고 있습니다 (설정 파일 등은 거의 그대로). 위 링크에 가시면 필터링 등의 추가 예제도 있으니 살펴 보세요.

2012년 10월 24일 수요일

DevOn 2012 발표자료 모음

지난 DevOn 2012는 컨퍼런스에서 발표할 수 있었던 간만의 기회였습니다. 발표를 허락해 주신 다음커뮤니케이션에게 감사드리며, 제 발표 자료에 대해서 아래와 같이 링크를 합니다.

devon 페이지

강의자료


이쪽은 제 slideshare 페이지입니다. 다음쪽 페이지는 여기입니다.



동영상



2008년 6월 25일 수요일

Chocolate TV

This is a reference site of Brightcove. Flash-based, content-managed. Interesting.

2008년 2월 11일 월요일

오늘의 링크

사실 제대로 읽어본 건 몇가지 없네요.

리눅스 root 권한 획득 보안 버그 발견
http://barosl.com/blog/entry/linux-vmsplice-local-root-exploit

How Rackspace Now Uses MapReduce and Hadoop to Query Terabytes of Data
http://www.highscalability.com/how-rackspace-now-uses-mapreduce-and-hadoop-query-terabytes-data

clusteradmin.blogspot.com - blog about building and administering clusters
http://www.highscalability.com/clusteradmin-blogspot-com-blog-about-building-and-administering-clusters

62% Of CDN Customers Surveyed Say Pricing Flat Year Over Year
http://blog.streamingmedia.com/the_business_of_online_vi/2008/02/62-of-cdn-custo.html

CDN CacheLogic Rebrands, Changes Company Name To Velocix
http://blog.streamingmedia.com/the_business_of_online_vi/2008/02/cdn-cachelogic.html

CDN News: CacheLogic, Level 3, Limelight
http://feeds.feedburner.com/~r/DataCenterKnowledge/~3/231509998/cdn_news_cachelogic_level_3_limelight.html

Google: Introduction to Distributed System Design
http://www.highscalability.com/google-introduction-distributed-system-design

Akamai: 1M Social Media Requests a Second
http://feeds.feedburner.com/~r/DataCenterKnowledge/~3/222448795/akamai_1m_social_media_requests_a_second.html

CacheLogic Rasies $25 Million, Starts New Project With The BBC
http://blog.streamingmedia.com/the_business_of_online_vi/2008/01/cachelogic-rasi.html

Content Delivery Networks Are in a Growth Pattern
http://blog.dougjaworski.com/content-delivery-networks-are-in-a-growth-pattern