Skip to content

Commit

Permalink
Merge pull request kubernetes#1290 from cncf/dev-ko
Browse files Browse the repository at this point in the history
Merge dev-ko into main (for Korean localization live version)
  • Loading branch information
seokho-son authored Sep 12, 2022
2 parents 2b012fb + f3bf0eb commit 6299a28
Show file tree
Hide file tree
Showing 19 changed files with 350 additions and 36 deletions.
17 changes: 17 additions & 0 deletions content/ko/_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: 용어 정의 템플릿
status: Completed
category: 개념
---

## 개념

기술 또는 개념에 대한 간략한 요약

## 다루는 문제

이 기술 또는 개념이 다루는 문제에 대한 설명

## 문제 해결 방식

이 기술 또는 개념이 문제를 어떻게 해결하는지에 대한 설명
27 changes: 27 additions & 0 deletions content/ko/auto-scaling.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
title: 오토스케일링 (Autoscaling)
status: Completed
category: 속성
tags: ["애플리케이션", "인프라스트럭처", "아키텍처"]
---

오토스케일링(Autoscaling)은 일반적으로 컴퓨팅 리소스 측면에서 시스템이 자동으로 [규모를 조절(scale)](/scalability/)하는 기능(ability)이다.
오토스케일링 시스템을 사용하면, 리소스가 필요할 때 자동으로 추가되고 변화를 거듭하는 사용자 요구에 맞게 규모를 조절할 수 있다.
오토스케일링 프로세스는 다양하며 메모리 또는 처리 시간과 같은 다른 메트릭을 기반으로 규모를 조절하도록 설정할 수 있다.
관리형 클라우드 서비스에는 일반적으로 오토스케일링 기능(functionality)이 관계되어 있는데
이는 대부분의 온프레미스(on-premises) 배포보다 더 많은 옵션과 구현을 제공하기 때문이다.

이전에는 인프라와 애플리케이션이 시스템의 최대 사용치(peak usage)를 고려하도록 설계하였다.
이 아키텍처에서는 많은 리소스가 충분히 활용되지 못하고 변화하는 소비자 수요에 탄력적이지 않음이 드러났다.
이러한 비탄력성은 비즈니스에 더욱 큰 비용을 투입하도록, 그리고 큰 비용 투입에도 불구하고 과도한 수요가 발생했을 때
운영 중단으로 인한 비즈니스 손실이 발생하도록 만들었다.

클라우드를 활용하고 애플리케이션 및 그 의존성(dependency)을 [가상화(virtualization)](/virtualization/)[컨테이너화(containerization)](/containerization/)함으로써, 조직은 사용자 요구에 따라 확장 가능한 애플리케이션을 만들어 낼 수 있다.
애플리케이션 수요를 모니터링하고 자동으로 규모를 조절하여 최적의 사용자 경험(user experience)을 제공할 수 있다.
매주 금요일 저녁 넷플릭스(Netflix) 시청자 수가 증가하는 상황을 생각해 보자.
오토스케일 아웃은 더 많은 리소스를 동적으로 추가하는 것을 의미한다. 예를 들어, 서버의 수를 늘려 더 많은 비디오 스트리밍을 허용하고 소비가 정상화되면 다시 축소한다.

## 관련 용어

* [수평적 스케일링(Horizontal Scaling)](/horizontal-scaling/)
* [수직적 스케일링(Vertical Scaling)](/vertical-scaling/)
16 changes: 13 additions & 3 deletions content/ko/cloud-computing.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,26 @@
title: 클라우드 컴퓨팅 (Cloud Computing)
status: Completed
category: 개념
tags: ["인프라스트럭처", "", ""]
---

## 개념

