当前位置: 首页 > news >正文

国外做婚纱摄影店设计的网站手机版网站建设

国外做婚纱摄影店设计的网站,手机版网站建设,微信运营服务商,网站做图尺寸大小Ansible Ansible 是基于 Python 开发,集合了众多优秀运维工具的优点,实现了批量运行命令、部署程序、配置系统等功能的自动化运维管理工具。默认通过 SSH 协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动…

Ansible

        Ansible 是基于 Python 开发,集合了众多优秀运维工具的优点,实现了批量运行命令、部署程序、配置系统等功能的自动化运维管理工具。默认通过 SSH 协议进行远程命令执行或下发配置,无需部署任何客户端代理软件,从而使得自动化环境部署  变得更加简单。可同时支持多台主机并行管理,使得管理主机更加便捷

        Ansible 的基本架构六大件

                Ansible core 核心引擎:即 Ansible 本身

                Host Inventory 主机清单用来定义 Ansible 所管理主机, 默认是在 Ansible 的hosts 配置文件中定义被管理主机, 同时也支持自定义动态主机清单和指定其它配置文件的位置

                Connect plugin 连接插件负责和被管理主机实现通信。除支持使用 SSH 连接被管理主机外, Ansible 还支持其它的连接方式, 所以需要有连接插件将各个主机用连接插件连接到 Ansible

                Playbook( yaml, jinjia2) 剧本用来集中定义 Ansible 任务的配置文件, 即将多个任务定义在一个剧本中由 Ansible 自动执行, 可以由控制主机针对多台被管理主机同时运行多个任务

                Core modules 核心模块:是 Ansible 自带的模块,使用这些模块将资源分发到被管理主机使其执行特定任务或匹配特定的状态

                Custom modules 自定义模块用于完成模块功能的补充, 可借助相关插件完成记录日志、发送邮件等功能

        Ansible与SaltStack的对比

                (1)Ansible安装部署简单

                (2)SaltStack响应速度快

                (3)Ansible更安全

                (4)对Windows的支持

                (5)Ansible自身运维比较简单

                

部署ansible    

角色

主机名

IP地址

配置

控制主机

ansible-node1

192.168.27.152

2c4g

被管理主机

ansible-node2

192.168.27.153

2c4g

被管理主机

ansible-node3

192.168.27.154

2c4g

        干净的环境,修改主机名

hostnamectl set-hostname ansible-node1
hostnamectl set-hostname ansible-node2
hostnamectl set-hostname ansible-node3

         在第一台机器上安装Ansible

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
yum install -y ansible#查版本号即为安装成功
ansible --version

        ansible引用配置文件的优先级 

# 优先级最高
ANSIBLE_CONFIG (一个环境变量)

# 优先级次之
ansible.cfg (位于当前目录中)

# 优先级次之
ansible.cfg (当前用户的家目录中)

# 优先级最低
/etc/ansible/ansible.cfg

        配置ansible的主机清单

vi /etc/ansible/hosts 
#写在配置文件最后即可
192.168.27.153
192.168.27.154

        控制主机清单的主机

ansible all -m ping# all 为被控制机器的IP
# -m 操作的命令 
# ping 测试网络是否通过

 设置 SSH 无密码登录

        为了避免 Ansible 下发指令时需要输入被管理主机的密码,可以通过证书签名达到 SSH

无密码登录。使用 ssh-keygen 产生一对密钥,并通过 ssh-copy-id 命令来发送生成的公钥   

#生成密钥对
ssh-keygen -t rsa#连接被控制端的IP
ssh-copy-id 192.168.10.102

         取消密钥对验证

vi /etc/ansible/ansible.cfg

         把密码写进主机清单 省去密码操作

[root@ansible-node1 ~]# cat /etc/ansible/hosts 
192.168.27.153 ansible_ssh_user=root ansible_ssh_pass=123456
192.168.27.154 ansible_ssh_user=root ansible_ssh_pass=123456

常用模块

[root@ansible-node1 ~]# ansible all -a 'hostname'
192.168.27.153 | CHANGED | rc=0 >>
ansible-node2
192.168.27.154 | CHANGED | rc=0 >>
ansible-node3
[root@ansible-node1 ~]# [root@ansible-node1 ~]# ansible all -a 'free -h'
192.168.27.153 | CHANGED | rc=0 >>total        used        free      shared  buff/cache   available
Mem:           3.7G        175M        3.3G         11M        176M        3.3G
Swap:          2.0G          0B        2.0G
192.168.27.154 | CHANGED | rc=0 >>total        used        free      shared  buff/cache   available
Mem:           3.7G        177M        3.3G         11M        176M        3.3G
Swap:          2.0G          0B        2.0G
[root@ansible-node1 ~]# 

        定义组

# 定义组写在主机清单中 例如我创建的两个组规划机器
[root@ansible-node1 ~]# cat /etc/ansible/hosts [master]
192.168.27.153 ansible_ssh_user=root ansible_ssh_pass=123456[node]
192.168.27.154 ansible_ssh_user=root ansible_ssh_pass=123456
#操作组ansible node -m ping

                可省略command模块,其他模块都不可以

                 command是默认命令

                还可以指定shell命令,用来操作Linux命令 (不可省略)

        user模块

                创建用户

