ad hoc ---临时的,在ansible里需要快速执行,并不用保存命令的执行方式

简单命令

playbook 复杂命令

 

 

EXAMPLES:

- name: install the latest version of Apache
yum:
name: httpd
state: latest - name: ensure a list of packages installed
yum:
name: "{{ packages }}"
vars:
packages:
- httpd
- httpd-tools - name: remove the Apache package
yum:
name: httpd
state: absent - name: install the latest version of Apache from the testing repo
yum:
name: httpd
enablerepo: testing
state: present - name: install one specific version of Apache
yum:
name: httpd-2.2.29-1.4.amzn1
state: present - name: upgrade all packages
yum:
name: '*'
state: latest - name: upgrade all packages, excluding kernel & foo related packages
yum:
name: '*'
state: latest
exclude: kernel*,foo* - name: install the nginx rpm from a remote repo
yum:
name: http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
state: present - name: install nginx rpm from a local file
yum:
name: /usr/local/src/nginx-release-centos-6-0.el6.ngx.noarch.rpm
state: present - name: install the 'Development tools' package group
yum:
name: "@Development tools"
state: present - name: install the 'Gnome desktop' environment group
yum:
name: "@^gnome-desktop-environment"
state: present - name: List ansible packages and register result to print with debug later.
yum:
list: ansible
register: result - name: Install package with multiple repos enabled
yum:
name: sos
enablerepo: "epel,ol7_latest" - name: Install package with multiple repos disabled
yum:
name: sos
disablerepo: "epel,ol7_latest" - name: Install a list of packages
yum:
name:
- nginx
- postgresql
- postgresql-server
state: present - name: Download the nginx package but do not install it
yum:
name:
- nginx
state: latest
download_only: true
   EXAMPLES: - name: example copying file with owner and permissions
copy:
src: /srv/myfiles/foo.conf
dest: /etc/foo.conf
owner: foo
group: foo
mode: 0644 - name: The same example as above, but using a symbolic mode equivalent to 0644
copy:
src: /srv/myfiles/foo.conf
dest: /etc/foo.conf
owner: foo
group: foo
mode: u=rw,g=r,o=r - name: Another symbolic mode example, adding some permissions and removing others
copy:
src: /srv/myfiles/foo.conf
dest: /etc/foo.conf
owner: foo
group: foo
mode: u+rw,g-wx,o-rwx - name: Copy a new "ntp.conf file into place, backing up the original if it differs from the copied version
copy:
src: /mine/ntp.conf
dest: /etc/ntp.conf
owner: root
group: root
mode: 0644
backup: yes - name: Copy a new "sudoers" file into place, after passing validation with visudo
copy:
src: /mine/sudoers
dest: /etc/sudoers
validate: /usr/sbin/visudo -cf %s - name: Copy a "sudoers" file on the remote machine for editing
copy:
src: /etc/sudoers
dest: /etc/sudoers.edit
remote_src: yes
validate: /usr/sbin/visudo -cf %s - name: Copy using the 'content' for inline data
copy:
content: '# This file was moved to /etc/other.conf'
dest: /etc/mine.conf' RETURN VALUES: dest:
description: destination file/path
returned: success
type: string
sample: /path/to/file.txt
src:
description: source file used for the copy on the target machine
returned: changed
type: string
sample: /home/httpd/.ansible/tmp/ansible-tmp-1423796390.97-147729857856000/source
md5sum:
description: md5 checksum of the file after running copy
returned: when supported
type: string
sample: 2a5aeecc61dc98c4d780b14b330e3282
checksum:
description: sha1 checksum of the file after running copy
returned: success
type: string
sample: 6e642bb8dd5c2e027bf21dd923337cbb4214f827
backup_file:
description: name of backup file created
returned: changed and if backup=yes
type: string
sample: /path/to/file.txt.2015-02-12@22:09~
gid:
description: group id of the file, after execution
returned: success
type: int
sample: 100
group:
description: group of the file, after execution
returned: success
type: string
sample: httpd
owner:
description: owner of the file, after execution
returned: success
type: string
sample: httpd
uid:
description: owner id of the file, after execution
returned: success
type: int
sample: 100
mode:
description: permissions of the target, after execution
returned: success
type: string
sample: 0644
size:
description: size of the target, after execution
returned: success
type: int
sample: 1220
state:
description: state of the target, after execution
returned: success
type: string
sample: file

 

