cicd 17

[IT잡지식] k3s 와 k8s 비교표

아래는 k3s와 k8s 간의 주요 차이점을 비교한 테이블입니다. 차이점 k3s k8s (Kubernetes) 설치 크기 작음(약 40MB) 큼(수백 MB 이상) 설치 방법 간편(단일 바이너리 설치) 복잡(여러 구성 요소 및 설치 단계 필요) 필요 자원 적은 메모리 및 CPU 요구 사항 많은 메모리 및 CPU 요구 사항 기능 기본 기능은 k8s와 비슷하지만 제한적 전체 기능이 제공됨 노드 제한 최대 5개 노드까지 무료 무제한 특징 경량화 버전으로 IoT, 엣지 컴퓨팅 등에 적합 대규모 애플리케이션 및 클러스터에 적합 배포 방식 서버 및 에이전트 모드 사용 마스터, 워커, API 서버 등 다중 구성 요소로 배포됨 보안 k8s와 비슷하지만 일부 보안 기능 제한됨 보안 기능 제공됨 생태계 상대적으로 작은 생태계..

IT잡지식 2023.05.04

[Kubernetes] Raspberry PI4 에 k3s 구축하기

0. 사전작업 : 라즈베리파이 시스템 설정 - /boot/cmdline.txt 파일에 cgroup_memory=1 cgroup_enable=memory 를 추가하고, reboot 실행 sudo vi /boot/cmdline.txt console=serial0,115200 console=tty1 root=PARTUUID=4aed83fb-02 rootfstype=ext4 fsck.repair=yes rootwait cgroup_memory=1 cgroup_enable=memory sudo reboot 1. 먼저, 각각의 worker 노드에서 필요한 패키지를 설치합니다. sudo apt-get update sudo apt-get install -y curl 2. k3s 클러스터를 설치합니다. Master 노드..

Kubernetes 2023.04.30

[Docker] sonarquebe 를 이용한 정적소스 분석

아래 예시에서는 SonarQube을 Docker Compose를 사용하여 두 개의 서비스로 구성하였습니다. 첫 번째 서비스인 sonarqube는 SonarQube 이미지를 사용하여 애플리케이션을 실행하고, 두 번째 서비스인 sonarqube_db는 PostgreSQL 이미지를 사용하여 데이터베이스를 관리합니다. docker-compose.yml 파일에서는 각 서비스의 설정을 지정하고 있습니다. image는 사용할 Docker 이미지를 지정하고, ports는 호스트와 컨테이너 간의 포트 매핑을 설정합니다. volumes는 데이터를 저장할 볼륨을 설정하고, environment는 환경 변수를 설정합니다. depends_on은 서비스간의 종속성을 설정합니다. 아래 예시를 참고하여 SonarQube을 Docke..

Docker 2023.04.23

[Jenkins] jenkins pipline script 작성 예시

pipline 예시 1 pipeline { agent any stages { stage('Checkout') { steps { // Git 리포지토리 체크아웃 git branch: 'main', url: 'https://github.com/your-repo.git' } } stage('Build') { steps { // 빌드 스텝 수행 sh 'gradle build' } } stage('Docker Build') { steps { // 도커 이미지 빌드 및 푸시 sh 'docker build -t your-docker-image .' sh 'docker push your-docker-image:latest' } } stage('Deploy to Kubernetes') { steps { // Kubern..

Spring 2023.04.21

[Jenkins] docker 이미지를 nexus3 에 배포 시 오류케이스

아래와 같이 Jenkins로 pipline 빌드 시 docker 이미지를 nexus3에 배포하려고 할 때 오류가 계속 발생하여 며칠 해결 끝에 원인을 알아냈다. 아래 오류로 구글링하여도, 최신버전을 깔라고 하느니, docker를 다시 깔라고 하느니 이상한 헛소리에 너무 지쳤었다. 나는 최신버전인 상태인데, 역시 안정적인 버전으로 깔고해야했었나라고 자책도 했지만, 역시 내 성격에 허락되지 않는 일이었다. jenkins에서 docker 이미지를 nexus repository로 배포할 때 겪었던 몇 가지 오류 케이스를 공유하겠다. 1-1. 오류메세지 invalid reference format + docker tag springboot:v10 private-repository:28081/repository/d..

Spring 2023.04.20

[Kubernetes] 쿠버네티스로 Argo CI/CD 설치하기

1. Namespace 생성 및 Argo CI/CD 설치 kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml 2. 만약 UI/SSO/Multi Cluster 기능을 원하지 않을 경우 아래 명령어처럼 Core 만 설치하도록 한다. 하지만 나는 이쁜 UI를 좋아하기 때문에 1번 명령어로 설치하려한다. kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/man..

Kubernetes 2022.12.31

[Kubernetes] 쿠버네티스 vagrant 로 설치 시 Encoding::CompatibilityError 오류 해결

쿠버네티스 환경 구성 시 여러가지 환경에서 여러 케이스의 이유로 설치가 되지 않는다. 이를 해결 하기 위해 많은 구글링과 강의 커뮤니티에서 조언을 구해야한다. 저와 같은 환글로 된 계정명을 사용하고 있는 윈도우 사용자는 영문명으로 변경하는 작업 대신 더 간단하게 해결하고자 할 경우 아래와 같이 따라해보자. Window cmd 창에서 설치 시 오류 내용 Git bash 에서 설치 오류 내용 메뉴 -> 시스템 환경 변수 편지 -> 환경 변수 - 환경 변수 변수이름 : VAGRANT_HOME 변수 값 : C:\\HashiCorp\.vagrant.d 경로를 반드시 \ 를 2개 (\\) 입력하도록 한다.

Kubernetes 2022.12.26