| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- VectoreStore
- queue
- docker
- modbus
- javascript
- CI/CD
- frontend
- monorepo
- heapq
- AI
- 프로그래머스
- 파이썬
- build
- OpenAI
- DP
- ansible
- BFS
- typescript
- python
- dfs
- jenkins
- Infra
- turbo
- javascirpt
- React
- LLM
- 알고리즘
- Two Pointer
- rag
- Algorithm
- Today
- Total
목록CI/CD (8)
DM Log
Jenkins Master + SlavesJenkins SlaveRemote에서 실행되는 Jenkins 실행 NodeJenkins Master 요청 처리Master로 부터 전달된 Job 실행다양한 운영체제에서 실행 가능Jenkins 프로젝트 생성 시 특정 Slave 선택 실행 가능Jenkins Slave 추가새로운 Server 추가Windows, MacOS intel chip) docker run --privileged --name jenkins-node1 -itd -p 30022:22 -e container=docker -v /sys/fs/cgroup:/sys/fs/cgroup --cgroupns=host edowon0623/docker:latest /usr/sbin/initMacOS silicon c..
SonarQubeSonarQube 란?코드 품질과 보안 취약점을 분석하는 정적 코드 분석 도구개발자가 작성한 코드를 자동으로 검사하여, 버그(Bugs), 취약점(Vulnerabilities), 코드 스멜(Code Smells) 등을 탐지하고 리포트 형태로 제공Docker Desktop을 통한 SonarQube 다운로드 docker pull sonarqubedocker run --rm -p 9000:9000 --name sonarqube sonarqubeSonarQube + MavenMaven Project에 Plugin 설정 추가pom.xml에 plugin 등록 Sonar Maven Plugin 설치 (youtPluginVersion 버전 등록)https://docs.sonarsource.com/son..
Create a PipelineJenkins의 item들을 여러개를 연결하여 구축Jenkins에서 시각화Manage Jenkins → Plugin Manager → AvailablePlugin : Delivery Pipeline 추가MY View 추가 진행 (Delivery Pipeline View 선택)Component에 원하는 Item 선택Jenkins PipelineDeclarative단순하고 구조화된 파이프라인 문법pipeline { ... } 블록으로 시작하며, 명확한 문법 구조pipeline { agent any stages { stage('Build') { steps { echo 'Building...' ..
Ansible + Kubernetes 연동Docker Container 내부에 운영되는 Ansible-server와 playbook을 이용하여 Kubernetes를 제어Ansible에서 Kubernetes 제어Ansible 접속docker exec -ti ansible-server bashAnsible 내부 hosts 파일 생성[ansible-server]localhost[kubernetes]192.168.x.x. (host pc Ip)ssh 키 복사 (비밀번호 없이 접속 가능하도록 설정) - Linuxssh-keygenssh-copy-id user@192.168.x.x (hostPC 정보)ssh 키 복사 (비밀번호 없이 접속 가능하도록 설정) - windowansible-server에서 id_rsa.p..
인프라 패러다임의 변화전통적 배포 방식과거에는 하나의 물리 서버 위에 하나의 애플리케이션만을 설치 운영 방식이 일반적서버 자원이 비효율적으로 사용애플리케이션 간 환경 충돌 발생유지 보수 및 배포 작업 복잡애플리케이션마다 별도의 서버를 운영해야 하므로 비용과 관리 부담이 커지는 문제서버 가상화Hypervisor를 이용해 하나의 물리 서버 위에 여러 개의 가상 머신을 구동구성 요소:Hypervisor: 하드웨어 자원을 분리해 여러 가상 머신에 할당VM(가상 머신): 각자 독립적인 OS를 포함해 완전한 시스템처럼 동작장점:하나의 서버에서 여러 서비스 운영 가능각 애플리케이션이 독립된 OS 위에서 동작하므로 보안 격리 우수단점VM이 별도의 OS를 포함하므로 자원 사용량이 큼부팅 속도 느림, 배포 단위가 큼컨테이..
Infrastructure as Code란?코드로서의 인프라라는 뜻으로, 서버, 네트워크, 스토리지, 로드밸런서 등의 인프라 구성을 코드로 관리하고 자동화하는 개념콘솔에 접속해 서버를 설치하고 네트워크를 구성했지만, IaC를 이용하여 스크립트나 설정 파일로 정의하고 자동화된 배포를 수행IaC의 중요성자동화 - 사람이 직접 설정 필요 없이, 코드를 통해 자동 환경 구성일관성 - 모든 환경이 동일하게 설정속도 향상 - 서버 추가, 배포, 스케일링 작업이 몇 분 내로 완료재현성 - 인프라 문제 발생 시 동일 환경을 빠르게 복원협업 강화 - 인프라를 코드로 관리하므로 개발자, 운영자가 동일 기준으로 작업Ansible 이란?단순 자동화 도구를 넘어, 설치 - 배포 - 실행 등 시스템 관리 전반을 커버할 수 있는 ..
CI/CD를 위한 GIT, Maven 설정CI/CD의 핵심은 소스 관리(Git) 와 빌드 자동화(Maven)Jenkins가 이 둘을 인식하고 자동화하려면 플러그인과 전역 설정이 필요Jenkins Git Plugin 설정플러그인 설치Jenkins 관리 → Plugin Manager → AvailableGit, Git API Plugin 설치설치 후 Jenkins 재시작Global Tool Configuration에서 Git 설정Jenkins 관리 → Global Tool Configurationdocker exec -ti jenkins-server bashgit --versionJenkins Maven Plugin 설정플러그인 설치Jenkins 관리 → Plugin Manager → AvailableMav..
Waferfall vs AgileWaferfall 모델순차적 개발 방식으로 요구사항 → 설계 → 개발 → 테스트 → 배포 단계가 명확히 구분각 단계가 완료되어야 다음 단계로 진행장점: 문서화와 절차가 명확단점: 변경 대응이 어렵고 피드백 주기 김Agile 모델반족적 이며 짧은 개발 주기 단위로 피드백 반영팀 간 협업과 지속적인 개선 중신DevOps, CI/CD 문화의 근가이 되는 개발 철학 Cloud Native Application클라우드 확경에서 탄력적으로 동작하도록 설계된 애플리케이션MSA애플리케이션을 여러 독립 서비스 단위로 분리각 서비스는 자체 배포, 확장, 장애 복구 가능예: 주문 서비스, 결제 서비스, 사용자 인증 서비스 등Inner Architecture마이크로서비스 내부 구조핵심 요소:R..