EXAMPLES:

- name: Add the user 'johnd' with a specific uid and a primary group of 'admin'
user:
name: johnd
comment: John Doe
uid: 1040
group: admin - name: Add the user 'james' with a bash shell, appending the group 'admins' and 'developers' to the user's groups
user:
name: james
shell: /bin/bash
groups: admins,developers
append: yes - name: Remove the user 'johnd'
user:
name: johnd
state: absent
remove: yes - name: Create a 2048-bit SSH key for user jsmith in ~jsmith/.ssh/id_rsa
user:
name: jsmith
generate_ssh_key: yes
ssh_key_bits: 2048
ssh_key_file: .ssh/id_rsa - name: Added a consultant whose account you want to expire
user:
name: james18
shell: /bin/zsh
groups: developers
expires: 1422403387 - name: starting at version 2.6, modify user, remove expiry time
user:
name: james18
expires: -1 RETURN VALUES: append:
description: Whether or not to append the user to groups
returned: When state is 'present' and the user exists
type: bool
sample: True
comment:
description: Comment section from passwd file, usually the user name
returned: When user exists
type: string
sample: Agent Smith
create_home:
description: Whether or not to create the home directory
returned: When user does not exist and not check mode
type: bool
sample: True
force:
description: Whether or not a user account was forcibly deleted
returned: When state is 'absent' and user exists
type: bool
sample: False
group:
description: Primary user group ID
returned: When user exists
type: int
sample: 1001
groups:
description: List of groups of which the user is a member
returned: When C(groups) is not empty and C(state) is 'present'
type: string
sample: 'chrony,apache'
home:
description: "Path to user's home directory"
returned: When C(state) is 'present'
type: string
sample: '/home/asmith'
move_home:
description: Whether or not to move an existing home directory
returned: When C(state) is 'present' and user exists
type: bool
sample: False
name:
description: User account name
returned: always
type: string
sample: asmith
password:
description: Masked value of the password
returned: When C(state) is 'present' and C(password) is not empty
type: string
sample: 'NOT_LOGGING_PASSWORD'
remove:
description: Whether or not to remove the user account
returned: When C(state) is 'absent' and user exists
type: bool
sample: True
shell:
description: User login shell
returned: When C(state) is 'present'
type: string
sample: '/bin/bash'
ssh_fingerprint:
description: Fingerprint of generated SSH key
returned: When C(generate_ssh_key) is C(True)
type: string
sample: '2048 SHA256:aYNHYcyVm87Igh0IMEDMbvW0QDlRQfE0aJugp684ko8 ansible-generated on host (RSA)'
ssh_key_file:
description: Path to generated SSH public key file
returned: When C(generate_ssh_key) is C(True)
type: string
sample: /home/asmith/.ssh/id_rsa
ssh_public_key:
description: Generated SSH public key file
returned: When C(generate_ssh_key) is C(True)
type: string
sample: >
'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC95opt4SPEC06tOYsJQJIuN23BbLMGmYo8ysVZQc4h2DZE9ugbjWWGS1/pweUGjVstgzMkBEeBCB
618mUJBvdlEgea96QGjOwSB7/gmonduC7gsWDMNcOdSE3wJMTim4lddiBx4RgC9yXsJ6Tkz9BHD73MXPpT5ETnse+A3fw3IGVSjaueVnlUyUmOBf7fz
d5u1u0e6Acju/8aZ/l17IDFiLke5IzlqIMRTEbDwLNeO84YQKWTm9fODHzhYe0yvxqLiK07 ansible-generated on host'
stderr:
description: Standard error from running commands
returned: When stderr is returned by a command that is run
type: string
sample: Group wheels does not exist
stdout:
description: Standard output from running commands
returned: When standard output is returned by the command that is run
type: string
sample:
system:
description: Whether or not the account is a system account
returned: When C(system) is passed to the module and the account does not exist
type: bool
sample: True
uid:
description: User ID of the user account
returned: When C(UID) is passed to the module
type: int
sample: 1044

 

