首先定义pillar

[root@web1 pillar]# cat hostname.sls
ip_hostname:
10.1.1.1: web1
10.1.1.2: web2
10.1.1.3: mysql1
10.1.1.4: redis1
10.1.1.5: tomcat1
10.1.1.6: dubbo1
10.1.1.7: zabbix1

在top.sls中调用

[root@web1 pillar]# cat top.sls
base:
'*':
- hostname

编写状态模块,根据ip通过pillar判断对应的主机名。

[root@web1 base]# cat set-hostname.sls
{% set ip = salt['network.interface_ip']('eth1') %}
alter_hostname:
cmd.run:
- name: hostnamectl set-hostname {{ pillar['ip_hostname'][ip] }}

测试执行

[root@web1 base]# salt-ssh  '*' state.sls set-hostname  test=True
tomcat1:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname tomcat1
Result: None
Comment: Command "hostnamectl set-hostname tomcat1" would have been executed
Started: ::50.085925
Duration: 0.949 ms
Changes: Summary for tomcat1
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 0.949 ms
web1:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname web1
Result: None
Comment: Command "hostnamectl set-hostname web1" would have been executed
Started: ::53.455021
Duration: 0.814 ms
Changes: Summary for web1
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 0.814 ms
dubbo1:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname dubbo1
Result: None
Comment: Command "hostnamectl set-hostname dubbo1" would have been executed
Started: ::51.212502
Duration: 0.817 ms
Changes: Summary for dubbo1
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 0.817 ms
mysql1:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname mysql1
Result: None
Comment: Command "hostnamectl set-hostname mysql1" would have been executed
Started: ::50.058353
Duration: 7.89 ms
Changes: Summary for mysql1
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 7.890 ms
web2:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname web2
Result: None
Comment: Command "hostnamectl set-hostname web2" would have been executed
Started: ::51.869016
Duration: 0.85 ms
Changes: Summary for web2
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 0.850 ms
zabbix:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname zabbix1
Result: None
Comment: Command "hostnamectl set-hostname zabbix1" would have been executed
Started: ::53.615229
Duration: 0.856 ms
Changes: Summary for zabbix
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 0.856 ms
redis1:
----------
ID: alter_hostname
Function: cmd.run
Name: hostnamectl set-hostname redis1
Result: None
Comment: Command "hostnamectl set-hostname redis1" would have been executed
Started: ::53.801096
Duration: 0.857 ms
Changes: Summary for redis1
------------
Succeeded: (unchanged=)
Failed:
------------
Total states run:
Total run time: 0.857 ms

salt 根据ip修改主机名的更多相关文章

  1. Linux 修改主机名 和 ip 映射关系

    1. 修改主机名 vim /etc/sysconfig/network NETWORKING=yes HOSTNAME=hadoop 2. 修改主机名和IP的映射关系 vim /etc/hosts 1 ...

  2. CentOS6修改主机名(hostname)及 修改/etc/hosts 文件,增加ip和hostname的映射关系(转)

    CentOS修改主机名(hostname)  需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. ...

  3. linux的设置ip连接crt,修改主机名,映射,建文件

    1.修改IP(或者vim vi /etc/sysconfig/network-scripts/ifcfg-eth0) 2.连接 crt 3.修改主机名 用vim 编辑 /etc/sysconfig/n ...

  4. RHEL修改主机名和IP

    1,     修改主机名 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=NEWHOSTNAME       #修改该值作为主机名,如:NEWPC ...

  5. Linux CentOS7.0 (02)修改主机名和ip地址

    一.主机名修改 1.查看命令 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty). "静态"主机名也称为内核主机名 ...

  6. linux修改主机名,关闭图形化界面,绑定ip地址,修改ip地址

    1关闭图形化界面 vi /etc/inittab 改成id:3:initdefault: 注意:不要选0或6 2.修改主机名 vi /etc/sysconfig/network 修改即可 3,修改ip ...

  7. linux centos7.5修改主机名和ip永久生效

    以centos7.5为例 1.修改主机名 [root@localhost ~]# hostname localhost.localdomain[root@localhost ~]# hostname ...

  8. centos7修改主机名和ip映射

    1.修改主机名:命令:/etc/hostname文件输入:HOSTNAME=node3想永久修改,应该修改配置文件 /etc/sysconfig/network. 输入:NETWORKING=yes ...

  9. 修改Linux的基本配置(修改主机名修改ip地址安装JDK/Tomcat/MySQL等等)

    (一)基本操作修改 修改主机名 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=server1.itcast.cn 修改ip地址 vi /etc/s ...

随机推荐

  1. SGU - 403 - Scientific Problem (水)

    403. Scientific Problem Time limit per test: 0.25 second(s) Memory limit: 65536 kilobytes input: sta ...

  2. CentOS-6.5安装配置Tomcat-7

    https://my.oschina.net/u/593517/blog/304483 http://blog.csdn.net/lgh0824/article/details/51194116 摘要 ...

  3. C 非标准库(conio.h)

    所谓的 C 标准库(C standard library),是指在 ISO C 或者 POSIX 标准中定义的: POSIX is a superset(超集) of the standard C l ...

  4. P1993 小K的农场 差分约束系统

    这个题是一道差分约束系统的裸题,什么是差分约束系统呢?就是给了一些大小条件,然后让你找一个满足的图.这时就要用差分约束了. 怎么做呢?其实很简单,就是直接建图就好,但是要把所有条件变为小于等于号,假如 ...

  5. [NOI2018]归程(80pts)

    https://www.zybuluo.com/ysner/note/1219964 题面 题面太长,难以概述,[戳我][1] \(ex10pts\ tree\) \(50pts\ n\leq1500 ...

  6. [Apple开发者帐户帮助]一、开始(1)关于您的开发者帐户

    Apple开发人员网站提供了为Apple平台制作出色应用所需的工具和信息.如果您不熟悉Apple平台上的开发,可以免费使用.只需接受Apple开发者协议,即可为您创建一个帐户.使用此帐户下载测试版软件 ...

  7. Windows7下caffe-ssd-microsoft下编译

    整个编译可谓漫长 编译了两天 网上教程也很多 但是也很杂 遇到各种错误 总归是编完了 1.下载Windows版本的Caffe-SSD源码 下载链接:https://github.com/conner9 ...

  8. C - Xenia and Ringroad

    Problem description Xenia lives in a city that has n houses built along the main ringroad. The ringr ...

  9. SQL连接其它服务器操作

    Exec sp_droplinkedsrvlogin ZYB,Null --删除映射(录与链接服务器上远程登录之间的映射) Exec sp_dropserver ZYB --删除远程服务器链接 EXE ...

  10. Spring Boot (4) 静态页面和Thymeleaf模板

    静态页面 spring boot项目只有src目录,没有webapp目录,会将静态访问(html/图片等)映射到其自动配置的静态目录,如下 /static /public /resources /ME ...