DevOps 21

[DevOps] Jenkins Slave Node 추가 Example

Slave Node 추가하기 Jenkins 관리 -> Nodes and Clouds nodes 추가하기 Number of executors : 노드에서 동시에 수행할 수 있는 최대 빌드의 수 Remote root directory : 노드의 디렉터리 경로 Labels : 해당 노드를 라벨링할 키 값 Usage : Jenkins 마스터가 해당 노드를 선택하는 규칙 지정 Launch method : 노드의 접속 방법 Slave에 접속 가능하면 해당 서버의 정보들이 확인이 가능하다. ex) 결과 화면

DevOps 2023.07.02

[DevOps] gitHub Actions CICD - pipeline Example

Github Action GitHub에서 제공하는 지속적인 통합 (Continuous Integration) 및 지속적인 배포 (Continuous Deployment) 서비스 파이프 라인 만들기 .github/workflows 디렉토리에 저장된다. name : 파이프 라인 이름 설정 on : 파이프라인이 동작할 event Trigger 설정 jobs: WorkFlow의 job 목록 ex) build.yml # 파이프 라인 이름 설정 name: GUGBAB_GIT_FLOWER_CI # Event Trigger 설정 on: push: pull_request: # Action 탭에서 Workflow실행 가능 설정 workflow_dispatch: # WorkFlow의 job 목록 jobs: build: # ..

DevOps 2023.07.01

[DevOps] SonarQube - Jenkins + SonarQube 연동, Gradle Project 정적 분석 Example

https://www.sonarsource.com/products/sonarqube/ Code Quality Tool & Secure Analysis with SonarQube Empower development teams with a code quality & security solution that deeply integrates into your enterprise environment that enables you to deploy Clean Code securely, consistently and reliably. www.sonarsource.com SonarQube 정적 코드 분석과 코드 품질 관리를 지원하는 오픈 소스 플랫폼 이슈, 결함, 코드 복잡성등을 분석하여 코드의 품질을 평가하고 개선..

DevOps 2023.06.30

[DevOps] Jenkins Pipeline Example

Jenkins Pipeline Declarative 구문이 간결하고 가독성이 좋다. 구조와 흐름을 명시적으로 선언한다. 자동으로 스테이징과 로깅을 처리한다. Scripted 자유로운 스크립팅이 가능하다. 복잡한 로직과 동적 작업 흐름 구성이 가능하다. 가독성과 유지 보수성이 낮을 수 있다. Jenkins Pipeline Example pipeline item 생성 pipeline script 작성 ex) pipeline { ## 실행 가능한 agent 지정 agent any ## 파이프 라인 정의, 스테이지 블록 설정 영역 stages { stage('Compile') { steps { echo "Compiled successfully!"; } } stage('Code Analysis') { steps ..

DevOps 2023.06.27

[DevOps] Jenkins Pipeline 시각화 Delivery Pipeline example

Jenkins Delivery Pipeline 지속적 통합(CI) 도구를 사용하여 소프트웨어 제공 과정을 자동화하고 시각화하는 기능을 제공하는 플러그인 Plugin 설치 Jenkins 관리 -> plugins -> Delivery Pipeline 설치 Item Pipeline 연결 ex) gugbab-eureka-server main gradle jenkins -> Project gugbab-api-gateway main gradle jenkines Delivery Pipeline View 만들기 Delivery Pipeline Veiw 만들기 Pipelines에 시각화할 컴퍼넌트 추가하기 시각화 결과 화면

DevOps 2023.06.26

[DevOps] Ansible Playbook - K8s Script 실행 example

K8s script 만들기 참고 https://puk0806.tistory.com/84 [DevOps] Kubernetes yml - Deployment, Services 만들기 Example Kubernetes yml apiVersion :Kubernetes API의 버전 kind :리소스의 종류 metadata :name 등리소스에 대한 메타데이터 spec :컨테이너 이미지, 포트, 환경 변수 등 세부 사항 deployment ex) deployment.yml ## Kubernetes API의 버 puk0806.tistory.com Ansible 서버 K8s 접근 권한 추가 Ansible 서버 접속 hosts파일에 접근할 k8s 서버 호스트 설정 k8s가 있는 서버에 ssh 키 복사 ssh Key 추..

DevOps 2023.06.22

[DevOps] Kubernetes yml - Deployment, Services 만들기 Example

Kubernetes yml apiVersion :Kubernetes API의 버전 kind :리소스의 종류 metadata :name 등리소스에 대한 메타데이터 spec :컨테이너 이미지, 포트, 환경 변수 등 세부 사항 deployment ex) deployment.yml ## Kubernetes API의 버전 apiVersion: apps/v1 ## 리소스의 종류 kind: Deployment ## name등 리소스에 대한 메타데이터 metadata: name: gugbab-cicd-deployment ## 컨테이너 이미지, 포트, 환경 변수 등 세부 사항 spec: selector: matchLabels: app: gugbab-cicd-devops-project replicas: 2 template..

DevOps 2023.06.21

[DevOps] K8s - Kubernetes 란? Kubernetes 기본 명령어

https://kubernetes.io/ Production-Grade Container Orchestration Production-Grade Container Orchestration kubernetes.io Kubernetes 컨테이너 오케스트레이션 플랫폼으로서 대규모의 애플리케이션을 관리하고 배포하기 위한 플랫폼 오케스트레이션 컨테이너 기반의 애플리케이션을 운영할 때, 애플리케이션의 배포, 확장, 로드 밸런싱, 모니터링, 장애 복구 등 다양한 작업을 효율적으로 관리하는 것 Kubernetes 특징 컨테이너화 된 애플리케이션 구동 서비스 디시크버리와 로드밸런싱 기능 스토리지의 오케시트레이션 기능 자동화된 배포 기능 환경 변수, 스크릿 파일 등을 사용하여 애플리케이션을 구성 관리 Kubernetes ..

DevOps 2023.06.19

[IaC] Ansible이란? Ansible config,SSH 설정, module Test

Iac - Infrastructure as Code 인프라의 정보를 스크립트를 통해서 관리하는 것 버전 관리를 통한 리소스 관리가 가능하다. https://www.ansible.com/ Ansible is Simple IT Automation Ansible is the simplest way to automate apps and IT infrastructure. Application Deployment + Configuration Management + Continuous Delivery. www.ansible.com Ansible SSH를 통해 대상 서버에 접속하여 작업을 수행한다. 에이전트 없이 동작한다. 여러개의 서버를 효율적으로 관리할 수 있게 해주는 환경 구성 자동화 도구 Ansible에서 관리..

DevOps 2023.06.11