꼬반 Blog

[rundeck] 설치 및 기본 작업 설정하기

http://rundeck.org/index.htmlJob Scheduler and Runbook Automation 일련의 workflow를 각 노드에 실행시켜주는 오픈 소스.사용하면 다양한 부분에서 활용이 가능하다. 기본적으로 현재 설치 및 테스트하고 있는 부분은각 Tomcat 서버에 war 파일을 새로 배포할때 workflow는 단순하지만직접 톰캣을 멈추고 war 업로드, 다시 올리는 작업을 자동화 하기 위해서. RUNDECK 서버에 war 파일을 업로드 후 미리 만들어둔 JOB 을 RUN 하여 끝내자는 목표로컬 서버 대상은 실험 완료원격 서버 추가 후 실험 진행 중테스트가 완료되면 개발자가 빌드한 war 파일을 rundeck의 project 내에 특정 폴더에 업로드 (kobic, kobis, pa..

Read More

[rundeck] 설치 및 기본 작업 설정하기

http://rundeck.org/index.html

Job Scheduler and Runbook Automation

 

일련의 workflow를 각 노드에 실행시켜주는 오픈 소스.

사용하면 다양한 부분에서 활용이 가능하다.

 

기본적으로 현재 설치 및 테스트하고 있는 부분은

각 Tomcat 서버에 war 파일을 새로 배포할때 workflow는 단순하지만

직접 톰캣을 멈추고 war 업로드, 다시 올리는 작업을 자동화 하기 위해서.

 

RUNDECK 서버에 war 파일을 업로드 후 미리 만들어둔 JOB 을 RUN 하여 끝내자는 목표

로컬 서버 대상은 실험 완료

원격 서버 추가 후 실험 진행 중

테스트가 완료되면

 

개발자가 빌드한 war 파일을 rundeck의 project 내에 특정 폴더에 업로드 (kobic, kobis, patome, biodata 등)

웹에서 해당 job 실행.

배포 완료

 

(현재)

빌드한 war 파일을 삼바서버나 메신져로 받음

해당 서버에 접속해서 war 올림

톰캣 서버 정지

war 복사

톰캣 서버 시작

X 배포 수

 

-- 추가 --

리모트 노드의 tomcat 에 war 배포 테스트 완료

 

rundeck 에서 rsa 키 생성.  # ssh-keygen -t rsa

생성한 key 를 리모트 서버 노드에 키 추가 시켜 줌 # ssh-copy-id user@123.45.56.78

대상 서버의 sshd_config 옵션을 아래와 같이 수정

(현재는 RootPermit 을 no 로 사용하는데 이걸 수정)

# PermitRootLogin without-password

위 작업 시 root 로 remote 연결이 한번 필요하므로 permit yes 로 한번 해주고 작업 해야 된다.

 

이 작업 후 rundeck 서버의 해당 project 폴더안 etc 폴더 내에 resources.xml 에 다음과 같이 노드를 추가 후 rundeck 을 재시작 해준다.

<?xml version="1.0" encoding="UTF-8"?>
<project>
  <node name="nodename" description="Rundeck server node" tags="" hostname="hostname" osArch="amd64" osFamily="unix" osName="Linux" osVersion="3.10.0-327.36.1.el7.x86_64" username="root"/>
</project>
재시작 후 Job에 다음 부분을 아래처럼 선택 한다.

Execute locally -> Dispatch to Nodes 로 변경후 Filter 에서 Job을 돌릴 Node 선택 후 Save

이후 Run 시키고 결과를 확인



정상적으로 실행이 된걸 확인할 수 있다.
이걸로 배포 작업을 자동화 할 수 있다.


반응형

Article By 꼬반

*certificate* : VCP 5(2012), RHCSA 7 (2014), RHCE 7 (2015), RHCSA in REDHAT OpenStack(2017) *development language* : Javascript, NodeJS, Golang, html5, css3, shell script *middle ware* : NGINX, Apache, Tomcat, Docker, Docker Swarm, Mesos, Kubernetes, HCI,

Discuss about post