GitHub

https://github.com/Choidongjun0830

클라우드 27

Kubernetes Basic - 1

서버 역할을 하는게 Worker Node어느 Worker Node에 돌릴지는 Scheduler가 결정한다. Virtual Machine Instance를 Pod라고 한다. Master Node의 API Server와 짝이 되는게 Worker Node의 kubelet이다. Worker Node의 kubelet이 etcd를 보고 쓰여진대로 동작한다.k8s API는 declarative하다.이전에는 원하는 상태가 되도록 명령했다.하지만 이 방법은 Auto Recovery가 되지 않는다. 직접 알려줘야 한다.현재는 사용자가 원하는 상태를 정의하는 것으로 한다. (declarative) 사용자가 원하는 상태는 etcd에 있는 Pod라는 주문서에 적혀있는데, Worker Node에 있는 kubelet이 그것을 보고..

클라우드 2024.10.06

OpenStack 기초, VLAN과 VXLAN

OpenStack 기초OpenStack은 Cloud OS이다. VM을 관리해준다. 지금은 컨테이너를 서비스하는 용도로도, Bare Metal을 서비스하는 용도로도 가능하다. => IaaSBare Metal: 서버를 한꺼번에 쓰고 싶을 때. 하드웨어의 리소스를 공유하는 가상화 방식과는 다르게, 하드웨어의 모든 성능을 사용할 수 있는 방식이 베어 메탈 방식이다. 서버를 직접 구축하는 것보다 Bare Metal을 빌려 쓰는 것의 장점Capex(Capital): 살 때 들어가는 돈Opex(Operation): 운용하는데 들어가는 돈Capex 때문에 Bare Metal을 빌려 쓰는 것임. Opex는 사용료가 들어가서 더 비쌀 수도 있음.회사 안에 두는 것: On premise 빌려 쓰는 것은 Cloud?둘이 섞어..

클라우드 2024.10.05

Container 기초 개념, VM과 Container

Virtual MachineHypervisor가 각각의 App이 독립된 하드웨어에서 돌아가는 것처럼 만들어준다.물리적 하드웨어 자원을 가상화하여  여러 운영체제를 동시에 실행할 수 있도록 하는 소프트웨어이다.물리적 자원을 가상 머신에게 분배하고, 각각의 가상 머신이 독립적으로 실행되도록 한다.Guest OS를 설치하고 동작시키므로 무겁다.Hypervisor 위의 Guest OS는 Host OS와 달라도 된다. AWS에서는 VM을 Instance라고 한다. 코어를 나눠서 서비를 내준다. / 메모리를 잘라서 내준다. Infrastructure as Service => IaaSIaaS는 서버, 스토리지 및 네트워크 등과 같은 사용자가 필요한 컴퓨팅 자원을 가상화된 형태로 제공하는 서비스이다. 이 서비스 이용시..

클라우드 2024.10.01

이미지로 만든 Spring 프로젝트 쿠버네티스에 배포하기 (우분투 환경)

배포kubectl apply -f {yaml 파일명}Pod 로그 출력kubectl logs {Pod명}Pod명 확인kubectl get po포트 포워딩kubectl port-forward service/{서비스명} {포트}삭제kubectl delete (deployment/svc) {이름}  insurance-deployment.yamlapiVersion: apps/v1kind: Deploymentmetadata: labels: app: insurance name: insurancespec: replicas: 1 selector: matchLabels: app: insurance template: metadata: labels: app: insura..

클라우드 2024.08.12

Spring 프로젝트 이미지로 만들고 docker hub에 업로드하기 (Ubuntu 환경)

쿠버네티스 환경에서 어플리케이션을 배포하기 위해서는 프로젝트의 컨테이너 이미지를 생성해야한다.  wget 설치sudo apt install wget java 버전에 맞는 안정적인 gradle 설치https://docs.gradle.org/current/userguide/compatibility.html#java Compatibility MatrixThe sections below describe Gradle’s compatibility with several integrations. Versions not listed here may or may not work.docs.gradle.org 위 링크에서 java버전과 잘 호환되는 gradle 버전 확인자바 버전이 21이라 8.5 버전 설치wget http..

클라우드 2024.08.11

쿠버네티스 Pods

Pods는 아주 간단하고 기본적이다. Pods는 하나 혹은 둘 이상의 컨테이너로 이루어진 그룹이다. 그리고 공유 저장 네트워크와 컨테이너 실행법에 대한 설명를 갖고 있다. Pod는 쿠버네티스에서 가장 기본으로 배포되는 유닛이다. 여러 개의 마이크로 서비스가 있으면 개발자들은 각 마이크로서비스들을 도커 이미지 안에 포장시킨다. 그러고 나면 스스로 배포를 전개할 수 있다. 클라우드 시스템 안에서 노드를 작동시켜 접속한 다음 도커 명령어를 입력해 실행하는 것을 예시로 들 수 있다. 이런 식으로 도커 컨테이너를 해당 이미지와 함께 실행할 수 있다. 이런 시스템을 조직하기 위한 쿠버네티스 활용법 우선, 쿠버네티스는 컨테이너들의 시작과 종료를 총제적으로 관리한다고 할 수 있다. 아키텍처의 조직을 위해 쿠버네티스는 ..

클라우드 2024.03.11
728x90