Kubernetes에서 애플리케이션의 안정성과 가용성을 보장하기 위해 다양한 설정이 필요합니다. 그 중 Autoscaling과 PodDisruptionBudget(PDB)은 Pod의 수를 조절하고 가용성을 유지하는 데 중요한 역할을 합니다. 이 두 설정은 겉보기에는 비슷한 기능을 제공하는 것처럼 보일 수 있지만, 실제로는 서로 다른 목적을 가지고 있습니다. 이번 글에서는 Autoscaling과 PDB의 차이점, 그리고 왜 두 설정을 함께 사용하는 것이 중요한지에 대해 알아보겠습니다.Autoscaling 설정의 역할Autoscaling은 Kubernetes에서 애플리케이션의 부하에 따라 Pod의 개수를 자동으로 조정하는 기능입니다. Horizontal Pod Autoscaler(HPA)가 이 기능을 담당하..
✅ 아래 글의 내용 및 이미지는 인프런 "쿠버네티스 어나더 클래스 (지상편) - Sprint 1, 2" 강의를 듣고 정리한 글입니다. 강사님이 정리해주신 눈에 잡히는 IT 생태계이 오픈소스들을 잘 깊이 있게 공부하는게 좋다! => 남들이 뭐가 좋다더라에 휩쓸리지말고 처음엔 여기에만 집중해도 충분하다!개발기존부터 해왔던 App 개발부터 배포까지 써야되는 기술들.오케스트레이션 /매니징마이크로 서비스로 만들 때 쓰면 좋은 오픈 소스들플랫폼과 런타임앱을 클라우드에 올릴 때 주요 사용되는 기술들 프로비저닝과 분석실제 프로젝트에서 써야되는 기술들이 있는데 만약 프로젝트에서 앱을 마이크로 서비스로 개발하고 클라우드까지 올린다? => 프로비저닝과 분석에 있는 기술들을 다 아는게 좋다.분석 / 모니터링 큰 규모의 프로..
✅ 아래 글의 내용 및 이미지는 인프런 "쿠버네티스 어나더 클래스 (지상편) - Sprint 1, 2" 강의를 듣고 정리한 글입니다. 설치부터 너무 어려워서 몇번을 헤매고 난 뒤에 그냥 든 생각은 일단 설치가 되고 대시보드까지만 띄우고 강의를 계속 더 전진해서 듣자라는 생각이 컸다. 처음엔 vmware fusion을 설치해서 진행 해보려고 했었는데 뭔가 너무 막히고 시간을 잡아먹는 것 같아서 강사님이 올려주신 [Sprint1] 쿠버네티스 빠른설치 (Mac-m시리즈) 로 진행했다. UTM 설치 및 실행 기본적으로 설치되는 스펙은 카페에 나와있다. - Start : Virtualize - Operating System : Linux - Linux : Boot ISO Image [Browse..] -> Roc..
✅ 아래 글의 내용 및 이미지는 인프런 "쿠버네티스 어나더 클래스 (지상편) - Sprint 1, 2" 강의를 듣고 정리한 글입니다. 시작 이 대화에는 3가지 정도 잘못된 내용이 있다. 강의를 듣고 나중에 정답을 알려줌! 최초의 OS로는 Unix가 있었다. (유료) 리누스 토르발즈가 커널을 재배포해서 Linux를 만들었다. 리눅스 배포판을 다시 한번 수정? 해서 나온게 Debian 계열(무료)과 RedHat 계열(유료)이 있다. Debian 계열에서 편의기능을 추가한게 지금까지도 계속 발전되고 있는 Ubuntu 이다. Redhat 에서 리눅스 배포판이 만들어지는 순서 1. 페도라 리눅스 (새로운 기능을 개발하는 버전) 무료이다. 2. 기능이 안정화되면 RHEL 로 바꿔서 릴리즈. 유료이다. 3. RHEL..
어쩔수 없이 윈도우를 사용하기 위해서 가상머신에 윈도우를 설치해놓고 맥을 사용하는 사람들이 많을 텐데 알프레드를 사용하는 맥 사용자라면 검색 시 가상머신에 설치되어 있는 윈도우 앱도 검색되는 현상이 있을 것이다. 예를들면 이런 것 Visual Studio Code를 실행하기 위해 검색했는데 밑의 가상머신에 설치되어있는 앱도 검색되어 나온다. 어찌하다가 잘못 선택되면 무거운 가상머신 앱이 작동되면서 되게 짜증나는 상황이 발생하는데 이걸 검색에서 안나오게 하는 방법을 공유 방법은 의외로 간단하며 맥의 Spotlight 설정에서 개인정보 보호 탭에 VM 앱을 추가해주면 된다. 맥의 Spotlight 개인 정보 보호 탭은 Mac OS Ventura 이상부터는 UI가 바뀌어서 그 이전 OS를 쓰는 사용자라면 설정..
결합도 코드를 구현할 때 고려해야 할 또 다른 중요한 특성으로 결합도가 있다. 응집도는 클래스, 패키지, 메서드 등의 동작이 얼마나 관련되어 있는가인 반면 결합도는 한 기능이 다른 클래스에 얼마나 의존하고 있는지를 가늠한다. 결합도는 클래스를 구현하는데 얼마나 다른 클래스를 참조했는가로 말할 수 있다. 많은 클래스를 참조하고 있다면 기능을 변경할 때 그만큼 유연성이 떨어진다. 결합도는 코드가 서로 어떻게 의존하는지와 관련이 있는 척도다. 예제에서 BankStatementAnalyzer는 BankStatementCSVParser 클래스에 의존한다. 그럼 어떻게 결합도를 낮출 수 있을까? 인터페이스를 이용하면된다. 인터페이스를 이용하면 요구사항이 바뀌더라도 유연성을 유지할 수 있다. 입출금 내역을 파싱하는 ..
응집도 응집도는 클래스나 메서드의 책임이 서로 얼마나 강하게 연결되어 있는지를 측정한다. 즉 어떤 것이 여기저기에 모두 속해있는지를 말한다. 이전 리팩터링 코드에서 BankStatementCSVParser의 응집도는 높다. 이 클래스에서 CSV 데이터 파싱 작업과 관련된 두 메서드를 한 그룹으로 만들었기 때문이다. 계산 연산을 하는 BankStatementProcessor라는 별도의 클래스를 추출해보자. public class BankStatementProcessor { private final List bankTransactions; public BankStatementProcessor(final List bankTransactions) { this.bankTransactions = bankTransa..
- Total
- Today
- Yesterday
- LocalDateTime
- jQuery
- mybatis config
- input
- window
- 베리 심플
- Spring Security
- Spring
- elasticsearch
- 북리뷰
- Bash tab
- mybatis
- LocalDate
- k8s
- docker
- Linux
- intellij
- config-location
- springboot
- JavaScript
- Java
- rocky
- maven
- localtime
- Mac
- Kotlin
- oracle
- Github Status
- svn
- 오라클
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |