본문 바로가기

전체 글19

Java : jdk-version() { 여러 jdk 버전 설치; } MSA 환경에서 개발을 하다보니 최대 많게는 Java 8, 11, 17, 21 버전의 프로젝트를 한꺼번에 사용한 적이 있다.Mac jenv를 활용하면 특정 경로의 JAVA_HOME을 쉽게 변경할 수 있었지만,Windows 운영체제에서는 어떤 방식으로 할 수 있을지 궁금해졌다. Window에서도 다양한 jdk 버전을 터미널에서 변환할 수 있는 방법을 구글링하고 직접 테스트 해보았다 1. jdk 다운로드 샘플로 설치해볼 graalvm jdk 21, 17 버전 https://github.com/graalvm/graalvm-ce-builds/releases/tag/jdk-21.0.2https://github.com/graalvm/graalvm-ce-builds/releases/tag/jdk-17.0.8 각 버전.. 2024. 6. 12.
Kubernetes : kubectl() { Labeling } Reference. https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ Labels and Selectors Labels are key/value pairs that are attached to objects such as Pods. Labels are intended to be used to specify identifying attributes of objects that are meaningful and relevant to users, but do not directly imply semantics to the core system. Labels can kubernetes.io 레코드에 라벨 값 추가 kubectl g.. 2024. 4. 16.
Kubernetes : kubectl() { linux 명령어, Prefix로 묶인 목록 한꺼번에 처리, grep, awk, xargs } 상황 ReplicaSet에 따로 Label, Selector가 설정되어 있지 않은 상태 ReplicaSet를 수정하고, Pods에 반영하기 위해서는 기존 Pods들을 삭제해야 한다 필요한 명령어 수작업 대신 한꺼번에 삭제하는 방법 삭제할 대상 조회 : kubectl get 삭제할 대상들은 공통 Prefix를 가지고 있다 : grep 조회 정보에서 1번째 컬럼 정보만 출력 : awk awk - 파일이나 레코드(조회 결과처럼 공백으로 구분되어져 있는 각 줄)에 포함된 값을 조작하거나 데이터화 - 이번 명령어에서 한 일 : 특정 필드만 출력 - 공백 기준 각 단어들을 필드로 칭하고 $1,,,$N으로 순서를 구분할 수 있다 - $0는 레코드(모든 필드를 포함한 한 행) 그 자체 - 그 이외에도 특정 필드에 문자.. 2024. 4. 15.
Docker : summary() { Docker의 등장 배경, 기본 용어와 원리 } 소프트웨어 운영 플랫폼의 흐름 하드웨어 가격은 내려가고 성능은 좋아진다. 운영 서비스는 대용량이 되어간다. 물리 서버 (Bare Metal) 하나의 물리 서버에 다양한 서비스를 함께 관리 하나의 서버에 여러 서비스가 있어서 관리가 어려우며, 서로의 환경설정이 충돌할 가능성 가상화 기술 (Hypervisor) 하나의 서버에 가상 머신을 만들고 가상머신 안에 각 애플리케이션을 배포하고 운영 서비스 운영 관리가 쉬워졌으나, 서비스 환경에서는 Scale-In & Scale-Out가 요구되기 시작 Container Engine OS 위에 컨테이너 엔진을 올려 플랫폼 역할을 하며 컨테이너 서비스들을 관리 컨테이너는 애플리케이션과 애플리케이션을 운영하기 위한 최소한의 환경만 포함되어 있기 때문에 용량이 적다 따로 분.. 2024. 4. 9.
Docker : Dockerfile() { Dockerfile 명령어 정리, Dockerfile 빌드 } Dockerfile 명령어 정리 Container 에는 { 개발한 애플리케이션의 실행 파일 + 운영 환경 } 조합이 들어가야 한다 Dockerfile = container를 만들 수 있도록 도와주는 명령어 집합 컨테이너 이미지를 생성할 수 있는 고유의 지시어(instruction) 사용 대소문자를 구분하지는 않지만, 가독성을 위해 지시어를 대문자로 사용 권장 Instruction Description FROM 운영 환경이 될 BASE IMAGE. 주로 가장 먼저 선언되는 지시어 ENV 글로벌 환경 변수 설정. 컨테이너가 생성 된 후에도 유지된다. docker build 실행 시 --build-arg 옵션으로 덮어쓰기 가능 docker run 실행 시 -e, --env 옵션으로 덮어쓰기 가능 ARG 빌드 .. 2024. 4. 9.
Docker : Install() { Docker 설치, Rootless Mode 설정 } Docker 설치 과정 공식 문서 : 설치 https://docs.docker.com/engine/install/ubuntu/ Install Docker Engine on Ubuntu Jumpstart your client-side server applications with Docker Engine on Ubuntu. This guide details prerequisites and multiple methods to install Docker Engine on Ubuntu. docs.docker.com 1. 사전 유틸 패키지 설치 2. docker 공식 GPG 추가 3. docker repository를 패키지 관리자에 추가 4. docker 설치 docker-ce # docker daemon doc.. 2024. 4. 9.