1、新建與配置結點
【系統管理】-> 【管理結點】-> 【新建結點】
2、配置slave
說明:
Name:
定義slave的唯一名稱標識,可以是任意字符串,通常設置為slave主機名、ip地址
描述:
關於slave的描述,通常用於描述與其它salve的區別
# of executors:
來自官方描述:這個值控制着Jenkins並發構建的數量. 因此這個值會影響Jenkins系統的負載壓力. 使用處理器個數作為其值會是比較好的選擇。
增大這個值會使每個構建的運行時間更長,但是這能夠增大整體的構建數量,因為當一個項目在等待I/O時它允許CPU去構建另一個項目。
設置這個值為0對於從Jenkins移除一個失效的從節點非常有用,並且不會丟失配置信息
遠程工作目錄:
指定slave的工作目錄路徑。最好設置為絕對路徑,如“/var/jenkins”或“c:\jenkins”。這里填寫的是相對於slave主機的路徑,正常情況下,不必對master主機可見。
標簽:
標記(又叫做標簽),用來對多節點分組,標記之間用空格分隔.例如'refression java6'將會把一個節點標記上'regression'和'java6'。
舉例來說,如果你有多個Windows系統的構建節點並且你的Job也需要在Windows系統上運行,那么你可以配置所有的Windows系統節點都標記為'windows', 然后把Job也標記為'windows'.這樣的話你的Job就不會運行在除了Windows節點以外的其它節點之上了.
用法:
控制Jenkins如何在這台機器上安排構建.
1)盡可能的使用這個節點
這是默認和常用的設置. 在這種模式下,Jenkins會盡可能的使用這個節點.任何時候如果一個構建能使用這個節點構建,那么Jenkins就會使用它.
2)只允許運行綁定到這台機器的Job
這種模式下,Jenkins只會構建哪些分配到這台機器的Job. 這允許一個節點專門保留給某種類型的Job.例如,在Jenkins上連續的執行測試,你可以設置執行者數量為1,那么同一時間就只會有一個構建, 一個實行者不會阻止其它構建,其它構建會在另外的節點運行.
啟動方法:
控制Jenkins怎么啟動slave
1) Launch slave agents on Unix machines via SSH
通過SSH連接,發送命令來啟動slave。需要提供可以登陸slave主機的帳號,可以不具備root權限。
2)Launch slave agents via Java Web Start
通過JNLP啟動一個代理程序啟動slave。這種情況下,啟動是由slave初始化的,所以主機不一定要ip可達(比如隔着一層防火牆)[ The launch in this case is initiated by the slave, thus slaves need not be IP reachable from the master (e.g. behind the firewall.)]
3)Launch slave via execution of command on the Master
通融個從master上執行一個命令來啟動啟動slave。當master可以在salve上遠程執行一個進程,比如通過ssh/rsh,可以使用這個。
4)Let Jenkins control this Windows slave as a Windows service
不推薦。往往問題多多
Availability:
控制jekins何時啟動或停止slave。
1)Keep this slave on-line as much as possible
默認和常規設置。這種模式下,jenkins會盡量保持salve在線。如果不通過用戶援助,啟動slave, 如果slave不可獲取,jenkins將周期性的嘗試啟動slave。Jenkins不會主動讓slave 下線。
2)Take this slave on-line when in demand and off-line when idle
在這種情況下,jenkins可在沒有用戶援助的情況下啟動slave,當遇到滿足以下條件的不可執行任務時,jenkins將周期性的嘗試啟動slave:
>在隊列中等待時間已達指定啟動時間( startup demand period).
>可在slave上執行
slave將被下線,如果:
>slave上沒有活動任務在執行
>slave處於空閑狀態時間已達到指定的空閑時間(specified idle period)。
In demand delay:告訴Jenkins如果有Job需要在此節點構建,需要在任務隊列等待多長時間才會進入任務狀態進行構建
Idle delay:告訴Jenkins多少分鍾內如果沒有Job需要構建就離線
配置完后,查看Slave狀態如下:
3、點擊launch按鈕,這時會讓我們下載一個文件,下載到我們的slave節點的遠程工作目錄就可以了
然后雙擊slave-agent,出現connected說明連接成功
現在回到jenkins的管理節點頁面,slave節點的❌已經沒有了,說明連接成功
4、關聯項目,然后運行看看是否成功了
進入job的配置頁面,勾選Restrict where this project can be run,並且在Label Expression輸入奴隸節點的標簽名(一個標簽有可能對應多台slave節點),也可以輸入slave節點的名稱
5、構建觸發器
6、直接構建看看效果 java -version 檢查java版本
構建成功了,slave節點也是ok的
如何設置才能讓出來呢?
1:打開"系統管理"——"Configure Global Security"
2:TCP port JNLP agents 配置成"隨機",點擊"Agent protocols",打勾開啟"Java Web Start Agent Protocol3"
3:檢查Plugin Manager中"Enable Slave"需要打勾