[root@ftp:/root]
> ansible webservers -m shell -a 'uptime' -o
ansible03 | CHANGED | rc=0 | (stdout) 17:34:22 up 4:12, 2 users, load average: 0.00, 0.01, 0.05
ansible04 | CHANGED | rc=0 | (stdout) 17:34:22 up 3:45, 2 users, load average: 0.16, 0.05, 0.05
ansible02 | CHANGED | rc=0 | (stdout) 17:34:22 up 3:41, 1 user, load average: 0.00, 0.01, 0.05
ansible01 | CHANGED | rc=0 | (stdout) 17:34:22 up 4:11, 2 users, load average: 0.00, 0.01, 0.05 [root@ftp:/root]
> ansible webservers -m shell -a 'uptime' -o -f 10
ansible03 | CHANGED | rc=0 | (stdout) 17:34:56 up 4:12, 2 users, load average: 0.00, 0.01, 0.05
ansible01 | CHANGED | rc=0 | (stdout) 17:34:56 up 4:12, 2 users, load average: 0.24, 0.06, 0.06
ansible04 | CHANGED | rc=0 | (stdout) 17:34:56 up 3:45, 2 users, load average: 0.10, 0.04, 0.05
ansible02 | CHANGED | rc=0 | (stdout) 17:34:56 up 3:41, 1 user, load average: 0.00, 0.01, 0.05 [root@ftp:/root]
>

 

[root@ftp:/root]
> ansible webservers -m copy -a 'src=/etc/hosts dest=/tmp/hosts owner=root group=root mode=777'
ansible04 | CHANGED => {
"changed": true,
"checksum": "19aad245261f1772bffdabf3a6f5347312b20b46",
"dest": "/tmp/hosts",
"gid": 0,
"group": "root",
"md5sum": "39c0b18a971b35e3888758a2494b6083",
"mode": "0777",
"owner": "root",
"size": 346,
"src": "/root/.ansible/tmp/ansible-tmp-1552815757.85-214840644098444/source",
"state": "file",
"uid": 0
}
ansible03 | CHANGED => {
"changed": true,
"checksum": "19aad245261f1772bffdabf3a6f5347312b20b46",
"dest": "/tmp/hosts",
"gid": 0,
"group": "root",
"md5sum": "39c0b18a971b35e3888758a2494b6083",
"mode": "0777",
"owner": "root",
"size": 346,
"src": "/root/.ansible/tmp/ansible-tmp-1552815757.82-188384435660718/source",
"state": "file",
"uid": 0
}
ansible01 | CHANGED => {
"changed": true,
"checksum": "19aad245261f1772bffdabf3a6f5347312b20b46",
"dest": "/tmp/hosts",
"gid": 0,
"group": "root",
"md5sum": "39c0b18a971b35e3888758a2494b6083",
"mode": "0777",
"owner": "root",
"size": 346,
"src": "/root/.ansible/tmp/ansible-tmp-1552815757.71-273021490189009/source",
"state": "file",
"uid": 0
}
ansible02 | CHANGED => {
"changed": true,
"checksum": "19aad245261f1772bffdabf3a6f5347312b20b46",
"dest": "/tmp/hosts",
"gid": 0,
"group": "root",
"md5sum": "39c0b18a971b35e3888758a2494b6083",
"mode": "0777",
"owner": "root",
"size": 346,
"src": "/root/.ansible/tmp/ansible-tmp-1552815757.77-7921352044895/source",
"state": "file",
"uid": 0
} [root@ftp:/root]
>

 

