• 主机和组


    主机与组 
    
    /etc/ansible/hosts 文件的格式与windows的in配置文件类似:
    
    node2:/root/.ssh#cat  /etc/ansible/hosts
    [webservers]
    192.168.137.2
    115.236.19.4:9998
    
    node2:/root#ansible all -m ping 
    192.168.137.2 | SUCCESS => {
        "changed": false, 
        "ping": "pong"
    }
    115.236.19.4 | SUCCESS => {
        "changed": false, 
        "ping": "pong"
    }
    
    方括号[]中是组名,用于对系统进行分类,便于对不同系统进行个别的管理。
    
    
    一个系统可以属于不同的组,比如一台服务器可以同时属于webserver组合dbserver组。
    
    这时属于两个组的变量都可以为这台主机所用
    
    如果有主机的SSH端口不是标准22端口,可在主机名之后加上端口号,用冒号分隔.SSH配置文件中列出的端口号
    
    不会在paramiko连接中使用,会在openssh连接中使用
    
    端口号不是默认设置时,可明确的表示为:
    
    badwolf.example.com:5309
    
    假设你有一些静态IP地址,希望设置一些别名,但不是在系统的host文件中设置,
    
    又或者你是通过隧道在连接,那么可以设置如下:
    
    对于每一个host,你还可以选择连接类型和连接用户名:
    
    node2:/root#cat /etc/ansible/hosts
    [webservers]
    192.168.137.2
    115.236.19.4:9998
    [app01]
    120.26.224.164 ansible_connection=ssh        ansible_ssh_user=oracle
    
    node2:/root#ansible -i /etc/ansible/hosts app01 -m shell -a "hostname"
    120.26.224.164 | FAILED | rc=-1 >>
    using -c ssh on certain older ssh versions may not support ControlPersist, set ANSIBLE_SSH_ARGS="" (or ssh_args in [ssh_connection] section of the config file) before running again
    
    You have mail in /var/spool/mail/root
    
    node2:/root#ansible -i /etc/ansible/hosts app01 -m shell -a "hostname"
    120.26.224.164 | SUCCESS | rc=0 >>
    oadb
    
    所有以上的对于inventory文件的设置一种速记法,后面我们会讨论如何将这些设置保存为
    'host_vars' 目录中的独立文件
    
    
    主机变量 
    
    
    分文件定义Host和Group 变量 
    
    在inventory主文件中保存所有的变量并不是最佳的方式。 还可以保存在独立的文件中,这些独立文件与
    
    inventory文件保持关联。
    
    假设inventory 文件的路径为:
    
    /etc/ansible/hosts
    
    假设有一个主机名为'foosball',主机同时属于两个组,一个是'raleigh';另一个是'webservers'.
    
    那么以下配置文件(YAML格式)中的变量可以为'fooball'主机所用,依次为'raleigh'的组变量;
    
    webservers的组变量,'foosball'的主机变量:
  • 相关阅读:
    js内置数据类型
    vue禁止复制的方式
    阻止element组件中的<el-input/>的粘贴功能
    Vue插件集合
    qs.parse()、qs.stringify()、JSON.stringify() 用法及区别
    es6数组的一些函数方法使用
    文章段落首字母缩进两个字符
    深圳scala-meetup-20180902(3)- Using heterogeneous Monads in for-comprehension with Monad Transformer
    深圳scala-meetup-20180902(2)- Future vs Task and ReaderMonad依赖注入
    深圳scala-meetup-20180902(1)- Monadic 编程风格
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349116.html
Copyright © 2020-2023  润新知