본문 바로가기
반응형

DevOps74

TeamCity ServerUrl 변경하기 TeamCity가 설치된 서버의 도메인 주소가 변경되면 등록된 server Url을 같이 변경해주어야 합니다. Github OAuth의 Redirect URL등과 같이 TeamCity 서버 주소를 생성하는 기능들이 모두 예전 도메인으로 진행되기 때문인데요. 해당 설정을 Web 에서는 쉽게 변경할 수 있지만, 로그인 조차 안되는 상황에선 설정파일을 직접 수정해야 합니다. 그래서 여기서는 서버의 설정파일을 직접 수정하는 방법으로 진행하겠습니다. 본문 먼저 TeamCity의 Data Directory (여러 설정들이 담긴 디렉토리로 보시면 됩니다) 위치를 확인합니다. 보통은 TeamCity 설치된 위치/.BuildServer 입니다. 해당 위치가 아니시라면 아래와 같이 로그를 통해 위치를 확인합니다. vim .. 2019. 9. 8.
젠킨스 빌드 파일 캐시 문제 젠킨스를 통해 Github Clone -> Build를 하다보면 다음과 같이 이름이 변경된 파일의 이전 파일이 그대로 남아 있는 경우를 종종 보게 됩니다. 아래 사진은 01-makeFiles.config였던 파일을 00-makeFiles.config로 변경했는데 그대로 00도 남아있는 경우입니다. (실제 프로젝트에서는 이미 01-makeFiles.config 파일이 존재하지 않습니다.) 이는 젠킨스의 workspace가 완전히 초기화 되지 않기 때문입니다. 젠킨스의 경우 npm install 등 패키지 다운로드가 매번 build때마다 발생하는 것을 막기 위해 workspace를 삭제하지 않고 덮어 쓰기 방식으로 진행됩니다. 이런 문제를 해결하기 위해 젠킨스에서는 빌드 환경에서 한가지 옵션을 제공 합니다... 2019. 9. 6.
4. Ansible (앤서블) 로 전체 서버 사용자 추가하기 - Jenkins&Github 연동하기 이번 시간에는 앤서블로 전체 서버 사용자 추가하기 시리즈의 마지막! Jenkins&Github로 관리하기 입니다. 그간 리눅스 서버의 터미널에서만 관리하던 앤서블을 개선해보겠습니다. 이번 시간에 앞서 진행되야할 것들이 있습니다. 일단 앤서블 호스트 서버에 젠킨스가 설치 되어 있어야 하며, 해당 젠킨스는 작성중인 앤서블 플레이북 코드가 담긴 깃허브 저장소와 연동되어 있는 상태여야 합니다. 안되어 있으신 분들은 아래 링크를 참고하여 진행해주시면 됩니다. 젠킨스 설치 젠킨스와 깃허브 프로젝트 연동 환경 설정이 다 되신분들은 아래 내용을 차례로 진행합니다. 1. Github 관리로 전환 먼저 플레이북을 Github으로 관리할 수 있도록 이관하겠습니다. 여기서는 플레이북 파일과 인벤토리 파일의 관리 방법을 다르게.. 2019. 8. 26.
젠킨스와 Github ssh 연동하기 젠킨스와 Github 연동시에 사용자명과 비밀번호 인증방식은 보안상 추천하지 않는 방식입니다. 물론 테스트 용도로만 사용하는건 문제 없지만, 실제 서비스에서 그렇게 사용하는 회사는 없습니다. 그래서 젠킨스와 Github 간 SSH 연동 방식을 어떻게 하는지 간단하게 소개합니다. 1. 키 생성 현재 실행중인 젠킨스 사용자를 확인합니다. ps aux | grep jenkins 특별히 설정하지 않으면 jenkins 사용자로 실행중입니다. 젠킨스가 jenkins 사용자로 실행중인게 확인되었다면 현재 사용자를 jenkins로 전환합니다. chown 명령어로 파일들을 변경해도 되지만 편하게 jenkins 사용자로 변경하고 모든 명령어를 수행하겠습니다. sudo -u jenkins /bin/bash jenkins 사.. 2019. 8. 17.
EC2 (Amazon Linux 1) 에 Jenkins 설치하기 아마존 리눅스 1에서 Jenkins 설치 하는 방법이 여기저기 퍼져있어, 하나의 글로 정리합니다. 1. 버전 확인 먼저 현재 자신의 서버가 아마존 리눅스 1이 맞는지 확인합니다. 기억이 안나신다면 서버에서 아래 명령어로 버전을 확인합니다. cat /etc/*release Linux2가 적혀있지 않다면 1이 맞으니 그대로 진행하시면 됩니다. Linux1의 경우 실제로 Centos 6.x 버전이라 Centos 6을 쓰시는 분들도 동일하게 쓰시면 됩니다. 2. Jenkins 설치 먼저 yum update로 최신화 합니다. sudo yum update -y 그리고 Jenkins를 설치해보겠습니다. 여기서 다른 서비스들 처럼 yum으로 Jenkins를 설치하려고 하실텐데요. 기본 패키지에는 Jenkins가 포함되.. 2019. 8. 13.
3. Ansible (앤서블) 로 전체 서버 사용자 추가하기 - 플레이북으로 개선하기 이번 시간에는 앤서블의 플레이북 (Playbook) 을 통해 그동안 CLI를 하던 방식을 개선해보겠습니다. 모든 코드는 Github에 있습니다. 3-1. 플레이북? 앤서블 공식 홈페이지의 플레이북 소개를 한번 보겠습니다. 플레이북은 앤서블의 설정/배포/오케스트레이션 (역주. 통합자동화/통합솔루션등) 언어 입니다. 호스트서버에서 시행할 정책이나 일반적인 시스템 프로세스의 단계를 설정할 수 있습니다. 만약 앤서블의 모듈이 작업장의 도구라면, 플레이북은 지침서, 호스트들의 인벤토리는 원재료입니다. 소개글을 살짝만 보더라도 플레이북이란 앤서블의 명령을 모아놓은 설계서와 같다는 것을 알 수 있습니다. 플레이북은 쉘이나 DSL (Domain Specific Language, 특정 도메인에 특화된 언어) 과 같은 프.. 2019. 8. 9.

728x90