1. NaverCloudCenter(30min) 네이버 클라우드 플랫폼 데이터센터 버추얼투어

https://www.youtube.com/watch?v=qLFxB7Uk-o4

 

네이버 클라우드 플랫폼의 데이터센터를 구경할 수 있는 영상이다.

네이버의 데이터센터를 보고 가장 먼저 든 생각은데이터센터가 너무 예쁘다는 것!

외관은 자연과 어울리도록 조성했고, 내관은 팔만대장경의 장경각을 모티브로 만들었다고 한다.

과거 팔만대장경의 장경각이, 현대에 와서 데이터센터가 되었다고 생각하니 데이터센터의 의미가 또 색다르게 느껴졌다. 데이터센터의 모습을 보니 현대의 21세기 장경각이라 부를만하다는 생각도 들었다. 미래에는 또 어떤 장경각이 생길까? 지금도 이렇게나 최신화-최적화 되어있는데 미래에는 또 어떤 기술이 접목될까. 데이터센터에는 뭔가 흥미가 생긴다.

데이터센터에는 4 가지 중요한 구성요소가 있다. 전력, 서버, 쿨링, 운영 및 관리이다.

먼저 전력은, 전력손실을 최소화하기 위해 각종 기능들이 적용되어 있으며, 각종 사고(정전 등)시에도 안정적으로 전원이 들어와있을 수 있도록 하기위해 UPS 등의 기능이 사용중이다. 사용자에게 언제나 데이터를 보내주기위해, 데이터를 관리하기 위해 11초도 안멈추고 열일중이다.

서버

효율적으로 전력을 사용하고, 네트워크를 연결하는 것을 생각하며 서버실의 규모와 구조를 생각하는게 데이터센터를 구상할 때 가장 중요한 일이라고 한다. 방대한 양의 서버를 잘 다룰 수 있도록 설계하는게중요하다. 데이터센터가 현대인들에게 중요한만큼, 전쟁이 나면, 적 나라의 각종 대기업 데이터센터 서버실부터 폭파시켜야겠다는 생각이들었다. (뜬금없지만) 그러면 검색엔진 중단에 SNS 통해서 연락할수도 없고.. 엄청난 혼란이 야기될 것 같다.

쿨링

매일매일 쉬지않고 돌아가니, 데이터센터에서의 쿨링은 매우 중요한 요소이다. 네이버의 데이터센터는 AMU 라는 쿨링 시스템을 도입하여 사용중이라고 한다. 이후 NAMU로 업그레이드 된 쿨링시스템을 도입하는 등, 중요한 만큼 효과적, 효율적인 쿨링을 위해 노력하고 있다.

운영관리

데이터센터에서는 데이터의 유실을 막는 이중화설계(분산저장)를 한다고 한다. 예를들어, 네이버 블로그에 글을 작성하면, 만일의 상황(글이 날라가거나..)에 대비해 여러 데이터로 저장한다는 것이다. 한 센센터 저장하는 것이 아니라, 곳곳의 센터에 나눠 데이터를 저장한다고 한다. IT 대기업은 정말 대단하다고 생각했다. , 데이터의 유출을 막기 위해 전문보안 기술진이 상주하며 데이터 보안에 힘쓰고 있다고 한다. (현재까지 네이버의 데이터 해킹건이 0건이라고 한다.)

 

2. Agile(19min)

https://www.youtube.com/watch?v=NoMznX8S9pU

1.애자일 탄생배경, 특장점

애자일의 탄생 배경은, 소프트웨어 개발에 있어 입력값, 출력값이 명확할 수가 없고, 확정된 목표가 존재할 수 없기 때문이다.(, 예측불가하다) 소프트웨어의 특성상 이슈는 존재하며, 고객의 니즈가 달라질 수 있기 때문이다. 아무리 잘 완성된 소프트웨어더라도 고객의 니즈에 맞지 않는다면 쓸모없는 소프트웨어가 된다. 이처럼, 변화할 수 있음을 인정하고, 규정된 프로세스에서 벗어나 유연성있는 방법론을 사용하자는게 애자일의 목표이다.

