전체 글
-
[Jenkins] 파이프라인 트리거 지정, cron , pollSCMCICD 2023. 1. 26. 23:13
트리거 이벤트를 지정하는 방법 웹 인터페이스를 통해 프로젝트 일반 구성 섹션을 이용 스크립트 파이프라인의 properties 코드를 이용 선언적 파이프라인의 triggers 지시문을 이용 참고 Multibranch Pipeline, GitHub 조직, Bitbucket 팀을 이용한 프로젝트 작업의 경우 위에 나열된 방법을 통해 트리거를 지정하지 않습니다. 몇몇 트리거 이벤트 Github Webhook 특정 URL 접근 특정 Job의 종료 Jenkinsfile의 변경 스크립트 파이프라인의 properties에 이전 Job을 트리거로 설정 #'Job' 이라는 작업이 성공한 후 파이프라인이 실행되는 구문 properties([ pipelineTriggers([ upstream( threshold: hudson..
-
[Jenkins] 작업을 실행할 특정 노드를 지정하기 , 연산자를 이용한 노드 지정 , parallel 구문CICD 2023. 1. 26. 16:14
Jenkins DSL을 이용한 스크립트 DSL을 이용한 스크립트를 작성할 때 특정 노드를 지정하여 작업을 실행하기 node (#실행하길 원하는 노드명) { stage('source') { } } EX) node ('worker') { stage('source') { } } + 1. 표준 논리 피연산자를 이용하여 여러 레이블을 지정할 수 있습니다. EX 1) node ("windows && korea") { stage('source') { } } EX 2) node ("east || west") { stage('source') { } } 2. 병렬 작업에서 각 작업에 노드를 지정하여 작업을 진행할 수 있습니다. parallel ( win: { node ('windows'){ ... }}, linux: { ..
-
[Jenkins] 파이프라인의 스크립트와 Jenkins 시스템 종류CICD 2023. 1. 26. 15:33
스크립트 종류 스크립팅 파이프라인( Scripted Pipelines ) 'node'을 시작으로 스크립트 작성 시작 장점 적은 섹션으로 작성 가능 비교적 절차적인 코드로 작성 가능 프로그래머에게 친화적인 구조 Jenkins의 이전 버전에 사용된 스크립트와 호환 가능 사용자 지정 작업을 수행할 수 있음 단점 일반적으로 더 많은 프로그래밍이 필요 Groovy 언어 및 환경으로 제한된 구문 검사 워크플로우를 표현하기 위해 비교적 더 복잡함 선언적 파이프라인( Declarative Pipelines ) 'pipeline'을 시작으로 스크립트 작성 시작 장점 Jenkins 웹 양식의 기존 섹션과 비슷한 구조 선언하는 기능 -> 가독성이 높음 Blue Ocean을 통해 생성 가능 알림과 같은 친숙한 Jenkins ..
-
[Jenkins] 몇몇 요소들CICD 2023. 1. 25. 22:50
참고 DSL은 Domain-Specific Language 약어로 Jenkins의 프로그래밍 언어입니다. Groovy 기반이며 Jenkins 관련 기능을 캡슐화하는 용어와 구성을 포함하고 있습니다. Jenkinsfile Jenkins에 파이프라인을 정의할 때 사용하는 파일입니다 구버전 Jenkins에서는 파이프라인의 정의가 Jenkins 서버의 홈 디렉터리에 파일이 생성되고 관리되었는데 최신의 Jenkins는 웹 인터페이스에서 DSL 스크립트 및 Jenkins 서버 외부의 텍스트파일에 작성된 DSL 스크립트(Jenkinsfile)로 관리가 가능합니다. Jenkinsfile은 파이프라인에 사용되는 프로젝트를 인식하는 마커로서의 역할을 할 수 있습니다. 파이프라인을 관리에 대한 권한을 가진 Jenkinsfi..
-
[K8s] 컨트롤러 - DaemonSet, Job, CronJob도커 | 쿠버네티스 2023. 1. 24. 13:17
DaemonSet 모든 노드에 특정 파드를 최소 실행 되어야 할 개수 설정 및 생성을 한다. Deployment와 같이 롤링 업데이트와 롤백이 가능하다. 예시 apiVersion: apps/v1 kind: DaemonSet metadata: name: DSnginx annotations: kubernetes.io/change-cause: version 1.16 spec: selector: matchLabels: app: web # matchExpressions: #- {key: version, operator: In, values: ["1.14","1.15"]} template: metadata: name: nginx-pod labels: app: web # version: "1.14" spec: con..
-
[K8s] 컨트롤러 - Replication Controller, ReplicaSet, Deployment도커 | 쿠버네티스 2023. 1. 24. 11:25
Controller의 기능 Auto Healing 노드의 이상이 발생하여 파드에 이상이 생겼을 때, 다른 노드에 해당 파드를 생성한다. Auto Scaling 과도한 부하로 인해 추가적인 파드 생성이 필요할 경우 자동으로 파드를 생성한다. Software Update 컨테이너 이미지에 변경사항이 생겼을 때 실행되고 있는 모든 파드에 변경사항을 적용한다. Job 일 회 또는 주기적 사용이 필요한 컨테이너 이미지를 일 회 또는 주기적으로 실행한다. Replication Controller 지정한 pod의 수를 유지시키는 컨트롤러이다. selector를 통해 template에 있는 pod를 선택하는 기준자 → label이 선택자이다. 요소 replicas - 생략하면 replicas: 1로 디폴트 실행된다. ..
-
파이프라인 설계를 위한 고려사항데이터 엔지니어링 2023. 1. 18. 14:48
데이터 소비자 식별 및 요구 사항 이해 데이터를 소비자와 데이터 소비방식을 파악한다. 데이터 소스 식별 및 데이터 수집 데이터를 수집 원천과 수집하는데 사용하는 도구를 파악한다. 데이터 변환 및 최적화 식별 파일 형식 최적화 읽기에 적합한 텍스트 파일을 컴퓨터 기반 분석에 적합한 Apache Parquet 형식으로 변경 데이터 표준화 동일한 항목의 데이터가 다른 형식으로 저장된 것을 동일한 형식으로 통일 데이터 품질 확인 데이터 파티셔닝 리소스를 절약하고 속도를 높이는 방법, 자주 사용되는 필드별로 물리적 스토리지 계층의 데이터를 그룹화하여 데이터를 분할 데이터 비정규화 정규화를 통해 테이블에 저장되어 있는 데이터를 하나의 테이블로 통합 데이터 카탈로그 데이터 세트를 분류하고 저장되는 데이터 세트의 메타..
-
데이터 보안 및 거버넌스 in AWS데이터 엔지니어링 2023. 1. 18. 12:43
데이터 암호화 및 보안 모니터링을 위한 AWS 서비스 KMS ( AWS 키 관리 서비스 ) AWS 서비스에서 데이터를 암호화하고 해독하기 위한 보안 키 생성 및 관리 프로세스를 간소화하는 서비스 Amazon Macie 패턴 일치와 함께 기계 학습을 사용하여 중요한 데이터, 이름, 주소, 신용 카드 번호 등을 검색하고 사용자에게 알림을 전송하여 보호하는 관리형 서비스 Amazon GuardDuty 기계학습을 사용하여 CloudTrail S3 데이터 이벤트, CloudTrail 관리 이벤트, VPC 트래픽 로그, DNS 로그를 확인하여 AWS 계정을 모니터링하고 악의적인 활동 및 무단 동작에 대한 사전 경고를 제공하는 지능형 위협 탐지 서비스 CloudTrail S3 데이터 이벤트 S3 객체에서 수행된 모든..