架构
文章平均质量分 69
weixin_46837396
这个作者很懒,什么都没留下…
展开
-
Ansible Jinja2 模板概述
Ansible Jinja2 模板概述、Ansible Roles-----补充二、Ansible Jinja2 模板使用1.变量使用语法```powershell{{ EXPR }} 输出变量值,会输出自定义的变量值或facts1.playbook文件使用template模块2.模板文件里面变量使用 {{ 名称 }},比如 {{ PORT }} 或使用facts2.Jinja2模板逻辑判断语法#shell中的判断语法[root@m01 project]# vim pd.sh #!/原创 2021-06-14 23:44:59 · 144 阅读 · 6 评论 -
Ansible Roles-----补充
Ansible Roles一、Ansible Roles基本概述1.Ansible Roles介绍roles不管是Ansible还是saltstack,我在写一键部署的时候,都不可能把所有的步骤全部写入到一个'剧本'文件当中,我们肯定需要把不同的工作模块,拆分开来,解耦,那么说到解耦,我们就需要用到roles官方推荐,因为roles的目录结构层次更加清晰。例如:我们之前推荐大家写一个base.yml里面写所有基础优化的项目,其实把所有东西摞进去也是很鸡肋的,不如我们把这些功能全部拆分开,谁需要使用原创 2021-06-14 23:38:54 · 108 阅读 · 0 评论 -
playbook 任务标签
playbook 任务标签1. 执行wp22.yml[root@m01 project]# cat wp22.yml - hosts: nginx tasks: - name: Tar Nginx package copy: src: /project/package/nginx-1.16.1-1.el7.ngx.x86_64.rpm dest: /tmp - name: Install Nginx Server yum:原创 2021-06-12 23:00:28 · 155 阅读 · 0 评论 -
copy模块与template模块的区别
一般使用配置redis[root@m01 project]# vim /etc/redis.conf bind {{ ansible_eth1.ipv4.address }}剧本----》copy[root@m01 project]# cat yum.yml - hosts: web_group tasks: - name: Install Redis Server yum: name: redis state: present原创 2021-06-12 17:15:22 · 1966 阅读 · 0 评论 -
变量注册、facts缓存
变量注册当absible的模块在运行之后,其实都会返回一些result结果,就像是执行脚本,我们有的时候需要脚本给我们一些return返回值,我们才知道,上一步是否可以执行成功,但是…默认情况下,ansible的result并不会显示出来,所以,我们可以把这些返回值’存储’到变量中,这样我们就能通过’调用’对应的变量名,从而获取到这些result,这种将模块的返回值,写入到变量中的方法被称为变量注册1.使用ad-hoc模式会得到返回结果[root@m01 project]# ansible web01原创 2021-06-12 16:37:51 · 111 阅读 · 0 评论 -
Ansible playbook 实战---搭建博客
Ansible playbook 实战## 一、基础准备```powershell#1.安装ansible[root@m01 ~]# yum install -y ansible#2.配置ansible[root@m01 ~]# vim /etc/ansible/ansible.cfghost_key_checking = False#3.配置主机清单[root@m01 ~]# vim /etc/ansible/hosts [lb_server]lb01 ansible_ssh原创 2021-06-12 10:37:20 · 129 阅读 · 1 评论 -
用ansible-plbook 启动httpd服务
用ansible-plbook 启动httpd服务- hosts: web_group tasks: - name: Install Httpd Server yum: name: httpd state: present - name: Config Httpd Server copy: src: /etc/httpd/conf/httpd.conf dest: /etc/httpd/conf/原创 2021-06-10 18:27:38 · 233 阅读 · 0 评论 -
ansible ad-hoc自动化搭建交作业平台、ansible-plbook自动化搭建交作业平台
ansible自动化搭建交作业平台#!bin/bash#1安装httpd服务ansible web_group -m yum -a 'name=httpd state=present' &&\#2创建www用户组ansible web_group,nfs -m group -a 'name=www gid=666 state=present' &&\#3创建用户ansible web_group,nfs -m user -a 'name=www uid=666原创 2021-06-09 16:33:54 · 198 阅读 · 0 评论 -
防火墙补充
手动添加防火墙的zone[root@web01 ~]# cd /usr/lib/firewalld/[root@web01 firewalld]# ll总用量 16drwxr-xr-x. 2 root root 203 3月 29 15:48 helpersdrwxr-xr-x. 2 root root 4096 3月 29 15:48 icmptypesdrwxr-xr-x. 2 root root 20 3月 29 15:48 ipsetsdrwxr-xr-x. 2 root原创 2021-06-05 22:21:06 · 378 阅读 · 0 评论 -
keepalived脑裂实践、高可用keepalived补充
1…脑裂模拟1)开启防火墙(两台lb开启防火墙,都出现vip10.0.0.3)[root@lb01 ~]# systemctl start firewalld.service [root@lb01 ~]# ip addr | grep 10.0.0.3 inet 10.0.0.3/32 scope global eth0 [root@lb02 ~]# systemctl start firewalld[root@lb02 ~]# ip addr | grep 10.0.0.3原创 2021-05-06 20:18:35 · 179 阅读 · 1 评论 -
12.18命令模块、软件管理模块
一、命令模块1.command模块#默认模块,远程执行命令[root@m01 ~]# ansible web01 -m command -a 'free -m'web01 | CHANGED | rc=0 >> total used free shared buff/cache availableMem: 972 128 479 7原创 2021-04-17 08:29:50 · 111 阅读 · 0 评论 -
12.18用户管理模块、其他模块
五、用户管理模块1.group 模块1)语法和参数[root@m01 ~]# ansible-doc groupEXAMPLES:- name: Ensure group "somegroup" exists group: name: somegroup #组名字 state: present #创建组 absent #删除组 gid: 666 #指定组id2)实例#创建用户组[root@m01 ~]# ansi原创 2021-04-17 08:28:40 · 329 阅读 · 0 评论 -
12.18Ansible 模块
一、命令模块1.command模块#默认模块,远程执行命令[root@m01 ~]# ansible web01 -m command -a 'free -m'web01 | CHANGED | rc=0 >> total used free shared buff/cache availableMem: 972 128 479 7原创 2021-04-17 08:26:50 · 86 阅读 · 0 评论 -
12.23Ansible 流程控制
Ansible 流程控制四、playbook 条件语句不管是shell还是各大编程语言中,流程控制,条件判断这些都是必不可少的,在我们使用Ansible的过程中,条件判断的使用频率极其高。例如:1.我们使用不同的系统的时候,可以通过判断系统来对软件包进行安装。2.在nfs和rsync安装过程中,客户端服务器不需要推送配置文件,之前我们都是写多个play,会影响效率。3.我们在源码安装nginx的时候,执行第二遍就无法执行了,此时我们就可以进行判断是否安装过。1.判断系统[root@m01 p原创 2021-04-17 08:25:33 · 107 阅读 · 0 评论 -
12.23Ansible定义变量
一、Ansible定义变量1.设置变量的方法在主机清单中配置变量在命令行定义变量在playbook中定义变量使用内置变量通过vars_file定义变量通过host_vars和group_vars定义变量2.变量优先级测试1)在playbook中定义变量[root@m01 project]# vim test.yml - hosts: web_group vars: file: playbook_vars tasks: - name: Touch File原创 2021-04-17 08:24:46 · 680 阅读 · 0 评论 -
nginx代理实践
1.环境准备2.代理语法Syntax: proxy_pass URL;Default: —Context: location, if in location, limit_except3.配置web01的nginx[root@web01 ~]# vim /etc/nginx/conf.d/linux.proxy.com.confserver { listen 80; server_name linux.proxy.com; location / {原创 2021-04-13 09:14:04 · 74 阅读 · 0 评论 -
11.26nginx服务添加模块与升级
5.nginx服务添加模块0.删除 Makefile文件1.安装依赖[root@web02 nginx-1.16.1]# yum install -y openssl openssl-devel2.再生成一次[root@web02 nginx-1.16.1]# ./configure --prefix=/usr/local/nginx-1.16.1-new --user=www --group=www --without-http_gzip_module --with-compat --with原创 2021-04-07 14:50:06 · 76 阅读 · 0 评论 -
11.26Nginx相关文件、nginx配置文件、nginx搭建与部署
一、nginx配置文件Nginx主配置文件/etc/nginx/nginx.conf是一个纯文本类型的文件,整个配置文件是以区块的形式组织的。一般,每个区块以一对大括号{}来表示开始与结束。Nginx主配置文件整体分为三块进行学习,分别是CoreModule(核心模块),EventModule(事件驱动模块),HttpCoreModule(http内核模块)1.配置文件内容[root@web01 ~]# cat /etc/nginx/nginx.conf######################原创 2021-04-07 14:48:35 · 84 阅读 · 0 评论 -
11.26nginx三种安装方式
三、Nginx安装1.安装方式epol源安装官方源安装源码包安装2.epol源安装[root@web03 ~]# yum install -y nginx3.官方源安装1)配置官方源[root@web01 ~]# vim /etc/yum.repos.d/nginx.repo[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgcheck=1enab原创 2021-04-07 14:24:52 · 536 阅读 · 1 评论 -
11.30Nginx模块、LNMP架构、搭建wordpress博客
Nginx模块、LNMP架构、搭建wordpress博客一、nginx模块1.目录索引模块1)语法Syntax: autoindex on | off;Default: autoindex off;Context: http, server, location2)配置[root@web01 ~]# vim /etc/nginx/conf.d/www.autoindex.com.conf server { listen 80; server_name www.autoinde原创 2021-04-06 17:54:15 · 109 阅读 · 0 评论 -
12.24playbook忽略错误、Ansible Jinja2 模板概述、Ansible Roles
一、playbook忽略错误默认playbook会检测task执行的返回状态,如果遇到错误则会立即终止playbook的后续task执行,然鹅有些时候playbook即使执行错误了也要让其继续执行- hosts: web_group tasks: - name: Check Httpd Server #使用命令检查服务启动状态时,如果服务没有启动则会得到错误结果,剧本会停止运行 command: systemctl is-active httpd #配置忽原创 2021-04-06 01:21:27 · 560 阅读 · 0 评论 -
12.22Ansible playbook 实战、Ansible 变量
Ansible playbook 实战一、基础准备#1.安装ansible[root@m01 ~]# yum install -y ansible#2.配置ansible[root@m01 ~]# vim /etc/ansible/ansible.cfghost_key_checking = False#3.配置主机清单[root@m01 ~]# vim /etc/ansible/hosts [lb_server]lb01 ansible_ssh_pass='1'lb02 ansi原创 2021-04-06 00:48:04 · 170 阅读 · 0 评论 -
12.21Ansible主机信息模块、Ansible 的 Playbook
一、Ansible主机信息模块1.setup模块#1.获取web01主机所有信息[root@m01 ~]# ansible web01 -m setup#2.获取主机IP[root@m01 ~]# ansible web01 -m setup -a 'filter=ansible_default_ipv4'#3.获取主机名[root@m01 ~]# ansible web01 -m setup -a 'filter=ansible_fqdn'web01 | SUCCESS => {原创 2021-04-06 00:32:43 · 495 阅读 · 0 评论 -
12.17Ansible概述、ad-hoc概述
一、Ansible 概述1.什么是AnsibleAnsible是一个自动化统一配置管理工具,自动化主要体现在Ansible集成了丰富模块以及功能组件,可以通过一个命令完成一系列的操作,进而能减少重复性的工作和维护成本,可以提高工作效率。2.自动化工具puppet 学习难,安装ruby环境难,没有远程执行功能ansible 轻量级,大规模环境下只通过ssh会很慢,串行salt stack 一般选择salt会使用C/S结构的模式,salt-master和salt-minion,并行的,大规模批量操作原创 2021-04-06 00:07:22 · 231 阅读 · 2 评论 -
12.11keepalived脑裂、nginx优化
一、keepalived 脑裂1.脑裂的故障2.脑裂模拟1)开启防火墙2)访问网站3)关闭防火墙3.脑裂解决的办法二、高可用keepalived与nginx1.nginx故障切换脚本2.使用keepalived配置文件调用nginx切换脚本1)配置抢占式时2)配置非抢占式时3.测试Nginx常见问题一、nginx多server优先级1.准备多个配置文件2.创建站点文件3.访问测试4.多server优先级总结5.多server优先级总结验证二、nginx禁止IP访问1原创 2021-04-05 23:50:37 · 529 阅读 · 0 评论 -
12.10Keepalived高可用
Keepalived高可用一、Keepalived高可用介绍1.什么是高可用2.常用的工具3.keepalived是如何实现高可用的?1)涉及名词2)例子4.高可用keepalived核心概念二、keepalived搭建1.环境准备2.保证七层负载均衡完全一致3.安装keepalived4.配置keepalived1)查找配置文件2)配置主节点的配置文件3)配置备节点5.启动服务6.keepalived开启日志三、keepalived的抢占式与非抢占式1.两个节点都启动原创 2021-04-05 23:31:49 · 218 阅读 · 0 评论 -
12.9rewrite、HTTPS
一、rewrite1.使用场景2.rewrite的flag标签3.伪静态二、rewrite补充1.rewrite匹配优先级1)优先级2)配置2.rewrite的环境变量1)servername2)server_name2)servername2)request_filename/requesturi:请求变量3)request_uri:请求变量3)requesturi:请求变量3)http_host3.rewrite开启日志三、HTTPS介绍1.概述2.模拟网站劫持1)配原创 2021-04-05 23:23:05 · 625 阅读 · 1 评论 -
12.16firewalld防火墙、iptables防火墙
一、防火墙基本概述二、防火墙区域管理三、防火墙基本指令参数1.firewall-cmd命令分类列表四、防火墙区域配置策略1.禁用与取消禁用防火墙2.操作防火墙3.firewalld常用命令1)查看默认使用的区域2)查看默认区域的规则3)查看指定区域的默认规则4)查看区域是否允许某服务五、防火墙配置1.firewalld放行服务1)firewalld放行一个服务2)firewalld放行多个服务3)自己添加服务,配置规则2.firewalld放行端口1)firewalld放原创 2021-04-05 23:02:20 · 372 阅读 · 0 评论 -
11.27Nginx服务、Nginx配置文件
一、nginx回顾1.安装2.nginx配置文件二、Nginx虚拟机1.虚拟主机方式2.基于多IP的方式0)网卡添加子IP1)第一个配置文件2)第二个配置文件3)检查配置4)重启访问3.基于多端口的方式1)第一个配置文件2)第二个配置文件3)检查配置4)重启访问4.基于多域名的方式1)第一个配置文件2)第二个配置文件3)检查配置4)重启5)配置本地hosts访问5.日志配置1)第一个配置2)第二个配置3)重启访问测试三、nginx日志1.log_form原创 2021-04-05 00:06:20 · 123 阅读 · 0 评论 -
12.3负载均衡介绍、负载均衡实践、负载均衡调度算法、后端状态,Nginx负载均衡会话保持/12.4四层负载均衡
一、负载均衡1.负载均衡模块2.环境准备3.web01准备站点1)配置nginx2)准备网站3)配置hosts访问5.准备代理优化文件6.重启访问测试二、负载均衡结合项目1.配置wordpress负载均衡2.配置hosts查看网站3.配置zh的负载均衡4.负载均衡常见问题1)问题2)解决问题的模块3)配置三、负载均衡调度算法1.轮询的配置方法2.加权轮询配置3.ip_bash配置方法四、负载均衡后端状态1.down状态配置2.backup状态配置3.访问错误状原创 2021-04-05 00:04:05 · 731 阅读 · 1 评论 -
12.1搭建LNMP、搭建wordpress、知乎、edusoho、拆分数据库、扩展web服务器、搭建文件共享、实时备份、12.2代理的定义、模块、实践
一、回顾1.搭建LNMP环境2.搭建wordpress二、搭建LNMP1.配置官方源2.yum安装nginx3.配置nginx4.创建用户5.启动6.上传php包7.安装8.配置PHP9.启动10.安装mariadb11.启动12.设置数据库密码13.使用密码连接数据库测试三、搭建wordpress、知乎、edusoho1.上传代码包2.解压代码包3.授权代码4.配置nginx1)配置wordpress的nginx2)配置知乎的nginx配置3)配置eduso原创 2021-04-05 00:03:35 · 667 阅读 · 1 评论 -
11.25HTTP协议、Nginx web基础
一、HTTP协议1.什么是HTTP?(Hyper Text Transfer Protocol)超文本传输协议2.什么是超文本?3.什么是URL?二、HTTP协议原理1.文字描述(正常)2.文字描述(不正常版)三、访问网站分析1.请求过程中是以报文的形式2.基本信息 General3.响应头部 Response Headers4.请求头部 Request Headers四、HTTP请求方法HTTP协议版本:五、HTTP响应方法1.状态码:(status-code)六、请求头部原创 2021-04-05 00:07:33 · 896 阅读 · 0 评论 -
12.14Nginx常见问题、Nginx优化
一、server优先级二、禁止IP访问三、Nginx try_file路径匹配1.正常的配置文件2.使用try_file的配置3.修改try_file配置4.一般使用场景1)配置nginx2)安装tomcat3)测试四、Nginx优雅显示错误页面1.跳转到网络2.跳转到本地文件3.访问php找不到文件时错误页面跳转一、优化概述1.需要了解2.从哪些方面入手3.影响性能的指标二、ab测试工具1.安装ab测试工具2.工具使用3.配置nginx网站4.配置hosts压测原创 2021-04-04 22:06:04 · 237 阅读 · 0 评论 -
12.15Nginx优化、PHP优化
一、静态资源优化1.静态资源2.静态资源缓存1)配置缓存过期时间2)配置不走缓存3.静态资源读取1)文件高效读取2)文件高效传输3)长连接4)长连接传输4.静态资源压缩1)静态资源压缩配置语法2)压缩配置3)上传文件二、防资源盗链1.配置被盗连的网站2.配置盗链的网站3.配置hosts访问测试4.配置防盗链语法5.配置防盗链6.伪造请求头7.允许多个域名盗链三、跨域访问1.盗链和跨域的区别2.配置被跨域的网站3.配置跨域网站4.配置hosts测试5.测试原创 2021-04-04 14:41:33 · 296 阅读 · 0 评论 -
12.7单多台机器动态分离、Nginx的Rewrite重写
一、动静分离1.单台机器动静分离2.多台机器的动静分离1)准备环境2)配置web01的静态资源3)配置web02的动态资源4)配置负载均衡5)整合静态资源和动态资源二、nginx资源分离1.准备环境2.配置web01服务器1)配置nginx2)创建站点目录3)访问测试3.配置web02服务器1)配置nginx2)创建站点文件3)访问测试4.配置web03服务器1)配置nginx2)创建站点文件3)访问测试5.配置负载均衡1.配置nginx2.重启访问一、Re原创 2021-04-04 14:25:29 · 148 阅读 · 0 评论 -
项目搭建:博客、知乎、PHP(MySQL数据库管理工具)
1.项目搭建: 博客、知乎、PHP(MySQL数据库管理工具)2.搭建流程: web端搭建服务==》通过nfs服务实现所有web端共享==》数据同步3.到数据库db01==》nfs服务在实时备份到backup==》挂载七层负载均衡集群==》挂载四层负载均衡 3.准备环境:4.操作流程:1.LNMP架构搭建 (web01与web02相同)(1)配置nginx官方源rpm包[root@web01 ~]# vim /etc/yum.repos.d/ngi.原创 2021-04-04 14:06:14 · 399 阅读 · 0 评论 -
NFS+Rsync+Inotify+Nginx+php
题目:1.搭建lnmp架构2.搭建博客与知乎3.两台web服务器实现文件同步4.nfs文件实时备份到backup解:一、web01与web02客户端操作1.安装nginx和PHP服务(1)配置官方源[root@web01 ~]# vim /etc/yum.repos.d/nginx.repo [nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgche.原创 2021-04-04 13:38:52 · 198 阅读 · 0 评论 -
SSH远程管理服务
一、SSH 远程管理服务1.ssh简介二、ssh和telnet1.使用telnet连接服务器2.ssh和telnet的区别三、SSH相关命令1.ssh命令2.xshell连接不上服务器怎么办?3.scp命令4.sftp命令四、SSH验证方式1.基于账户密码远程登录2.基于秘钥远程登录五、SSH免密场景1.powershell免密连接跳板机2.xshell免密登录跳板机3.巡检脚本4.跳板机脚本六、SSH安全优化1.优化内容2.优化的配置七、扩展1.免交互expec原创 2021-02-25 16:34:52 · 368 阅读 · 0 评论 -
Serync实时同步服务
一、NFS总结1.NFS优点2.NFS缺点3.NFS应用建议二、Rsync+NFS 解决单点故障1.准备环境2.web01搭建上传作业代码3.NFS服务器搭建NFS服务端4.web端挂载NFS服务器5.backup服务器搭建rsync服务端6.NFS服务器实时备份data目录到rsync7.测试8.backup服务器安装NFS服务端9.故障切换三、sersync 实时同步1.什么是实时同步?2.为什么使用?3.实时同步工具选择?4.安装sersync四、扩展分享1.r原创 2021-02-24 19:22:43 · 326 阅读 · 0 评论 -
NFS服务
一、NFS共享服务1.使用NFS解决了什么2.NFS原理二、NFS实践1.环境准备2.服务端操作(17.16.1.31)3.客户端操作(172.16.1.7)三、NFS挂载与卸载1.注意事项2.挂载3.卸载四、NFS配置详解五、NFS案例1.环境准备2.web端安装http和php3.上传代码4.解压代码5.启动httpd6.访问页面测试7.挂载六、统一用户1.服务器创建统一用户2. 需要修改用户的服务3.修改httpd的用户4.修改nfs服务的用户5.修改原创 2021-02-23 15:35:12 · 256 阅读 · 0 评论