ansible httpd

卸载服务
ansible all -m shell -a ‘yum -y remove nginx’

检查用户 组 uid gid
ansible all -m shell -a ‘getent passwd nginx’
ansible all -m shell -a ‘getent group nginx’

ansible all -m shell -a ‘getent passwd | grep 123’

删除用户
ansible all -m shell -a ‘userdel -r nginx’
ansible all -m user -a ‘name=apache state=absent’

验证
ansible all -m shell -a ‘ss -ntlpe’ /* 端口 */
ansible all -m shell -a ‘ps aux | grep nginx /* 用户 进程数 */

编译安装
一台机器编译好
安装目录 打包复制

ansible /* 任意文件夹 */

├── group_vars /* 变量 –> 所有 role */


├── File_role.yml /* 与 roles 平级 */
│ …


└── roles


├── Pro_1
│ │
│ ├── tasks /* 必须有 其他文件夹 可无 */
│ │ ├── main.yml
│ │ … /* File.yml */
│ │
│ ├── handlers
│ │ └── main.yml
│ ├── vars
│ │ └── main.yml
│ ├── templates
│ │ ├── File.j2
│ │ …
│ └── files
│ ├── File
│ …


└── Pro_2
├── …

mkdir -pv Pro_1/{tasks,templates,vars,handlers,files}

vim app_role.yml
– hosts: all
remote_user: root

roles:
– app

– Pro_2 /* 调用多个角色 */

– { role: httpd , tags: [‘web’,’httpd’] } /* 添加标签 */
– { role: nginx , tags: [‘web’,’nginx’] , when: ansible_distribution_major_version == “7” } /* 条件判断 */
ansible-playbook -C -t httpd app_role.yml /* 挑选 标签 执行 */

vim tasks/main.yml
– include: group.yml
– include: user.yml
– include: yum.yml
– include: templ.yml
– include: start.yml
– include: copyfile.yml

– include: roles/Pro_2/tasks/File.yml /* 调用其他角色中任务 copy路径问题…*/
vim group.yml
– name: create group
group: name=app system=yes gid=123
vim user.yml
– name: create user
user: name=app group=app system=yes shell=/sbin/nologin uid=123
vim yum.yml
– name: install package
yum: name=httpd
vim templ.yml
– name: copy conf
template: src=httpd.conf.j2 dest=/etc/httpd/conf/httpd.conf /* File.j2 即可 */
notify: restart service
vim start.yml
– name: start service
service: name=httpd state=started enabled=yes
vim copyfile.yml
– name: copy config
copy: src=vhosts.conf dest=/etc/httpd/conf.d/ owner=app /* 若被其他role调用 注意改 绝对路径 */

vim handlers/main.yml
– name: restart service
service: name=httpd state=restarted

vim vars/main.yml
username: app
groupname: app

cp /etc/httpd/conf/httpd.conf templates/httpd.conf.j2
vim templates/httpd.conf.j2
Listen {{ ansible_processor_vcpus*10 }}
User {{ username }}
Group {{ groupname }}

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/103709

(0)
倪潇洒倪潇洒
上一篇 2018-07-22
下一篇 2018-07-23

相关推荐

  • awk小练习

    linux awk

    Linux笔记 2018-05-20
  • linux基础(一)

    一些运维的基本命令和作用。

    Linux笔记 2018-04-01
  • Virtualization虚拟化技术介绍

    Virtualization即虚拟化技术,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率

    2018-07-27
  • Linux的tail 与head 命令

    head命令是用来查看具体文件的前面几行的内容,具体格式如下: head <filename>: 你可以通过head命令查看具体文件最初的几行内容,该命令默认是前10行内容,如果你想查看前面更多内容,你可以通过一个数字选项来设置,例如 head -20 install.log 通过上面命令你可以查看install.log这个文件前面20行的内容 …

    2018-04-16
  • DHCP实验

    前期准备 仅主机网段                                 /* 取消dhcp */ /* 虚拟机启动过程中 会卡住一会 找地址 */ yum install dhcp 服务端 网卡配置 静态地址 重启网络 systemctl start dhcpd                /* 报错 没有配置文件 */ 编辑配置文件 sys…

    Linux笔记 2018-05-29
  • Linux用户和组管理

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 2、取出最后登录到当前系统的用户的相关信息。 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。 5、取出当前主机的…

    Linux笔记 2018-07-13