분류 전체보기 53

[k8s] kubectl 명령어를 알아보아용~

클러스터 정보kubectl cluster-info​  현재 컨텍스트 확인kubectl config current-context 노드정보kubectl get nodes 파드목록kubectl get podskubectl get pods -n [namespace] 파드상세정보kubectl describe pod [pod-name]kubectl describe pod [pod-name] -n [namespace] 파드 로그 보기kubectl logs [pod-name]kubectl logs [pod-name] - n [namespace]kubectl logs -f [pod-name] 파드생성 및 삭제kubectl run [pod-name] --image=[image]kubectl delete pod [pod-n..

[k8s] 마스터 노드 구성을 알아보아욤

마스터 노드: 컨테이너를 실행하지 않으며 워커노드에서 실행되는 컨테이너를 관리하는 역할 1. API 서버모든 요청을 처리하는 역할쿠버네티스의 모든 기능들은 REST API 로 제공하고 그에 대한 명령을 처리k8s 내부 모든 컴포넌트들이 서로를 호출하기 위해 사용하는 컴포넌트 2. controller manager다양한 컨트롤러를 관리ReplicaSet, Deployment 등 Controller를 관리하고 적절한 노드에 할당하는 역할각 컨트롤러에게 pod의 복제/배포 명령 수행 3. scheduler상황에 맞게 적절한 워크노드를 선택pod, 서비스 등 각 리소스들을 적절한 노드에 할당하는 역할pod를 어떤 노드에서 실행할지 결정node에 배치된 pod는 각 노드늬 kubelet에 의해 컨테이너로 생성 4..

[k8s] k3s 를 설치해보자 (linux)

쿠버네티스 연습을 위해 k3s를 가상서버에 설치해보자 linux 환경인 rocky 이미지로 만든 환경이라 linux 환경 설치 레퍼선를 참고했다. https://docs.k3s.io/kr/quick-start 빠른 시작 가이드 | K3s이 가이드는 기본 옵션으로 클러스터를 빠르게 시작하는 데 도움이 됩니다. 설치 섹션에서는 K3s를 설정하는 방법에 대해 자세히 설명합니다.docs.k3s.io 1. curl 로 스크립트 설치curl -sfL https://get.k3s.io | sh -  2. k3s 설치, 실행 확인 sudo systemctl status k3s2. 에이전트 노트 추가 설치 curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S..

[k8s] k8s를 알아보자

kubernetesNodeMaster Node (마스터 노드) :  전체 시스템을 관리, 통제구성 etcd (저장소)Kube API ServerSchedulercontrollerWorker Node (워커 노드) : 마스터 노드의 명령에 따라 애플리케이션 실행을 담당하는 하나의 시스템Pod구성컨테이너volume상태pod정의스케줄링노드의 정보Node는 k8s를 구성 요소 정보를 갖고있는 서버 자원이라면Pod는 application이 동작하는 가상화 자원이다. (확장 가능) k8s의 장점환경에 종속받지 않음분리된 워크로드 (pod로 application이 각각 동작. 서로 통신만 가능)운영 관리의 자동화  참고 출처 따라하며 배우는 쿠버네티스 - 입문(1)유튜브 강의 `따라하며 배우는 쿠버네티스`를 정리해 ..

[k8s] k3로 쿠버네티스 연습하기

왜 k3 일까?쿠버네티스와 완전히 호환되는 가벼운 배포판설치가 매우 쉽고 리소스를 적게 사용구조가 매우 단순안정성은 떨어질 수 있음k3s 설치curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644 설치와 동시에 k3s.service 에 권한 부여systemctl status k3s.service마스터 노드 세팅 - 마스터 노드에 다음과 같은 포트가 열려있어야함더보기닫기프로토콜 / 포트 범위 / 목적TCP / 6443 / API 서버TCP / 2379 - 2380 / etcd 서버 client APITCP / 10250 / kubelet APITCP / 10251 / kube-schedulerTCP / 30000 - 32767 / nodePo..

[AWS] CloudFront Function 사용하여 index.html 생략하기

next.js 를 사용해서 만든 소스코드를 S3에 올리기 위해 정적 호스팅이 가능하도록 변환하는 과정에서 라우팅 방식에 문제가 생겼다.(프론트 개발자가 아니라서 잘 모르지만 제가 대충 이해한거에오 ㅎ)  s3 엔드포인트를 사용하면 index.html 을 생략해도 라우팅이 가능한데Cloudfront 도메인을 사용하면 라우팅이 되지않았다. 예를 들자면 http://{s3-endpoint}/data/ 에 접근하면 http://{s3-endpoint}/data/index.html 화면이 호출된다 그런데 Cloudfront 도메인은 https://{CloudFront-domain}/data/ 로 접근할 경우 제대로 호출하지 못한다. 따라서 찾은 방법은 CloudFront의 Function을 사용하는 방법이다.  ..

Devops Skill Up/AWS 2024.05.03

[AWS] Public Ip 과금에 대체할 수 있는 방법

2024 2년부터 aws 에서 무료로 제공하던 public ip에 대해서 비용을 청구하기 시작했습니다. 1. VPC, 서브넷 변경기존 구성이 퍼블릭 서브넷들로만 되어 있다면, 대체구성에서는 로드밸런서가 배치될 퍼블릭 서브넷과 EC2 Instance Connect Endpoint가 배치될 매니지먼트 서브넷 그리고 NAT게이트웨이를 배치할 NAT서브넷이 추가로 필요합니다. 2. 로드밸런서 구성 변경인스턴스를 퍼블릭 서브넷에 생성하고 할당된 퍼블릭IP를 통해 직접 인터넷에 개방하고 있었다면, 이제는 안전한 프라이빗 서브넷에 퍼블릭IP 없이 배치하고 로드밸런서를 통해 외부에 서비스를 하도록 재구성하는 것이 좋습니다. 만약 기존에도 로드밸런서를 통해 외부서비스 구성은 하고 있으나 인스턴스가 여전히 할당..

Devops Skill Up/AWS 2024.04.24

[AWS] AWS Compute Optimzer를 사용하여 비용최적화를 해보자

AWS Compute Optimzer를 사용하면 여러 리소스 사용 프로비저닝에 대해 알 수 있다. 올바른 크기 조정 권장 사항은 EC2 인스턴스에 대한 프로비저닝에 대해 알 수 있다면 Compute Optimizer는 lambda, fargate를 포함하여 다른 리소스에 대한 프로비저닝 또한 알 수 있다. 그리고 다음에 사용할 수 있는 서비스는 '비용최적화 허브'인데 활성화 해두면 AWS Compute Optimzer 와 Cloud Watch 를 통해 사용률 지표를 받아 리소스들의 사양에 대한 최적화 분석을 해준다고 한다. 1일정도 수집이 필요해서 수집된 이후에 포스팅 해보도록 하겠습니당 ^-^77

Devops Skill Up/AWS 2024.04.23

[AWS] 올바른 크기 조정 권장 사항 (rightsizing-preferences)을 사용하여 비용 최적화를 해보자

AWS를 비롯한 IaaS를 사용한다면 비용최적화는 꽤나 중요한 부분이라고 생각이된다. 여러가지 방법을 찾다가 '올바른 크기 조정 권장 사항 (rightsizing-preferences)' 를 사용하여 EC2 사용량에 대한 객관적인 판단을 할 수 있었다. AWS Console - Cost Explore - 레거시 페이지 - 올바른 크기 조정 에 들어가면 EC2 프로비저닝에 대한 최적화 사항에 대해 알 수 있다. 이런식으로 인스턴스 조정 권유 사항에 대해 알 수 있다. csv 파일로도 다운로드 받을 수 있다. csv 파일로 받으면 권장스펙이 1순위 ~ 3순위까지 나오고 절감 예상 금액까지 조회 가능하니 비용최적화를 생각한다면 들여다 볼 필요가 있을 것 같습니당.ㅎㅎ https://docs.aws.amazon..

Devops Skill Up/AWS 2024.04.23