전체 글 (134) 썸네일형 리스트형 [Kubernetes] Controller - Replicaset 레플리카셋(Replicaset)의 3가지 구성 요소 label selector 레플리카셋에 의해 관리될 파드를 선택할 레이블 정의 .spec.template.labels의 필드와 spec.selector.matchLabels가 같아야 한다. 레이블을 기준으로 파드가 관리되므로 실행 중인 파드를 중단하거나 재시작하지 않고 레플리케이션 컨트롤러가 관리하는 파드 변경 가능 replicas 유지할 파드의 수 기본 값은 1 pod template 레플리카셋이 실행할 파드의 정의 레플리카셋에 의해서 실행할 파드의 컨테이너 이미지, 포트, 이름등의 구체적 명세 레플리카셋 yml 예제 (rs-nginx.yaml) apiVersion: apps/v1 kind: ReplicaSet metadata: name: rs-ngi.. [Oracle] 특정 테이블에 데이터가 없을 시 기본값 출력하기 DB쿼리를 짤때 값이 없을 경우에는 디폴트 값을 보여줘야하는 시나리오가 종종 나오게 된다. 그럴경우에 한번에 초기 테이블을 만들때 다음과 같은 방법으로 해볼 수 있다. 아래의 테이블 내용은 STR_ID 별로 물품 카테고리와 물품들 리스트를 보관하는 테이블의 데이터 모습이다. 여기서 특정 STD_ID에 해당하는 카테고리/물품 내용이 저장되어 있지 않을 경우 디폴트 STR_ID = 0인 값들로 무언가 해보고자 한다면 과연 어떻게 초기 테이블을 가져갈 수 있을까? UNION ALL을 활용해 값이 없을때의 STR_ID = 0 인 조회결과와 실제 원하는 값이 있을때의 테이블 결과를 UNION ALL 하면 위 시나리오 대로 실행을 해볼 수 있다. 아래와 같이 조회를 원하고자 하는 STR_ID = 3에 해당하는 값이.. [Oracle] first_value 함수 사용하기 오라클로 DB개발시 특히 집계 결과를 생성시에 최소값 또는 최대값을 기준으로 편차를 계산하는 등의 작업이 필요할 때가 있다. 오라클의 first_value 함수를 사용하면 특정 집단내의 기준값을 찾고 그 기준으로 결과를 뽑아내기가 쉬워진다. 정의는 다음과 같다. FIRST_VALUE (expr [ IGNORE NULLS ]) OVER (analytic_clause) 다음과 같이 간단한 데이터 테이블이 있다고 가정하자.... 카테고리별로 물품이 있고 각 물품은 가격을 가지고 있다. 각 물건의 가격을 전체 집단의 최저가격 대비 얼마만큼 차이가 있는지 쉽게 알수 있는 방법은 뭘까? 예제1. 각 카테고리별로 최저값을 구하고 각 카테고리별로 모든 물품의 최저값과의 차이를 구해라 SELECT CATEGORY, PR.. [Kubernetes] 네임스페이스(Namespace) 살펴보기 네임스페이스 동일한 물리 클러스트를 기반으로 하는 논리적으로 구분된 가상 클러스터를 네임스페이스라고 한다. 여러개의 팀이나 많은 사용자가 있는 경우, 클러스터안에서 여러개의 어플리케이션을 실행해야 하는 경우 사용 root@master:~# kubectl get namespace NAME STATUS AGE default Active 10d kube-node-lease Active 10d kube-public Active 10d kube-system Active 10d root@master:~# kubectl get deploy No resources found in default namespace. root@master:~# kubectl get deploy -n kube-system NAME READY.. [Kubernetes] 쿠버네티스 Architecture와 기본 동작 Kubernetes Clustering Architecture 1. 로컬에서 이미지를 생성해서 Push를 수행한다. 2. Push된 이미지가 Docker Hub에 업로드 된다. 3. 4. kubectl 명령어를 실행해 Kubernets API 서버로 REST HTTP 요청을 전달하고 클러스터에 새로운 레플리케이션 컨트롤러 오브젝트 생성 5. 레플리케이션 컨트롤러는 새 파드를 생성하고 스케쥴러(Scheduler)가 워커 노드 중 하나에 스케쥴링 6. 해당 워커 노드의 Kubelet은 파드가 스케쥴링 된 것을 확인 7. 이미지가 로컬에 없기 때문에 Docker에게 레지스트리에서 특정 이미지를 Pull 하도록 지시 8. 이미지 다운 후 Docker는 컨테이너를 생성하고 실행 Master Node의 Schedu.. [Postgresql] Postgres db dump, restore 데이터 베이스를 개발, 또는 운영 중에 백업은 중요한 작업중에 하나이다. 본 절에서는 postgres 데이터베이스를 통으로 바이너리 레벨로 dump하고 이를 그대로 restore하는 명령을 살펴본다. pg_dump 명령어 옵션 PS C:\Program Files\PostgreSQL\13\bin> .\pg_dump.exe --help pg_dump 프로그램은 데이터베이스를 텍스트 파일 또는 기타 다른 형태의 파일로 덤프합니다. 사용법: pg_dump [옵션]... [DB이름] 일반 옵션들: -f, --file=파일이름 출력 파일 또는 디렉터리 이름 -F, --format=c|d|t|p 출력 파일 형식(사용자 지정, 디렉터리, tar, 일반 텍스트(초기값)) -j, --jobs=개수 덤프 작업을 병렬 처리 .. [Synology] DSM 7.0 업데이트 후 Plex 재생 문제 복구 DSM 7.0 업데이트는 새로운 기능과 더 나은 보안을 포함하여 흥미로운 변화가 많이 있다. 보안에 중점을 둔 변경 사항 중 하나는 시스템이 루트 권한을 처리하는 방법이다. 이제 Synology는 Plex Media Server 및 기타 패키지와 같은 서비스가 루트 권한을 얻는 것을 금지하고 파일 시스템 액세스에 제한을 두고 있다. 따라서 Plex가 미디어 라이브러리를 보고 백그라운드에서 실행할 수 있도록 수동으로 권한을 할당해야 한다. Synology DSM 7.0용 Plex 다운로드 및 설치 방법 DSM 6.2에 Plex가 이미 설치되어 있고 DSM 7.0으로 업그레이드한 경우 패키지 센터에 패키지를 수정하라는 메모가 표시된다. 따라서 Plex 웹 사이트에서 직접 빌드를 다운로드하여 최신 DSM 7... [Kubernetes] 쿠버네티스 설치(kubeadm) 및 cluster 구성하기 쿠버네티스를 공부하기 위해서는 제일 처음으로 할일이 여러 노드에 kubernates패키지를 설치하고 master 노드와 worker노드간의 연결을 설정하는 일이다. 집에 있는 Synology 718+의 VMM 으로 VM을 3개 만들어 그들간에 cluster를 구성해보려고 한다. 시작하기 전에 호환 되는 Linux는 Debian 및 Red Hat 기반 Linux 배포판. 머신당 2GB 이상의 RAM. 2 CPU 이상. 클러스터의 모든 시스템 간의 전체 네트워크 연결(공용 또는 사설 네트워크). 모든 노드에 대한 고유한 호스트 이름, MAC 주소 및 product_uuid. kubelet 위해서는 스왑을 사용하지 않도록 설정함. 마스터 노드 (Master Node) 노드들의 상태를 제어하고 관리 쿠버네티스의.. 이전 1 ··· 12 13 14 15 16 17 다음