首先看一下Semaphore的主界面。点击User选项卡可以对用户Semaphore中的用户进行管理,界面右上角的用户名可以更改个人信息。Semaphore的使用主要依靠创建Project来完成。

Image

  1. 创建Project, 并填写Project Name.
  2. 首先,点击左侧的Key Store选项来添加需要的ssh key.

Image

  1. 点击Playbook Repositories选项添加要导入的playbook.这里的ssh key是从第二步里面我们导入到Semaphore里面的key来选择,如果你导入的Repo来源是Github, 那么选择的这个key需要已经导入到你的Github账号里面。这样才能成功clone你的playbook

Image

  1. Environment这个选项相当于我们ansible执行时带的一些参数,但注意这里需要导入JSON格式的字符串,类似这样 {"connection_type": "ssh", "remote_user": "ubuntu"}
  2. Inventory里面主要是填写我们需要远程连接的hosts:
    [webservers]
    web1
    web2
    
    [local]
    127.0.0.1
    
  3. Task Templates这个选项是用来创建我们要执行的任务。它由我们前几个环节组成。点击new template会出现下面的窗口,这里需要我们填写Alias和Name, 导入SSH Key, Inventory, Playbook Repo和Environment(可选)

Image

创建完成后我们可以点击面板中的Run来运行我们定义好的Task

  1. 界面左侧的User选项卡可以针对当前Project来添加删除用户。

Image

P.S. 目前Semaphore还不支持LDAP Link

下面是举一个例子,修改远程主机上的/etc/ssh/sshd_config,并重新加载ssh服务。

Image
Image
Image
Image
Image
Image
Image