✔️ 실습에 앞서
실습 목표
- 네트워크 로드 밸런서와 HTTP 로드 밸런서의 차이점 알기
- Engine Virtual Machine에서 실행 중인 애플리케이션에 대해 네트워크 로드 밸런서를 설정하는 방법 습득
Google Cloud에는 로드밸런싱을 수행하는 몇가지 방법이 있다.
그 중 Network 로드 밸런서와 HTTP(s) 로드 밸런서에 대해 배워본다.
실습 내용
- 네트워크 로드 밸런서를 설정한다.
- HTTP 로드 밸런서를 설정한다.
- 네트워크 로드 밸런서와 HTTP 로드 밸런서의 차이점 배우기
✔️ Task 1 : 모든 리소스에 대한 기본 지역 및 영역 설정하기
1. Cloud Shell에서 기본 영역을 설정한다.
gcloud config set compute/zone us-central1-a
2. 기본 영역을 설정한다.
gcloud config set compute/region us-central1
✔️ Task 2 : 여러개의 웹 서버 인스턴스 만들기
이번 로드 밸런싱 예제의 경우 3개의 Compute Engine VM 인스턴스를 생성하고 Apache를 설치한 다음 HTTP 트래픽이 인스턴스에 도달할 수 있도록 허용하는 방화벽 규칙을 추가한다.
1. 기본 영역에 새 VM 세개를 생성하고 모두 동일한 태그를 부여한다.
다음 코드는 존을 us-central1-a로 설정한다. 태그 필드를 설정하면 방화벽 규칙, 인스턴스들을 한 번에 참조할 수 있다.
또한 이러한 명령어는 각 인스턴스에 Apache를 설치하고 각 인스턴스에 고유한 홈 페이지를 제공한다.
gcloud compute instances create www1 \
--image-family debian-9 \
--image-project debian-cloud \
--zone us-central1-a \
--tags network-lb-tag \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo '<!doctype html><html><body><h1>www1</h1></body></html>' | tee /var/www/html/index.html"
gcloud compute instances create www2 \
--image-family debian-9 \
--image-project debian-cloud \
--zone us-central1-a \
--tags network-lb-tag \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo '<!doctype html><html><body><h1>www2</h1></body></html>' | tee /var/www/html/index.html"
gcloud compute instances create www3 \
--image-family debian-9 \
--image-project debian-cloud \
--zone us-central1-a \
--tags network-lb-tag \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo '<!doctype html><html><body><h1>www3</h1></body></html>' | tee /var/www/html/index.html"
2. VM 인스턴스에 대한 외부 트래픽을 허용하는 방화벽 규칙을 생성한다.
gcloud compute firewall-rules create www-firewall-network-lb \
--target-tags network-lb-tag --allow tcp:80
이제 인스턴스의 외부 IP 주소를 가져와 인스턴스가 실행 중인지 확인해야 한다.
3. 다음을 실행해 인스턴스를 나열한다. EXTERNAL_IP를 확인할 수 있다.
gcloud compute instances list
4. 각 인스턴스가 [IP_ADDRESS]를 각 VM의 IP 주소로 대체해 curl을 이용해 실행되고 있는지 확인한다.
curl http://[IP_ADDRESS]
✔️ Task 3 : 로드 밸런싱 서비스 구성하기
로드 밸런싱 서비스를 구성할 때 가상 시스템 인스턴스는 사용자가 구성한 정적 외부 IP 주소 앞으로 패킷을 수신한다. Compute Engine 이미지로 작성된 인스턴스는 이 IP 주소를 처리하도록 자동으로 구성된다.
1. 로드 밸런서에 대한 외부 IP 주소를 고정한다.
gcloud compute addresses create network-lb-ip-1 \
--region us-central1
2. 레거시 HTTP 헬스체크 리소스를 추가한다.
gcloud compute http-health-checks create basic-check
3. 인스턴스와 동일한 영역에 대상 풀을 추가한다.
다음을 실행하여 대상 풀을 생성하고 서비스가 작동하는 데 필요한 상태 점검을 사용한다.
gcloud compute target-pools create www-pool \
--region us-central1 --http-health-check basic-check
4. pool에 인스턴스를 추가한다.
gcloud compute target-pools add-instances www-pool \
--instances www1,www2,www3
5. forwarding 규칙을 추가한다.
gcloud compute forwarding-rules create www-rule \
--region us-central1 \
--ports 80 \
--address network-lb-ip-1 \
--target-pool www-pool
✔️ Task 4 : 인스턴스들로 트래픽 보내기
이제 로드 밸런싱 서비스가 설정되었으므로 전송 규칙에 대한 트래픽 전송을 시작하고 트래픽이 다른 인스턴스로 분산되는 것을 볼 수 있다.
로드 밸런서에서 사용되는 www 규칙 전달 규칙의 외부 IP 주소를 보려면 다음 명령을 입력한다.
gcloud compute forwarding-module description www-rule --region us-central1
curl 명령어를 사용하여 외부 IP 주소에 액세스하고 IP_ADDRESS를 이전 명령어의 외부 IP 주소로 바꾼다.
while true; do curl -m1 IP_ADDRESS; done
curl 명령의 응답은 세 가지 인스턴스 간에 랜덤하게 번갈아 이루어진다. 처음에 응답이 실패했을 경우 설정이 완전히 로드되고 인스턴스가 정상으로 표시될 때까지 약 30초간 기다렸다가 다시 시도한다.
명령 실행을 중지하려면 Ctrl + c를 사용한다.
✔️ Task 5 : HTTP 로드 밸런서 생성하기
HTTP(S) 로드밸런싱은 Google Frontend(GFE)에 구현되어 있다.
GFE는 전 세계에 분산되며 구글의 글로벌 네트워크와 컨트롤 플레인을 사용하여 함께 운영된다.
URL 규칙을 설정하여 일부 URL을 하나의 인스턴스 세트로 라우팅하고 다른 URL을 다른 인스턴스로 라우팅할 수 있다. 사용자에게 가장 가까운 인스턴스 그룹에 충분한 용량이 있고 요청에 적합한 경우 요청은 항상 해당 그룹에 라우팅된다. 가장 가까운 그룹에 충분한 용량이 없는 경우 용량이 있는 가장 가까운 그룹으로 요청이 전송된다.
컴퓨팅 엔진 백엔드를 사용하여 로드 밸런서를 설정하려면 VM이 인스턴스 그룹에 속해 있어야 한다.
관리 인스턴스 그룹은 외부 HTTP 로드 밸런서의 백엔드 서버를 실행하는 VM을 제공한다. 이 랩에서는 백엔드는 자신의 호스트 이름을 제공한다.
1. 먼저 로드 밸런서 템플릿을 생성한다.
gcloud compute instance-templates create lb-backend-template \
--region=us-central1 \
--network=default \
--subnet=default \
--tags=allow-health-check \
--image-family=debian-9 \
--image-project=debian-cloud \
--metadata=startup-script='#! /bin/bash
apt-get update
apt-get install apache2 -y
a2ensite default-ssl
a2enmod ssl
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/name)"
echo "Page served from: $vm_hostname" | \
tee /var/www/html/index.html
systemctl restart apache2'
2. 템플릿을 기반으로 관리 인스턴스 그룹을 만든다.
gcloud compute instance-groups managed create lb-group \
--size=lb-central-size=2 --zone=us-central1-a
3. fw-allow-health-check 방화벽 규칙을 만든다.
이것은 Google Cloud 상태 점검 시스템(130.211.0.0/22 및 35.191.0.0/16)으로부터의 트래픽을 허용하는 입력 규칙이다.
이 실습에서는 타겟태그 allow-health-check를 사용하여 VM을 식별한다.
gcloud compute firewall-rules create fw-allow-health-check \
--network=default \
--action=allow \
--direction=ingress \
--source-ranges=130.211.0.0/22,35.191.0.0/16 \
--target-tags=allow-health-check \
--rules=tcp:80
4. 인스턴스가 실행 중이기 때문에 고객이 로드 밸런서에 연결하는 데 사용할 글로벌 정적 외부 IP 주소를 설정한다.
gcloud compute addresses create lb-ipv4-1 \
--ip-version=IPV4 \
--global
예약된 IPv4 주소를 적어 둔다.
gcloud compute addresses describe lb-ipv4-1 \
--format="get(address)" \
--global
5. 로드 밸런서에 대한 상태 점검을 생성한다.
gcloud compute health-checks create http http-basic-check \
--port 80
6. 백엔드 서비스를 만든다.
gcloud compute backend-services create web-backend-service \
--protocol=HTTP \
--port-name=http \
--health-checks=http-basic-check \
--global
7. 인스턴스 그룹을 백엔드로 백엔드 서비스에 추가한다.
gcloud compute backend-services add-backend web-backend-service \
--instance-group=lb-backend-group \
--instance-group-zone=us-central1-a \
--global
8. 기본 백엔드 서비스로 incoming requests를 라우팅하기 위한 URL 맵을 만든다.
gcloud compute url-maps create web-map-http \
--default-service web-backend-service
9. URL 맵에 요구를 라우팅하기 위한 타겟 HTTP 프록시를 만든다.
gcloud compute target-http-proxies create http-lb-proxy \
--url-map web-map-http
10. 글로벌 전송 규칙을 생성하여 수신 요구를 프록시에 라우팅한다.
gcloud compute forwarding-rules create http-content-rule \
--address=lb-ipv4-1\
--global \
--target-http-proxy=http-lb-proxy \
--ports=80
✔️ Task 6 : 인스턴스로 전송된 트래픽 테스트하기
1. Cloud Console의 [Navigation]메뉴에서 [Network services]> [Load balancing]으로 이동한다.
2. 방금 작성한 로드 밸런서(web-map-http)를 클릭한다.
3. 백엔드 섹션에서 백엔드 이름을 클릭하여 VM이 정상인지 확인한다. 정상 상태가 아닌 경우 잠시 기다렸다가 페이지를 새로고침 해보자
4. VM이 정상인 경우 웹 브라우저를 사용하여 http://로 이동하여 로드 밸런서를 테스트한다.
http://IP_ADDRESS/에서 IP_ADDRESS를 로드 밸런서의 IP 주소로 바꾼다.
이 작업은 3~5분 정도 소요될 수 있다. 접속하지 않으면 잠시 기다렸다가 브라우저를 새로고침한다.
브라우저는 페이지를 서비스한 인스턴스의 이름과 존(예를 들어 페이지 서비스 원본: lb-backend-group-xxxxx)을 나타내는 콘텐츠를 포함하는 페이지를 렌더링해야 한다.
Welcome to Cloud Shell! Type "help" to get started.
Your Cloud Platform project in this session is set to qwiklabs-gcp-03-c474b56994e1.
Use “gcloud config set project [PROJECT_ID]” to change to a different project.
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud config set compute/zone us-central1-a
Updated property [compute/zone].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud config set compute/region us-central1
Updated property [compute/region].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute instances create www1 \
--image-family debian-9 \
--image-project debian-cloud \
--zone us-central1-a \
--tags network-lb-tag \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo '<!doctype html><html><body><h1>www1</h1></body></html>' | tee /var/www/html/index.html"
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/zones/us-central1-a/instances/www1].
NAME: www1
ZONE: us-central1-a
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
INTERNAL_IP: 10.128.0.2
EXTERNAL_IP: 35.222.185.15
STATUS: RUNNING
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03 c474b56994e1)$ gcloud compute instances create www2 \
--image-family debian-9 \
--image-project debian-cloud \
--zone us-central1-a \
--tags network-lb-tag \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo '<!doctype html><html><body><h1>www2</h1></body></html>' | tee /var/www/html/index.html"
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/zones/us-central1-a/instances/www2].
NAME: www2
ZONE: us-central1-a
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
INTERNAL_IP: 10.128.0.3
EXTERNAL_IP: 35.238.252.19
STATUS: RUNNING
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute instances create www3 \
--image-family debian-9 \
--image-project debian-cloud \
--zone us-central1-a \
--tags network-lb-tag \
--metadata startup-script="#! /bin/bash
sudo apt-get update
sudo apt-get install apache2 -y
sudo service apache2 restart
echo '<!doctype html><html><body><h1>www3</h1></body></html>' | tee /var/www/html/index.html"
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/zones/us-central1-a/instances/www3].
NAME: www3
ZONE: us-central1-a
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
INTERNAL_IP: 10.128.0.4
EXTERNAL_IP: 34.67.149.248
STATUS: RUNNING
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute firewall-rules create www-firewall-network-lb \
--target-tags network-lb-tag --allow tcp:80
Creating firewall...working..Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/firewalls/www-firewall-network-lb].
Creating firewall...done.
NAME: www-firewall-network-lb
NETWORK: default
DIRECTION: INGRESS
PRIORITY: 1000
ALLOW: tcp:80
DENY:
DISABLED: False
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute instances list
NAME: www1
ZONE: us-central1-a
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
INTERNAL_IP: 10.128.0.2
EXTERNAL_IP: 35.222.185.15
STATUS: RUNNING
NAME: www2
ZONE: us-central1-a
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
INTERNAL_IP: 10.128.0.3
EXTERNAL_IP: 35.238.252.19
STATUS: RUNNING
NAME: www3
ZONE: us-central1-a
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
INTERNAL_IP: 10.128.0.4
EXTERNAL_IP: 34.67.149.248
STATUS: RUNNING
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ curl http://34.67.149.248
<!doctype html><html><body><h1>www3</h1></body></html>
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ curl http://34.67.149.248
<!doctype html><html><body><h1>www3</h1></body></html>
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute addresses create network-lb-ip-1 \
--region us-central1
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1/addresses/network-lb-ip-1].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute http-health-checks create basic-check
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/httpHealthChecks/basic-check].
NAME: basic-check
HOST:
PORT: 80
REQUEST_PATH: /
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute target-pools create www-pool \
--region us-central1 --http-health-check basic-check
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1/targetPools/www-pool].
NAME: www-pool
REGION: us-central1
SESSION_AFFINITY: NONE
BACKUP:
HEALTH_CHECKS: basic-check
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute target-pools add-instances www-pool \
--instances www1,www2,www3
Updated [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1/targetPools/www-pool].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute forwarding-rules create www-rule \
--region us-central1 \
--ports 80 \
--address network-lb-ip-1 \
--target-pool www-pool
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1/forwardingRules/www-rule].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute forwarding-rules describe www-rule --region us-central1
IPAddress: 34.133.95.30
IPProtocol: TCP
creationTimestamp: '2022-03-23T01:53:06.824-07:00'
description: ''
fingerprint: QChrOzNUk2g=
id: '6388911525529608477'
kind: compute#forwardingRule
labelFingerprint: 42WmSpB8rSM=
loadBalancingScheme: EXTERNAL
name: www-rule
networkTier: PREMIUM
portRange: 80-80
region: https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1/forwardingRules/www-rule
target: https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/regions/us-central1/targetPools/www-pool
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ while true; do curl -m1 34.133.95.30; done
<!doctype html><html><body><h1>www2</h1></body></html>
<!doctype html><html><body><h1>www2</h1></body></html>
<!doctype html><html><body><h1>www2</h1></body></html>
<!doctype html><html><body><h1>www1</h1></body></html>
<!doctype html><html><body><h1>www2</h1></body></html>
^C
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute instance-templates create lb-backend-template \
--region=us-central1 \
--network=default \
--subnet=default \
--tags=allow-health-check \
--image-family=debian-9 \
--image-project=debian-cloud \
--metadata=startup-script='#! /bin/bash
apt-get update
apt-get install apache2 -y
a2ensite default-ssl
a2enmod ssl
vm_hostname="$(curl -H "Metadata-Flavor:Google" \
http://169.254.169.254/computeMetadata/v1/instance/name)"
echo "Page served from: $vm_hostname" | \
tee /var/www/html/index.html
systemctl restart apache2'
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/instanceTemplates/lb-backend-template].
NAME: lb-backend-template
MACHINE_TYPE: n1-standard-1
PREEMPTIBLE:
CREATION_TIMESTAMP: 2022-03-23T01:59:41.976-07:00
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute instance-groups managed create lb-backend-group \
--template=lb-backend-template --size=2 --zone=us-central1-a
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/zones/us-central1-a/instanceGroupManagers/lb-backend-group].
NAME: lb-backend-group
LOCATION: us-central1-a
SCOPE: zone
BASE_INSTANCE_NAME: lb-backend-group
SIZE: 0
TARGET_SIZE: 2
INSTANCE_TEMPLATE: lb-backend-template
AUTOSCALED: no
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute firewall-rules create fw-allow-health-check \
--network=default \
--action=allow \
--direction=ingress \
--source-ranges=130.211.0.0/22,35.191.0.0/16 \
--target-tags=allow-health-check \
--rules=tcp:80
Creating firewall...working..Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/firewalls/fw-allow-health-check].
Creating firewall...done.
NAME: fw-allow-health-check
NETWORK: default
DIRECTION: INGRESS
PRIORITY: 1000
ALLOW: tcp:80
DENY:
DISABLED: False
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute addresses create lb-ipv4-1 \
--ip-version=IPV4 \
--global
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/addresses/lb-ipv4-1].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute addresses describe lb-ipv4-1 \
--format="get(address)" \
--global
34.110.213.209
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute health-checks create http http-basic-check \
--port 80
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/healthChecks/http-basic-check].
NAME: http-basic-check
PROTOCOL: HTTP
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute backend-services create web-backend-service \
--protocol=HTTP \
--port-name=http \
--health-checks=http-basic-check \
--global
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/backendServices/web-backend-service].
NAME: web-backend-service
BACKENDS:
PROTOCOL: HTTP
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute backend-services add-backend web-backend-service \
--instance-group=lb-backend-group \
--instance-group-zone=us-central1-a \
--global
Updated [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/backendServices/web-backend-service].
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute url-maps create web-map-http \
--default-service web-backend-service
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/urlMaps/web-map-http].
NAME: web-map-http
DEFAULT_SERVICE: backendServices/web-backend-service
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute target-http-proxies create http-lb-proxy \
--url-map web-map-http
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/targetHttpProxies/http-lb-proxy].
NAME: http-lb-proxy
URL_MAP: web-map-http
student_03_58ac5301637e@cloudshell:~ (qwiklabs-gcp-03-c474b56994e1)$ gcloud compute forwarding-rules create http-content-rule \
--address=lb-ipv4-1\
--global \
--target-http-proxy=http-lb-proxy \
--ports=80
Created [https://www.googleapis.com/compute/v1/projects/qwiklabs-gcp-03-c474b56994e1/global/forwardingRules/http-content-rule].
'Study > Study Jam' 카테고리의 다른 글
[Study Jam] Introduce to Docker (도커 입문) - 2. Debug, Publish (0) | 2022.03.24 |
---|---|
[Study Jam] Introduce to Docker (도커 입문) - 1. Build, Run (0) | 2022.03.24 |
[Study Jam] Orchestrating the Cloud with Kubernetes - 2 (0) | 2022.03.24 |
[Study Jam] Orchestrating the Cloud with Kubernetes - 1 (0) | 2022.03.23 |
[Study Jam] GKE(Google Kubernetes Engine)로 어플리케이션 배포해보기 (0) | 2022.03.23 |
영차영차 성장 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!