2016-07-29 68 views
1

我對Rundeck頗爲陌生,正在評估它作爲詹金斯的替代品來運行我們的自組織作業任務。Rundeck - 作爲不同的用戶在本地主機上運行作業

我們在Rundeck服務器上有所有需要作爲特定用戶運行的命令&腳本,例如:ubuntu。

我試圖改變配置在一些地方,如/etc/rundeck/framework.propertiesframework.ssh.user = ubuntu的)和/var/rundeck/projects/myproject/etc/resources.xml (爲localhost節點設置username =「ubuntu」),但我的工作始終以用戶'rundeck'運行,這非常令人沮喪,因爲起初我認爲實現它應該很簡單。

那麼,我錯過了什麼或Rundeck無法在本地運行腳本作爲不同的用戶'rundeck'?

UPDATE: 我找到了一個解決方案,現在,這是使用腳本一步,然後在高級選項調用字符串我可以像「命令-u Ubuntu的」設置爲使我的腳本的Ubuntu從rundeck運行。

但是,使用該sudo仍然不太方便,例如環境變量保留問題。

+0

你可以讓腳本自己運行所需的用戶嗎? – Fabio

+0

@Fabio實際上我們必須將它作爲'ubuntu'來運行,以便與我們正在使用的其他工具和框架兼容。我們有很多腳本或命令可能會調用其他工具 - 這使得它們都需要切換到Ubuntu本身,現在對我們來說不是一種選擇。 – Arcobaleno

+0

運行其他腳本作爲Ubuntu的單個腳本怎麼樣?您可以將原始腳本作爲第一個參數傳遞,其他參數如下所示。這更現實嗎? – Fabio

回答

0

@Arcobaleno你將不得不派遣到運行平臺服務器使用ssh設置。未調度的「本地命令」或命令步驟使用作爲插件點的本地節點執行器。您可以創建一個本地節點執行程序,以隱式sudo給您想要的用戶並運行該命令。

+0

你能告訴更具體的,因爲這是對我來說很新,我嘗試使用命令,腳本,本地命令,也嘗試在目標節點(本地主機)在命令選項卡上運行命令,似乎沒有人使用我的SSH配置,是你提到的任何一個本地節點執行器?如果不是我可以創建本地節點執行程序? – Arcobaleno

0

你需要從你本地主機SSH到你的本地主機(假裝本地主機爲遠程服務器)。

[ubuntu]$ ssh [email protected] with passwordless ssh. 

複印id_rsa.pub~/.ssh/authorized_keys。 (id_ras.pub存儲在默認位置/var/lib/rundeck/.ssh/id_rsa.pub.)。

然後你就可以使用你的ubuntu env來運行你的程序。

這適用於我。

相關問題