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 23:17
下一篇 2018-07-23 03:39

相关推荐

  • 进程和计划任务

    进程和计划任务 进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合 进程ID(Process ID,PID)号码被用来标记各个进程 UID、GID、和SELinux语境决定对文件系统的存取和访问权限,通常从执行进程的用户来继承 存在生命周期 task str…

    2018-05-03
  • 磁盘管理(二)

    RAID

    2018-04-26
  • 文件权限

    介绍了修改文件权限的方法,umask和三种特殊权限以及acl控制访问表

    2018-04-04
  • centos 7.4 实现二进制安装mariadb-10.2.15-linux-x86_64.tar.gz mysql 数据库

    实验:centos 7.4 实现二进制安装mariadb-10.2.15-linux-x86_64.tar.gz mysql 数据库 1,检查相应的坏境 查看下防火墙iptables和selinux 是否关闭,没关闭先关闭。 再查看下原来主机上是否已有 mariadb 数据库,如果有先卸载在进行安装。 2,下载对应的二进制文件 3,准备用户账号,mysql,…

    Linux笔记 2018-06-05
  • Linux根文件系统和目录结构及bash特性

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 cp命令:copy 源文件;目标文件; 单源复制:cp [OPTION]… [-T] SOURCE DEST 多源复制:cp [OPTION]… SOURCE… DIRECTORY cp [OPTION]… -t DIRECTORY S…

    2018-06-29
  • NGINX服务1

    I/O模型 Nginx介绍 Nginx安装 Nginx各种模块

    Linux笔记 2018-07-04