ansible all -m user -a 'name=test'

                删除用户

ansible all -m user -a 'name=test state=absent'#present 表示添加 (省略状态时默认使用)
#absent 表示移除。

        group组模块

#被管理组 db里所有主机创建 mysql 组,gid 为 306
ansible db -m group -a 'name=mysql gid=306 system=yes'

        设置周期任务

                添加周期任务计划

ansible all \
-m cron \
-a 'minute="*/10" job="/bin/echo hello" name="test cron job"'# name 周期任务的名字

                列出周期任务

 ansible all -m shell -a 'crontab -l'

        copy 模块

                Ansible 中的 copy 模块用于实现文件复制和批量下发文件。其中使用 src 来定义本地源文件路径;使用 dest 定义被管理主机文件路径;使用 content 则是使用指定信息内容生成目标文件

#将 本 地 文 件/etc/fstab 复 制 到 被 管 理组 db里 的 所 有 主 机上 的/tmp/fstab.ansible,所有者设置为 root,权限设置为 640
ansible all \
-m copy \
-a 'src=/etc/fstab dest=/tmp/fstab.ansible owner=root mode=640'

         修改简单的内容

ansible all \
-m copy \
-a 'content="Hello Ansible Hi Ansible\n" dest=/tmp/test.ansible'

        file模块

#设置被管理组 dbsrvs 里所有主机中/tmp/fstab.ansible 文件的所属主为 mysql, 所属组为 mysql,权限为 644。
ansible all \
-m file \
-a 'owner=mysql group=mysql mode=644 path=/tmp/fstab.ansible'

        script模块

                Ansible 中的 script 模块可以将本地脚本复制到被管理主机上进行运行。需要注意的是使用相对路径指定脚本位置

[root@ansible-node1 ~]# cat test.sh
#!/bin/bash
echo "ok"
[root@ansible-node1 ~]# chmod +x test.sh
[root@ansible-node1 ~]# ansible all -m script -a 'test.sh'

        service模块

                Ansible 中使用 service 模块来控制管理服务的运行状态。其中使用 enabled 表示是否开机自动启动,取值为 true 或者 false;使用 name 定义服务名称;使用 state 指定服务状态,取值有 started、stoped、restarted

ansible all \
-m service \
-a 'enabled=true name=chronyd state=started'ansible all \
-m service \
-a 'enabled=true name=chronyd state=stopped'

        yum 模块

                切换另外两台的yum源

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

                安装模块

ansible all -m yum -a 'name=tree'

                卸载模块

ansible all -m yum -a 'name=tree state=absent'

        palybook模块        

[root@ansible-node1 ~]# cat test.yaml
---
- hosts: allremote_user: roottasks:- name: install httpdyum: name=httpd state=latest- name: start httpdservice: name=httpd state=started
ansible-playbook test.yaml

                 更好的移植性(修改一下)

[root@ansible-node1 ~]# cat test.yaml
---
- hosts: allvars:package: httpdremote_user: roottasks:- name: install {{ package }}yum: name={{ package }} state=latest- name: start {{ package }}service: name={{ package  }} state=started
[root@ansible-node1 ~]# 

http://www.yayakq.cn/news/361219/

相关文章:

  • 建设银行大丰支行网站it人力外包公司
  • 南京网站建设价位wordpress 4.9摘要
  • python做网站吗长沙网站开发设计
  • 德钦网站建设中信建设有限责任公司客户
  • 推荐黄的网站杭州营销型网站设计
  • app应用网站单页模板下载网站维护报价表
  • 网站icon图标怎么加何为门户网站
  • 旅游网站的建设与应用北京今天新闻最新消息新闻
  • 设计师网站推荐家装花多少钱能把网站做到页面
  • 网站开发技能证书给视频做特效的网站
  • 三大框架对网站开发的作用东莞市的网站公司哪家好
  • 织梦调用网站备案号想在微信公众号上做网站链接
  • 微网站的搭建网站页面怎么设计
  • 威海专业做网站公司购物网站黑白
  • 建完网站怎样维护企业建网站需要什么
  • 高明网站建设公司莆田企业免费建站
  • 网站腾讯qq对话框怎么做代理怎么引流推广
  • 合肥 电子商务 网站建设临时展厅搭建方案
  • 网站架构师工资网络营销的八大职能
  • 天津建站长沙企业网站建设收费
  • 海网站建设生产厂家哪家好百度一下官网网址
  • 制作一个网站平台需要多少钱网络推广技巧与方法
  • 手机网站需要域名吗互动 网站建设
  • 网站制作中的更多怎么做贵阳网站建设价格
  • 网站服务器排名软件工程师需要什么学历
  • 企业建设网站对客户的好处 align center
  • 域名回收网站app软件网站建设
  • 电子商务网站建设与管理期末考试试卷a网站建设的三网合一
  • 天津建设银行公积金缴费官方网站韩城网站建设韩城网站推广
  • 网站建设与管理的网页50强网站建设公司