목록전체 글 (244)
오늘도 한 뼘 더

Jenkins job에 대해서 pipeline으로 작성을 할 때 빌드 및 배포에 대한 결과에 따라서 다른 작업을 두 가지 방법으로 진행할 수 있다. # try / catch 사용하기 pipeline { agent any stages { stage('Checkout') { steps { script { try { build job: 'jenkins_job', parameters: [ string(name: 'parameter_name', value: "${parameter_value}")] } catch (e) { catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE') { sh "exit 0" echo "error" } echo 'TEST Fail! But..

# 배경 보통 데이터 백업받을 때 워크벤치에서 export를 사용하거나 mysqldump를 사용했는데, 대부분 전체 데이터를 백업하면 돼서 조건에 맞는 특정 데이터만 받을 일이 없었는데 데이터를 나눠서 백업해야 하다 보니 특정 행들만 dump 해야 하는 상황이 발생하였다. 이때 where문을 쓸 수 있는 것을 확인했다. # 데이터만 백업하기 --no-create-info 옵션을 사용한다. mysqldump -h {hostname} -u {username} -p --no-create-info=TRUE {database} {table} > dump.sql # 조건 추가해서 데이터 백업하기 --where 옵션을 사용한다. mysqldump -h {host} -u {username} -p --no-create-..

# 데이터 백업 mysqldump 명령어를 통해서 데이터 백업을 진행 mysqldump -h ${HOST_NAME} \ -u {USER} \ -p \ --set-gtid-purged=OFF ${DATABASE_NAME} > dump.sql set-gtid-purged=OFF : mysql 서버의 사용자와 데이터를 백업, 복원하는 사용자가 달라도 문제가 안 생기도록 설정하는 명령어 # 데이터 복원 1. 백업을 할 때 스키마 또는 데이터베이스를 같이 만들어 주는 명령어를 포함한 파일로 복원할 경우 mysql -h ${HOST_NAME} -u {USER} -p < dump.sql 2. 데이터와 테이블 구조만 백업이 된 파일일 경우 mysql -h ${HOST_NAME} -u {USER} -p ${DATABAS..

# 배경 이전에 제공되던 GitLab을 사용할 때 언급을 하거나 MR이 올라올 때에 이메일이 왔었는데 직접 GitLab 이미지를 받아서 올리고 난 뒤부터 이메일 기능이 작동하지 않는 것을 알았다. 이메일을 받을 수 있도록 GitLab을 설정하도록 하자. # GitLab 설정 변경하기 GitLab의 환경설정 등은 gitlab.rb를 통해서 변경할 수 있다. gitlab.rb의 내용을 다음과 같이 작성하여 gmail을 통해서 이메일 발송을 진행하였다. gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.gmail.com" gitlab_rails['smtp_port'] = 587 gitlab_rails['smtp_user_name']..

# Helm uninstall helm chart를 사용하여 설치한 리소스에 대하여 제거할 때 사용한다. helm uninstall RELEASE_NAME [...] [flags] 예시 helm uninstall prometheus prometheus-community/prometheus -n monitoring # Helm upgrade helm chart를 사용해서 설치한 리소스에 대한 값을 변경할 때 사용한다. 값을 업그레이드할 때 두 가지 방법으로 진행할 수 있다. helm upgrade [RELEASE] [CHART] [flags] 1. yaml 파일을 새로 작성해서 값을 업그레이드하기 helm upgrade prometheus -f new-values.yaml -n monitoring 2. '..

# helm 차트 받아오기 helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo update # 프로메테우스 관련 git clone git clone https://github.com/prometheus-community/helm-charts.git # values.yaml 변경 helm-charts/charts/prometheus 경로에 있는 values.yaml 파일에 대해서 사용하고자 하는 방식으로 변경한다. nodeSelector nodePort server: name: server nodeSelector: monitor: ok ... service: servicePort: 909..

# Helm 설치하기 Helm 다운로드 및 설치 $ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 $ chmod 700 get_helm.sh $ ./get_helm.sh Helm 버전 확인하기 $ helm version

# 배경 데이터를 dump 한 뒤에 다시 import 하려는 sql문을 작성했다. # 문제 mysql -h 127.0.0.1 -u root -p < dump.sql 위의 sql문을 실행했는데 다음과 같은 에러 메세지가 발생하였다. ERROR 1046 (3D000) at line : No database selected # 해결 방법 import하려고 하는 파일에 "use database" 구문이 없어서 발생한 문제이다. 파일 편집기를 켜서 "use database;"를 추가할 수도 있지만 dump 한 파일의 용량이 크면 편집기를 여는데 부하가 걸릴 수 있어서 mysql구문에 데이터베이스 선택을 다음과 같이 작성했다. mysql -h 127.0.0.1 -u root -p --database=jihyunb ..

# MySQL 설치하기 1. mysql 설치 $ brew install mysql 2. mysql 서비스 시작 $ mysql.server start 3. mysql 관련 기본 설정 진행 처음 세팅에 대한 내용 및 password의 복잡도, 원격 접속 가능 여부 등에 대한 설정을 진행한다. $ mysql_secure_installation 4. mysql 접근 확인 설정한 비밀번호를 통해 접근했을 때 "mysql >"과 같이 출력되면 동작이 되는 것이다. $ mysql -u root -p mysql> # MySQL WorkBench 설치하기 MySQL 공식 페이지에서 mysql 다운로드 받는다 https://dev.mysql.com/downloads/workbench/ MySQL :: Download My..

# brew 설치하기 1. brew 내려받기 $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 내려받고 설치한 뒤에 brew 명령어를 사용하면 여전히 찾지 못한다. 2. alias 설정하기 다음 명령어로 brew 명령어가 동작할 수 있도록 설정한다. # zshrc에 homebrew path 추가 $ echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.zshrc # zshrc 반영 $ source ~/.zshrc 다시 brew 버전을 확인하면 명령어가 제대로 동작한다. $ brew --version