INFRA/DevOps146 [K8S] Multi Container 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 Multi Container에 대해 알아보겠습니다! Multi Container 하나의 Pod 안에는 여러개의 Container가 들어있을 수 있습니다. 단, Pod 내의 Container 들이 서로 다른 종류일때만 가능합니다. Pod 내에 Container 들은 동일한 네트워크 공간을 공유하기 때문에 서로 간의 통신이 가능하고 저장 공간을 공유하는 것도 간단합니다. Multi Container에는 3가지 종류가 있습니다. Sidcar Pattern : Main Container의 기능 확장 또는 향상 ex) Log Saving Sidecar Ambassador : Main Container의 네트워크 기능 담당 ex) Proxy Container.. 2023. 9. 13. [K8S] Taint 베하~! BTC_녹차공원 팀의 하동녹차 입니다. Kubernetes Taint 에 대해 알아보겠습니다! 쿠버네티스 테인트(Taint) 쿠버네티스(Kubernetes)에서 "Taint(테인트)"는 노드(Node)에 특정 조건을 부여하여 해당 노드에만 특정 유형의 파드(Pod)가 스케줄링되도록 하며 클러스터 내에서 리소스 및 워크로드를 효율적으로 관리하는 데 사용됩니다. Taint의 적용 효과로 "NoSchedule", "PreferNoSchedule", "NoExecute" 중 하나 입니다. "NoSchedule": 해당 Taint가 있는 노드에는 일치하는 파드가 스케줄링 "PreferNoSchedule": 일치하는 파드가 노드에 스케줄링되지 않는 것 "NoExecute": 이미 노드에서 실행 중인 파드에.. 2023. 9. 6. Git Branch의 개념과 활용 베하~~ 반갑습니다!! 인사통의 BTC_김회장, 최총무입니다!! 오늘 함께할 내용은 Git의 기능중 하나인 Git Branch에 대해서 알려드릴게요~ 간단한 개념과 실무에서의 활용 내용에 대해서도 알아보자구요! 개요 Git Branch의 개념 Git Branch의 활용방안 Git Branch의 개념 Git은 소스 코드의 버전 관리를 위한 도구로, 여러 개발자들이 동시에 작업을 할 수 있게 해주는 도구입니다!! Git Branch는 이러한 작업 환경에서 특정 기능이나 수정 사항을 독립적으로 관리할 수 있게 도와줍니다~ 간단하게 말하면, branch는 프로젝트의 독립적인 복사본이라고 생각할 수 있습니다. 기본적으로 모든 Git 프로젝트에는 master branch가 있으며 새로운 branch를 생성하여 작업.. 2023. 9. 1. [DevOps]EC2 Ubuntu에 Jenkins 설치 베하~~ 안녕하세요 픠식팀 입니다. 이번 포스팅에서는 EC2 인스턴스에 Jenkins 설치 방법을 알아보겠습니다~! 우선 Jenkins를 설치하기 위해서는 Java 11 이상 버전이 필요합니다. Java 11 설치 sudo apt install openjdk-11-jdk -y Jenkins 설치 ### KEY 등록 curl -fsSL https://pkg.jenkins.io/debian/jenkins.io-2023.key | sudo tee \ /usr/share/keyrings/jenkins-keyring.asc > /dev/null ### apt repository 추가 echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \ https://pk.. 2023. 8. 30. [K8S] NodeSelector 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 NodeSelector에 대해 알아보겠습니다! NodeSelector 쿠버네티스에서는 특정한 노드(들) 집합에서만 동작하거나 특정한 노드 집합에서 동작하도록 파드를 제한할 수 있어요. 이를 수행하는 방법에는 여러 가지가 있는데 권장되는 방식은 모두 레이블 셀렉터를 사용해서 선택을 편리하게 해요. 보통은 스케줄러가 자동으로 배치를 효율적으로 하기때문에 이런 제약 조건을 설정할 필요가 없어요. 하지만, 예를 들어 SSD가 장착된 머신에 파드가 배포되도록 하거나 많은 통신을 하는 두 개의 서로 다른 서비스의 파드를 동일한 가용석 영역에 배치하는 경우와 같이, 다양한 상황에서 파드가 어느 노드에 배포될지를 제어해야 하는 경우가 있어요. nodeSelect.. 2023. 8. 29. [K8S] Ingress 베하~! BTC_녹차공원 팀의 민물공원 입니다. 이번주는 Ingress에 대해 알아보겠습니다! Ingress 일반적으로 네트워크에서는 Ingress와 Egress로 트래픽을 구분해요. Ingress는 외부에서 내부 서버로 들어오는 네트워크 트래픽을, Egress는 내부 서버에서 외부로 나가는 트래픽을 의미한답니다. 쿠버네티스에서도 Ingress라고 하는 리소스가 존재하는데요. 쿠버네티스의 Ingress는 외부에서 쿠버네티스 클러스터 내부로 들어오는 네트워크 트래픽을 어떻게 처리할지 정의한답니다. 쿠버네티스에서 실행중인 Deployment와 Service에 접근하기 위한 외부 요청을 처리하는 리소스들이 있는데요. NodePort, ExternalIP, Ingress 등이 있습니다. NodePort와 Ext.. 2023. 8. 19. [DevOps] CI/CD 개념 및 도구 설명 베하~~ 안녕하세요 항상 웃음이 나는 픠식팀 입니다. 이번 포스팅에서는 CI/CD란 무엇인지, 그리도 CI/CD에 사용되는 도구에 대한 장단점을 알아보겠습니다! CI/CD(Continuous Integration/Continuous Delivery) 란? CI/CD (Continuous Integration/Continuous Delivery)는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법입니다. CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다. CI/CD는 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제(일명 "통합 지옥(integration hell)")를 해결하기 위한 솔루션입니다. CI/CD에 대한 개념을.. 2023. 8. 18. [K8S] Service 베하~! BTC_녹차공원 팀의 하동녹차 입니다. Kubernetes Service에 대해 알아보겠습니다! 쿠버네티스 서비스(Service) 쿠버네티스 서비스(Service)는 쿠버네티스 클러스터 내에서 실행 중인 파드에 접근하기 위한 추상화된 리소스입니다. 파드는 유동적으로 생성되고 삭제되며 IP 주소가 변경될 수 있기 때문에, 직접 파드의 IP 주소로 접근하는 것은 번거로운 작업입니다. 서비스는 이러한 문제를 해결하여 파드에 고정된 가상 IP 주소를 제공하고, 그 IP 주소를 통해 파드에 접근할 수 있도록 합니다. 이를 통해 클라이언트나 다른 파드가 서비스를 통해 파드와 통신할 수 있습니다. 쿠버네티스 서비스(Service) 기능과 특징 1. 클러스터 내부 서비스: 기본적으로 서비스는 클러스터 내부에서.. 2023. 8. 1. 이전 1 2 3 4 5 6 7 ··· 19 다음