클라우드 컴퓨팅은 인터넷을 통해 CPU, 네트워크, 디스크와 같은 컴퓨팅 리소스를 온디맨드(on-demand)로 제공하는 모델이다. 클라우드 컴퓨팅은 사용자가 물리적으로 원격에 위치한 컴퓨팅 파워(power)에 접속 및 사용할 수 있게 기능을 제공한다. AWS, GCP, Azure, DigitalOcean 등 다양한 클라우드 제공자들은 제 3자에게 지리적으로 다양한 위치에 있는 컴퓨팅 리소스에 대한 액세스(access) 권한을 임대할 수 있도록 기능을 제공한다.
클라우드 컴퓨팅은 인터넷을 통해 CPU, 네트워크, 디스크와 같은 컴퓨팅 리소스를 온디맨드(on-demand)로 제공하는 모델이다.
클라우드 컴퓨팅은 사용자가 물리적으로 원격에 위치한 컴퓨팅 파워(power)에 접속 및 사용할 수 있게 기능을 제공한다.
AWS, GCP, Azure, DigitalOcean 등 다양한 클라우드 제공자들은 제 3자에게
지리적으로 다양한 위치에 있는 컴퓨팅 리소스에 대한 액세스(access) 권한을 임대할 수 있도록 기능을 제공한다.

## 다루는 문제

전통적으로 조직들은 컴퓨팅 파워에 대한 사용을 확장하려고 할 때 두 가지 주요 문제에 직면했다. 그들은 물리적 서버와 네트워크를 호스팅 하기 위한 시설에 대한 구입, 지원, 설계, 비용 지불 단계를 거치거나 해당 시설들을 확장 및 관리하게 된다. 반면, 클라우드 컴퓨팅은 조직이 컴퓨팅 요구 사항의 일부를 다른 조직에 아웃소싱(outsource)할 수 있게 한다.
전통적으로 조직들은 컴퓨팅 파워에 대한 사용을 확장하려고 할 때 두 가지 주요 문제에 직면했다.
그들은 물리적 서버와 네트워크를 호스팅 하기 위한 시설에 대한 구입, 지원, 설계, 비용 지불 단계를 거치거나 해당 시설들을 확장 및 관리하게 된다.
반면, 클라우드 컴퓨팅은 조직이 컴퓨팅 요구 사항의 일부를 다른 조직에 아웃소싱(outsource)할 수 있게 한다.

## 문제 해결 방식

클라우드 제공자는 조직들이 컴퓨팅 리소스를 온디맨드로 임대하고 사용한 만큼 비용을 지불할 수 있도록 한다. 이를 통해 두 가지 주요 혁신이 가능하다. 조직들은 신규 물리 인프라(infrastructure)에 대한 CAPEX를 계획 및 소비하는 데 시간을 낭비하지 않고 원하는 것을 시도할 수 있으며, 필요에 따라 온디맨드로 [확장(scale)](/scalability/)할 수 있다. 클라우드 컴퓨팅을 통해서 조직들은 인프라를 필요한 만큼만 도입할 수 있다.
클라우드 제공자는 조직들이 컴퓨팅 리소스를 온디맨드로 임대하고 사용한 만큼 비용을 지불할 수 있도록 한다.
이를 통해 두 가지 주요 혁신이 가능하다.
조직들은 신규 물리 인프라(infrastructure)에 대한 CAPEX를 계획 및 소비하는 데 시간을 낭비하지 않고 원하는 것을 시도할 수 있으며,
필요에 따라 온디맨드로 [확장(scale)](/scalability/)할 수 있다.
클라우드 컴퓨팅을 통해서 조직들은 인프라를 필요한 만큼만 도입할 수 있다.
20 changes: 17 additions & 3 deletions content/ko/cloud-native-apps.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,30 @@
title: 클라우드 네이티브 앱 (Cloud Native Apps)
status: Completed
category: 개념
tags: ["애플리케이션", "", ""]
---

## 개념