ansible组件 Ad-Hoc的更多相关文章

  1. SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问

    delphi ado 跨数据库访问 语句如下 ' and db = '帐套1' 报错内容是:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATE ...

  2. SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问

    消息 15281,级别 16,状态 1,第 2 行SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/Open ...

  3. Sql导出数据报错-->SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问

    SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服 ...

  4. 解除SQL对组件"Ad Hoc Distributed Queries"的"STATEMENT'OpenRowset OpenDatasource"的访问

      SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为 ...

  5. SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。

    今天单位一ASP.NET网站,里面有个功能是导出数据,发现一导出就报错,报错内容是:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT ...

  6. [原创]SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问

    TSQL查询Excel数据使用openrowset通常会报如下错误: 消息 ,级别 ,状态 ,第 行 SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 ...

  7. 关于“SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问 ”

    原因:在从远程服务器复制数据到本地时出现“SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatas ...

  8. SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问的解决方案

    今天写了一个excel表的导入功能,结果在excel表中的内容导入到页面时报错:SQL  Server 阻止了对组件 'Ad Hoc Distributed Queries' 的  STATEMENT ...

  9. 解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问

    根据需要进行asp.net的数据导入导出,结果报以下错: mark-1: [报错]SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT ...

  10. [sql异常]SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的

    //执行远程数据库表查询 SELECT * FROM OPENDATASOURCE('SQLOLEDB', 'Data Source=数据库地址;User ID=sa;password=sa' ).n ...

随机推荐

  1. [poj 3318] Matrix Multiplication (随机化+矩阵)

    Description You are given three n × n matrices A, B and C. Does the equation A × B = C hold true? In ...

  2. OOP面向对象 三大特征 继承封装多态

    OOP面向对象 ----三大特征 继承封装多态 面向对象(Object Oriented,OO)是软件开发方法.面向对象的概念和应用已超越了程序设计和软件开发,扩展到如数据库系统.交互式界面.应用结构 ...

  3. 关于python从Oracle中读取数据中文全是问号的问题

    import os os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8' 问题搞定

  4. Oracle的JDBC Url的几种方式

    1.普通SID方式jdbc:oracle:thin:username/password@x.x.x.1:1521:SID2.普通ServerName方式 jdbc:Oracle:thin:userna ...

  5. T4系列文章之1:认识T4

    一.导读 MSDN:Code Generation and T4 Text Templates 博客园:编写T4模板进行代码生成 Oleg Sych系列文章:http://www.olegsych.c ...

  6. failed to sync branch You might need to open a shell and debug the state of this repo.

    failed to sync branch You might need to open a shell and debug the state of this repo. i made some c ...

  7. html5的postmessage实现js前端跨域訪问及调用解决方式

    关于跨域訪问.使用JSONP的方法.我前面已经demo过了.详细见http://supercharles888.blog.51cto.com/609344/856886,HTML5提供了一个很强大的A ...

  8. poj 2683 Ohgas' Fortune 利率计算

    水题. 代码: //poj 2683 //sep9 #include <iostream> using namespace std; int main() { int cases; sca ...

  9. 串口之CreateFile 函数具体解释

    HANDLE CreateFile( LPCTSTR lpFileName, //指向文件名称的指针 DWORD dwDesiredAccess, //訪问模式(写/读) DWORD dwShareM ...

  10. 高斯混合模型Gaussian Mixture Model (GMM)——通过增加 Model 的个数,我们可以任意地逼近任何连续的概率密分布

    从几何上讲,单高斯分布模型在二维空间应该近似于椭圆,在三维空间上近似于椭球.遗憾的是在很多分类问题中,属于同一类别的样本点并不满足“椭圆”分布的特性.这就引入了高斯混合模型.——可以认为是基本假设! ...