애자일은 점검, 조정, 변화를 수용하는 적응적 프로세스, 목표시스템을 여러 번 나눠 출시하자는 반복점증적 프로세스에 그 근간을 둔다. 이 두 프로세스와 애자일의 차이점은 출시주기가 짧고 유연하다는 점(2~4), 소통과 협력의 극대화를 추구한다는 점이라고 할 수 있다. 애자일에애 중요시하는 것은 자기조직화팀, 적응성, 고객의 참여, 반복 점증적 개발이다. “인간 중심적 방법론이라고 할 수 있겠다.

 

2.애자일 방법론 기원, 본질

흔히 많이 쓰는 애자일 방법론은 Scrum이다. 추정, 조정의 경험적 관리 기법이다. Scrum , 즉 애자일의 원칙은 총 4가지가 있다.

개인과 상호작용 >> 프로세스,도구

동작하는 소프트웨어 >> 포괄적인문서

고객과의 협력 >> 계약협상

변화에 대응>> 계획수행

>> 기준 왼쪽에 있는게, 오른쪽에 있는 것보다 중요시 되어야 한다는 것이다.

(다만 그렇다고 왼쪽에 있는걸 무시하자는게 아니다!)  

애자일 방법의 적용으로는 일일 스탠드업, 제품 백로그, 짧은 출시주기, 회고, 스프린트 계획 세우기 등이 있다.

 

3. CI/CD&DevOps(28min)

https://www.youtube.com/watch?v=10TSLgh4gQM

Devops : 개발-운영 을 포괄하는 자동화된 프로세스. (별도가 아니라 통합!)

-      잦은 릴리즈, 잦은 배포, 테스트 자동화, 지속적 통합, 지속적 출시 파이프라인 마련

CI : (지속적통합) 여러 명으로 구성된 팀이 개발한 소프트웨어 지속적 통합, 품질 통제.

자동화된 빌드/테스트 -> 조기 검증..

CD : (지속적배포) 결과물을 TEST환경에 자동으로 배포

 

Developer -> Version Control -> AutoBuilds -> Jenkins -> Webserver

è Object strage --àAuto scailing

 

4. DockerBasicRe-visited(46min)

https://www.youtube.com/watch?v=o4_KESBNFhI

https://bit.ly/docker-sk

컨테이너

가상환경 = 컨테이너? 일까? 아니다!

가상머신은 하드웨어를 가상화한다. 즉 소프트웨어로 구현된 하드웨어라고 할 수 있다.

컨테이너는 하드웨어를 가상화하는게 아니라, os를 지원하는 기능을 사용하는 프로세스이다. 다시말해, 격리된 환경에서 프로세스를 실행하는 것이다. (운영체제라기보단 프로세스)

이미지

파일들의 집합. 프로세스를 실행하기 위한 환경.

컨테이너 가상화가 필요한 이유

컴퓨터 환경 보편적이지 않기 때문이다. 예를들어 MYSQL -> 설치방법/되는과정이 다 다르다.

특수한 환경이 SW에 필요하다면 상태관리의 어려움, 서버관리 어려움, VERSION관리의 어려움 등이 많다. 그러나 도커를 이용한다면 깨끗한 환경에서 APP 실행환경까지 최단경로로 만들어준다. 또한, 이미지를 만들면 무조건 작동한다는 신뢰성도 보장되어있다. 항상 같은 환경을 보장하니, 초강력한 포터블앱이라고도 볼 수 있다. 이미지로 만들면 공유가 가능하며, 여기서 되면 저기서도 된다는 재현성을 보장하기에 강력한 서버 툴로 자리잡았다.

l  Bash 혹은 sh 하면 만들어진 운영체제 속으로 들어감, exit 하면 나옴.

+ Recent posts