반응형

노드란 무엇인가

노드란?

젠킨스에서 주로 빌드를 목적으로 별도의 컴퓨터를 지정하는 것을 노드라고 합니다.

슬레이브, 빌드전용머신 이라고 말합니다.

우리는 다양한 빌드환경이 존재하기 때문에 그에 맞게 빌드하려면 각자 환경에 맞는 컴퓨터가 필요합니다. 그것을 노드라고 합니다.

별도의 컴퓨터를 노드야!라고 지정하거나

윈도우즈에는 별도의 에이전트를 제공해줍니다. 또한

리눅스나 맥에서는 SSH통해 접속하는 방법으로 노드를 사용합니다. 

 

마스터라고 하는 애가 관리합니다.

얘는 윈도우즈다 보니까 맥이나 IOS용으로는 빌드를 하지 못합니다.

 

[사진]

 

정적분석을 해야하는데.. 

윈도우즈 하나 갖다놓고 너는 정적분석만해. 정적분석 전용 머신으로 할 수도 있고.

GCC로 리눅스에 빌드머신 둘 수 있고 이런식으로 운영할 수 있습니다.

각각의 노드 노드 노드가 될 수 있습니다.

 

노드를 추가하는 방법은

젠킨스 관리 > 노드관리 > 신규노드로 접속하면된다. 노드명을 넣으면 됩니다.

 

다음과 같이 상세히 적을 수 있습니다.

[사진]

 

마스터는 기본값이 2입니다. 마스터는 빌드잡을 동시에 2개를 처리할 수 있습니다.

만약 성능이 뛰어나고 다른 빌드도 같이할 수 있으면 2-3개 할 수 이습니다.

Remote root directory는 무엇이냐?

노드에 젠킨스를 처리하기 위한 폴더하나를 말합니다.

보통은 C:\jenkins 이고 없으면 자기가 빌드할때 자동으로 만듭니다.

Labels은 적지않으면 Name이랑 같은 의미를 갖고 있습니다.

 

Usage같은 경우는 최대한 사용할거냐 제약적으로 사용할 것이냐 라는 말입니다.

Launch method 같은 경우는 윈도우는 아래와 같이 되어있다. 리눅스나 맥에선 ssh.

 

윈도우즈는 Use WebSocket으로해야지 원활히 작업이 잘됩니다. 이걸 해제하면 연결이 잘 안되는 경우가 생깁니다.

 

Node에 접속하기

제가 만약 노드에요. 내가 젠킨스 마스터와 어떻게 연결하지? 라고 생각할 수 있다.

ssh 서버가 열려있으면 젠킨스 마스터가 알아서 접속해서 일을 처리하고 그럴 것입니다.

하지만 윈도우즈에서 젠킨스를 접속하시면 우리가 만들었던 이름이 있을텐데 그걸 클릭하고 들어가면

아래의 사진처럼 메시지가 쭉 나옵니다. 자바 명령입니다. 그때 agent.jar파일을 지정해서 실행하네요?

하지만 나는 이게 없는게 어떡하죠? 

클릭하면 다운로드가 됩니다. 이걸 C:\jenkins에 옮깁니다.

그리고 전체문장(명령문)을 복사하여 C:\jenkins 에서 실행을합니다.

그럼 젠킨스 마스터와의 연결을 시도합니다. 복사해서 붙여넣기를 했습니다. 메시지 쭉 읽다가 커넥티드가 됩니다.

 

노드쪽에서 마스터와 연결을 했고 만약에 필요하면 방화벽해제가 필요할 것입니다. 아래의 사진.

windows에서 한번, 네트워크 보안장비에서 1번 풀어야합니다.

 

다음 실습은

신규 Node를 위한 가상 PC 생성 및 설정

- java, Git, VS Tools 설치 및 설정

java는 왜필요하냐? 자바를 이용해서 젠킨스의 마스터와 노드를 연결하기 때문입니다. 이걸 확인하는 부분까지 진행하도록 하겠습니다.

 

Node 설정

- Node 생성

- Node 머신에서 연결 및 확인.

 

반응형

'젠킨스(Jenkins)' 카테고리의 다른 글

Node 이해 및 추가 실습  (0) 2021.05.18