클라우드 네이티브 애플리케이션은 [클라우드 컴퓨팅](/ko/cloud-computing/)의 혁신을 활용하도록 특화 설계되었다. 이러한 애플리케이션은 각각의 클라우드 아키텍처와 쉽게 통합되며, 클라우드의 리소스와 [확장](/scalability/) 기능을 활용한다. 또한 클라우드 네이티브 애플리케이션은 클라우드 컴퓨팅 기반 인프라의 혁신을 활용하는 애플리케이션을 의미한다. 오늘날 클라우드 네이티브 애플리케이션은 클라우드 공급자의 데이터센터에서 실행되는 앱과 온프레미스(on-premises) 클라우드 네이티브 플랫폼에서 실행되는 앱을 포함한다.
클라우드 네이티브 애플리케이션은 [클라우드 컴퓨팅](/ko/cloud-computing/)의 혁신을 활용하도록 특화 설계되었다.
이러한 애플리케이션은 각각의 클라우드 아키텍처와 쉽게 통합되며, 클라우드의 리소스와 [확장](/scalability/) 기능을 활용한다.
또한 클라우드 네이티브 애플리케이션은 클라우드 컴퓨팅 기반 인프라의 혁신을 활용하는 애플리케이션을 의미한다.
오늘날 클라우드 네이티브 애플리케이션은 클라우드 공급자의 데이터센터에서 실행되는 앱과
온프레미스(on-premises) 클라우드 네이티브 플랫폼에서 실행되는 앱을 포함한다.

## 다루는 문제

전통적으로, 온프레미스 환경은 상당한 맞춤형 방식으로 컴퓨팅 리소스를 제공했다. 각 데이터센터는 애플리케이션이 특정 환경에 [강결합(tightly coupled)](/tightly-coupled-architectures/)된 형태의 서비스를 실행하고 있었으며, [가상 머신](/ko/virtual-machine/) 및 서비스와 같은 인프라에 대한 수동 프로비저닝에 크게 의존하는 경우가 많았다. 이는 결과적으로 개발자와 해당 애플리케이션이 특정 데이터센터를 사용하도록 한정시켰다. 클라우드용으로 설계되지 않은 애플리케이션은 클라우드 환경의 탄력성과 확장성 기능을 활용할 수 없었다. 예를 들어, 정상적으로 실행하기 위해 수동 개입이 필요한 앱은 자동으로 확장할 수 없으며, 오류 발생 시 자동으로 다시 실행할 수도 없다.
전통적으로, 온프레미스 환경은 상당한 맞춤형 방식으로 컴퓨팅 리소스를 제공했다.
각 데이터센터는 애플리케이션이 특정 환경에 [강결합(tightly coupled)](/tightly-coupled-architectures/)된 형태의 서비스를 실행하고 있었으며,
[가상 머신](/ko/virtual-machine/) 및 서비스와 같은 인프라에 대한 수동 프로비저닝에 크게 의존하는 경우가 많았다.
이는 결과적으로 개발자와 해당 애플리케이션이 특정 데이터센터를 사용하도록 한정시켰다.
클라우드용으로 설계되지 않은 애플리케이션은 클라우드 환경의 탄력성과 확장성 기능을 활용할 수 없었다.
예를 들어, 정상적으로 실행하기 위해 수동 개입이 필요한 앱은 자동으로 확장할 수 없으며, 오류 발생 시 자동으로 다시 실행할 수도 없다.

## 문제 해결 방식

