본문 바로가기

INFRA/DevOps147

[K8s] LoadBalancer (AKS에서 진행) LoadBalancer란? Public cloud (AWS,Azure, GCP 등)에서 운영 가능 LoadBalancer를 자동으로 구성 요청 NodePort를 예약 후 해당 nodeport로 외부 접근 허용 definition apiVersion: v1 kind: Service metadata: name: loadbalancer-service spec: type: LoadBalancer selector: app: webui ports: - protocol: TCP port: 80 targetPort: 80 [ Hands - on ] LoadBalancer yaml 파일 생성 및 실행 vi loadbalancer-nginx.yaml apiVersion: v1 kind: Service metadata: n.. 2022. 11. 21.
[k8s] NodePort NodePort란? 모든 node를 대상으로 외부 접속 가능한 port를 예약 Default NodePort 범위 : 30000 - 32767 ClusterIP를 생성 후 NodePort를 예약 definition apiVersion: v1 kind: Service metadata: name: nodeport-service spec: type: NodePort clusterIP: 10.100.100.200 # 생략 시 random 생성 selector: app: webui ports: - protocol: TCP port: 80 targetPort: 80 nodePort: 30200 # 생략 시 random 생성 [ Hands - on ] Deployment를 통해서 pod 생성 apiVersion: a.. 2022. 11. 15.
[K8s] Cluster IP ClusterIP란? selector의 label이 동일한 pod들의 그룹으로 묶어 단일 진입점(Virtual IP)을 생성 cluster내부에서만 사용 가능 랜덤하게 loadbalacing을 하지만 균등하게 서비스 될 수 있도록 지원 type 생략 시 default 값으로 10.96.0.0/12 범위에서 할당됨 clusterIP는 IP 중첩을 방지하기 위해 주로 고정시키지 않고 사용함 definition apiVersion: v1 kind: Service metadata: name: clusterip-service spec: type: ClusterIP clusterIP: 10.100.100.100 selector: app: webui ports: - protocol: TCP port: 80 targe.. 2022. 11. 9.
[k8s] Cronjob Cronjob이란? 사용자가 원하는 시간에 job 실행 예약 지원 Jon controller로 실행할 application pod를 주기적으로 반복해서 실행 Linux의 cronjob의 스케줄링 기능을 job controller에 추가한 API Data backup, Send emails, Cleaning tasks과 같은 반복해서 실행하는 job을 운영해야 할 때 사용 Crobjob Schedule : “분(0-59) 시(0-23) 일(1-31) 월(1-12) 요일(0-6)” Minutes (from 0 to 59) * * * * * : 1분마다 실행 */5 * * * * : 5분마다 실행 Hours (from 0 to 23) Day of the month (from 1 to 31) Month (fro.. 2022. 11. 1.
[K8s] Job Controller Job이란? pod의 정상적인 종료를 관리 K8s는 pod를 running 중인 상태로 유지 Batch 처리하는 pod는 작업이 완료되면 종료됨 Batch 처리에 적합한 controller로 pod의 성공적인 완료를 보장 비정상 종료 시 다시 실행 정상 종료 시 완료 definition apiVersion: batch/v1 kind: Job metadata: name: centos-job spec: # completions: 5 # parallelism: 2 activeDeadlineSeconds: 5 template: spec: containers: - name: centos-container image: centos:7 command: ["bash"] args: - "-c" - "echo 'Hello.. 2022. 10. 24.
[k8s] Statefulset Statefulset이란? pod의 상태를 유지해주는 controller pod 이름 pod의 볼륨(스토리지) daemonset처럼 node 당 pod 1개를 보장하지 않음 definition apiVersion: apps/v1 kind: StatefulSet # kind 종류 확인 metadata: name: sf-nginx spec: replicas: 3 serviceName: sf-service # serviceName 존재 selector: matchLabels: app: webui template: metadata: name: nginx-pod labels: app: webui spec: containers: - name: nginx-container image: nginx:1.14​ [ Han.. 2022. 10. 19.
[NGINX] Reverse Proxy 안녕하세요. Administrator 팀입니다! 지난 포스터인 API Proxy에 이어서 Reverse Proxy에 대해 알아보도록 하겠습니다. 2022.10.11 - [Infra/DevOps] - API Proxy API Proxy 안녕하세요. Administrator 팀입니다! 오늘은 API Proxy의 기본 개념에 대해서 좋은 자료를 가져왔으니 알아보는 시간을 가져보도록 할게요! 프록시 서버(Proxy Server)란? 클라이언트가 자신을 통해 다른 btcd.tistory.com 리버스 프록시(Reverse Proxy)란? 리버스 프록시 서버는 아래 그림 처럼 웹 서버 앞단에 놓여져 있습니다. 그렇다면 리버스 프록시 서버는 왜 사용하는 것일까요? 리버스 프록시의 특징 로드밸런싱 (Load Balan.. 2022. 10. 11.
API Proxy 안녕하세요. Administrator 팀입니다! 오늘은 API Proxy의 기본 개념에 대해서 좋은 자료를 가져왔으니 알아보는 시간을 가져보도록 할게요! 프록시 서버(Proxy Server)란? 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 가르키는 말입니다. 서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 가리켜 프록시, 그 중계 기능을 하는 것을 프록시 서버라고 부릅니다. 프록시 서버 중 일부는 프록시 서버에 요청된 내용들을 캐시를 이용하여 저장해 둡니다. 이렇게 캐시를 해 두고 난 후에, 캐시 안에 있는 정보를 요구하는 요청에 대해서는 원격 서버에 접속하여 데이터를 가져올 필요가 없게 됨으로써 전송 시간을 절약할 .. 2022. 10. 11.