네트워크와 CS

21일차 개발일지 about CLOUD keword map #1

Sophie소피 2021. 11. 3. 00:40

Cloud 

클라우드란 인터넷을 통해 액세스할 수 있는 서버와

이러한 서버에서 작동하는 소프트웨어와 데이터베이스를 의미한다. 

클라우드 서버는 전 세계 데이터센터에 위치하고 있으며 

사용자와 기업은 클라우드 컴퓨팅을 사용하면 직접 물리적 서버를 관리하거나

자체 서버에서 소프트웨어 응용 프로그램을 실행하지 않아도 된다. 

클라우드 업체가 관리를 대신하기 때문에

자체 서버를 더 이상 업데이트하고 유지하지 않아도 된다. 

자체 내부 인프라를 사용할 수 없지만 클라우드를 통해

저렴한 가격으로 인프라 필요를 아웃소싱할 수 있는 큰 장점이있다. 

그렇다면 클라우드 컴퓨팅은 어떻게 작동할까? 

가상화라는 기술 때문에 가능하다 

가상화로 자체 하드웨어를 가진 실제 컴퓨터처럼 작동할 수 있는 시뮬레이션 된

디지털 전용 가상 컴퓨터를 만들 수가 있다. 

 

클라우드 배포의 유형 4가지 

  • 프라이빗 클라우드: 프라이빗 클라우드는 서버, 데이터 센터 또는 분산 네트워크를 모두 한 조직만이 사용할 수 있는 형태이다
  • 퍼블릭 클라우드: 퍼블릭 클라우드는 외부 공급자가 운영하는 클라우드 서비스로서 서버는 하나 또는 다수의 데이터 센터에 있을 수 있다 퍼블릭 클라우드는 프라이빗 클라우드와 달리 다수의 조직이 공유한다. 가상 머신을 이용하면, 여러 회사가 개별 서버도 공유할 수 있으며, 여러 회사가 동일한 물리적 서버 내의 서버 공간을 임대하기 때문에 이를 "다중 테넌트(임대인)"라고 부른다
  • 하이브리드 클라우드: 하이브리드 클라우드 배포는 퍼블릭 클라우드와 프라이빗 클라우드를 결합하며 온프레미스 레거시 서버도 포함할 수 있다. 조직은 서비스에 따라 프라이빗 클라우드와 퍼블릭 클라우드를 사용하거나 퍼블릭 클라우드를 프라이빗 클라우드의 백업으로 사용할 수 있다.
  • 멀티클라우드: 멀티클라우드는 다수의 퍼블릭 클라우드를 사용하는 클라우드 배포 유형이다. 다시 말해, 멀티클라우드 배포를 사용하는 조직은 여러 외부 업체로부터 가상 서버와 서비스를 대여한다. 앞서 사용한 비유를 이용하면 다수의 토지 소유주로부터 인접한 대지 여러 개를 빌리는 것과 같다고 볼 수 있다. 멀티클라우드 배포도 하이브리드 클라우드가 될 수 있으며 그 반대도 가능하다. 

 

 

 

쿠퍼네티스의 Deployment 

deployment가 등장하기 이전 레플리케이션 컨트롤러만 이용하는 경우

컨테이너에 들어가는 애플리케이션의 소스가 변경된경우

다시 레플리케이션 컨트롤러를 새로 만들고 rolling-update 수행하였다. 

 

그러나 deployment가 등장하며 pod의 컨테이너의

이미지만 변경해주면 편리하게 업데이트가 되며

히스토리 확인 및 롤백기능까지 사용할 수 있게 되었다.



 

IP 

ip주소라는 것이, 집주소와 같이 특정한 컴퓨터의 위치를 특정하는

 '일종의 주소' 와 같은 것이다. 

IP(Internet Protocol) 란 인터넷에 연결되어 있는

모든 장치들(컴퓨터, 서버 장비, 스마트폰 등)을

식별할 수 있도록 각각의 장비에게 부여되는 고유 주소이다.

 

네트워크상에서 통신을 하기위해서는 몇가지 통신규약(Protocol)을 따라야 하는데,

그러한 규약들중에는 "네트워킹을 하는 장비들에게 숫자 12개 고유한 주소를 주어서,

그 주소로 통신을 할 상대를 구분하도록 하자!" 라는 의미를 가진 규약이 존재한다. 

위의 규약에서 말하는 숫자12개의 고유한 주소가 바로 ip주소인 것이다. 

따라서 ip주소는 여러분들이 사용하는 통신기기에 하나씩 부여가 되고, 

그 덕분에 인터넷이 가능하게 되는 것이다. 

 

 

Domain 

ip는 사람이 이해하고 기억하기 어렵기 때문에 이를 위해서

각 ip에 이름을 부여할 수 있게 했는데, 이것을 도메인이라고 한다.

  • opentutorials.org -> 115.68.24.88
  • naver.com -> 220.95.233.172
  • daum.net -> 114.108.157.19

 

컴퓨터의 이름과 최상위 도메인으로 구성되어 있다. 예를들면 아래와 같다.

  • opentutorials.org
    • opentutorials : 컴퓨터의 이름
    • org : 최상위 도메인 - 비영리단체
  • daum.co.kr
    • daum : 컴퓨터의 이름
    • co : 국가 형태의 최상위 도메인을 의미
    • kr : 대한민국의 NIC에서 관리하는 도메인을 의미

 

 

CDN 

Content Delivery Network의 약자인 CDN은 지리적 제약 없이

 전 세계 사용자에게 빠르고 안전하게 콘텐츠를 전송할 수 있는 콘텐츠 전송 기술을 의미합니다.

CDN은 서버와 사용자 사이의 물리적인 거리를 줄여 콘텐츠 로딩에 

소요되는 시간을 최소화합니다. CDN은 각 지역에 캐시 서버(PoP, Points of presence)를 

분산 배치해, 근접한 사용자의 요청에 원본 서버가 아닌 캐시 서버가 콘텐츠를 전달한다.

예를 들어 미국에 있는 사용자가 한국에 호스팅 된 웹 사이트에 접근하는 경우

 미국에 위치한 PoP 서버에서 웹사이트 콘텐츠를 사용자에게 전송하는 방식이다