클라우드 네이티브 애플리케이션에 대한 "모든 경우에 적용되는" 왕도는 없지만, 몇 가지 공통점은 존재한다. 클라우드 네이티브 앱은 탄력적이고, 관리하기 쉬우며, 함께 제공되는 클라우드 서비스 제품군의 지원을 받는다. 다양한 클라우드 서비스는 높은 수준의 [관찰 가능성(observability)](/observability/)을 제공하므로, 문제가 커지기 전에 사용자가 문제를 감지하고 해결할 수 있도록 지원한다. 또한 탄탄한 자동화와 결합되어, 엔지니어가 최소한의 노력으로 영향이 큰 변경을 예측 가능한 형태로 자주 수행할 수 있도록 해 준다.
클라우드 네이티브 애플리케이션에 대한 "모든 경우에 적용되는" 왕도는 없지만, 몇 가지 공통점은 존재한다.
클라우드 네이티브 앱은 탄력적이고, 관리하기 쉬우며, 함께 제공되는 클라우드 서비스 제품군의 지원을 받는다.
다양한 클라우드 서비스는 높은 수준의 [관찰 가능성(observability)](/observability/)을 제공하므로,
문제가 커지기 전에 사용자가 문제를 감지하고 해결할 수 있도록 지원한다.
또한 탄탄한 자동화와 결합되어, 엔지니어가 최소한의 노력으로 영향이 큰 변경을 예측 가능한 형태로 자주 수행할 수 있도록 해 준다.
19 changes: 16 additions & 3 deletions content/ko/cloud-native-tech.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,29 @@
title: 클라우드 네이티브 기술 (Cloud Native Technology)
status: Completed
category: 개념
tags: ["핵심 개념", "", ""]
---

## 개념

클라우드 네이티브 스택(the cloud native stack)이라고도 하는 클라우드 네이티브 기술은 [클라우드 네이티브 애플리케이션](/cloud-native-apps/)을 구축하는 데 사용되는 기술이다. 조직이 퍼블릭, 프라이빗 및 하이브리드 클라우드와 같은 현대적이고 역동적인 환경에서 확장 가능한 애플리케이션을 구축 및 실행할 수 있도록 함으로써, '클라우드의 약속(promise of the cloud)'을 지키고 클라우드 컴퓨팅 이점을 최대한 활용하게 한다. 이 기술은 클라우드 컴퓨팅 및 컨테이너, 서비스 메시(mesh), 마이크로서비스(microservices), 이뮤터블 인프라(immutable infrastructure)의 특징 및 기능(capabilities)을 활용하도록 처음부터 설계되었다.
클라우드 네이티브 스택(the cloud native stack)이라고도 하는 클라우드 네이티브 기술은
[클라우드 네이티브 애플리케이션](/ko/cloud-native-apps/)을 구축하는 데 사용되는 기술이다.
조직이 퍼블릭, 프라이빗 및 하이브리드 클라우드와 같은 현대적이고 역동적인 환경에서 확장 가능한 애플리케이션을 구축 및 실행할 수 있도록 함으로써,
'클라우드의 약속(promise of the cloud)'을 지키고 클라우드 컴퓨팅 이점을 최대한 활용하게 한다.
이 기술은 클라우드 컴퓨팅 및 컨테이너, 서비스 메시(mesh), 마이크로서비스(microservices),
이뮤터블 인프라(immutable infrastructure)의 특징 및 기능(capabilities)을 활용하도록 처음부터 설계되었다.

## 다루는 문제

클라우드 네이티브 스택에는 다양한 기술 범주를 포함하며 다양한 문제를 해결한다. [CNCF 클라우드 네이티브 랜드스케이프(Cloud Native Landscape)](https://landscape.cncf.io/)를 보면 얼마나 다양한 영역을 다루는지 알 수 있다. 그러나 전체적으로 보면, 기존 IT 운영 모델의 단점을 해결한다는 한 가지 주요 문제 해결을 목표로 한다. 이러한 도전적 문제((challenges)에는 확장 가능하고(creating scalable), 내결함성(fault-tolerant)이 있으며 자가 복구 가능한(self-healing) 애플리케이션을 생성하는 문제들뿐만 아니라, 상호 비효율적인 자원 활용 문제도 포함한다.
클라우드 네이티브 스택에는 다양한 기술 범주를 포함하며 다양한 문제를 해결한다.
[CNCF 클라우드 네이티브 랜드스케이프(Cloud Native Landscape)](https://landscape.cncf.io/)를 보면 얼마나 다양한 영역을 다루는지 알 수 있다.
그러나 전체적으로 보면, 기존 IT 운영 모델의 단점을 해결한다는 한 가지 주요 문제 해결을 목표로 한다.
이러한 도전적 문제(challenges)에는 확장 가능하고(creating scalable), 내결함성(fault-tolerant)이 있으며
자가 복구 가능한(self-healing) 애플리케이션을 생성하는 문제들뿐만 아니라, 상호 비효율적인 자원 활용 문제도 포함한다.

## 문제 해결 방식

각 기술들은 각자 매우 특정한 문제를 해결하는 반면, 그룹 형태의 클라우드 네이티브 기술은 탄력적(resilient)이고 관리 가능(manageable)하며 관찰 가능(observable)한 상호 느슨하게 결합된 시스템(loosely coupled systems)을 제공한다. 이 기술은 강건한(robust) 자동화와 결합하여, 엔지니어가 최소한의 노력으로 빈번하고 영향이 큰 변경을 예측 가능한 방식으로 수행할 수 있도록 한다. 클라우드 네이티브 시스템의 바람직한 특성은 클라우드 네이티브 스택을 통해서 더 쉽게 달성할 수 있다.
각 기술들은 각자 매우 특정한 문제를 해결하는 반면, 그룹 형태의 클라우드 네이티브 기술은 탄력적(resilient)이고
관리 가능(manageable)하며 관찰 가능(observable)한 상호 느슨하게 결합된 시스템(loosely coupled systems)을 제공한다.
이 기술은 강건한(robust) 자동화와 결합하여, 엔지니어가 최소한의 노력으로 빈번하고 영향이 큰 변경을 예측 가능한 방식으로 수행할 수 있도록 한다.
클라우드 네이티브 시스템의 바람직한 특성은 클라우드 네이티브 스택을 통해서 더 쉽게 달성할 수 있다.
30 changes: 30 additions & 0 deletions content/ko/cluster.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
title: 클러스터 (Cluster)
status: Completed
category: 개념
tags: ["인프라스트럭처", "구조", ""]
---

## 개념

클러스터(cluster)는 공통의 목표를 위해 작동하는 컴퓨터 또는 애플리케이션들의 그룹이다.
클라우드 네이티브 컴퓨팅의 관점에서, 이 용어는 쿠버네티스에 가장 일반적으로 적용된다.
쿠버네티스 클러스터는 컨테이너를 통해 실행되는 서비스(또는 워크로드) 집합이며, 이는 보통 서로 다른 머신(machines)에서 구동된다.
네트워크를 통해 연결된 모든 [컨테이너화 (containerized)](/containerization/)된 서비스의 모음(collection)은 클러스터를 나타낸다.

## 다루는 문제

단일 컴퓨터에서 실행되는 소프트웨어는 단일 장애점(single point of failure)를 가지며
(컴퓨터가 고장(crashes) 나거나 또는 누군가 뜻하지 않게 전원 케이블을 뽑은 경우),
이런 경우 일부 중요 비지니스(business-critical) 시스템이 오프라인 상태가 될 수 있다.
따라서 현대적인 소프트웨어는 일반적으로 [분산 애플리케이션](/distributed-apps/)으로 구축되고, 하나의 클러스터로 그룹을 이룬다.

## 문제 해결 방식

클러스터링 된 분산 애플리케이션은 여러 머신에 걸쳐 실행되므로 단일 장애점을 제거할 수 있다.
그렇지만, 분산 시스템을 구축하는 것은 상당히 어렵다.
사실, 그 자체가 하나의 온전한 자격을 갖춘 컴퓨터 과학 분야이다.

글로벌 시스템의 필요성과 수년간의 시행착오를 통해 새로운 종류의 기술 스택인
[클라우드 네이티브 기술](/cloud-native-tech/)이 개발되었다.
이러한 새로운 기술들은 분산 시스템의 운영과 생성을 더욱 쉽게 만드는 구성 요소(building blocks)이다.
Loading

0 comments on commit 6299a28

Please sign in to comment.