wordpress网站克隆会网站开发维护的ps什么岗位

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

wordpress网站克隆,会网站开发维护的ps什么岗位,快速搭建网站框架图,如何把自己写的html变成网站一、HAProxy简介 1.1、什么是Haproxy HAProxy是法国开发者 威利塔罗(Willy Tarreau)在2000年使用C语言开发的一个开源软件是一款具备高并发(万级以上)、高性能的TCP和HTTP负载均衡器支持基于cookie的持久性#xff0c;自动故障切换#xff0c;支持正则表达式及web状态统计。…一、HAProxy简介 1.1、什么是Haproxy HAProxy是法国开发者 威利塔罗(Willy Tarreau)在2000年使用C语言开发的一个开源软件是一款具备高并发(万级以上)、高性能的TCP和HTTP负载均衡器支持基于cookie的持久性自动故障切换支持正则表达式及web状态统计。 提供高可用性、负载均衡以及基于TCP第四层和HTTP第七层应用的代理软件支持虚拟主机它是免费、快速并且可靠的一种解决方案。 官方文档https://www.haproxy.org/  1.2、Haproxy优缺点 1.2.1、优点 高性能Haproxy是专门为高性能设计的具有低延迟和并发处理能力。灵活Haproxy具有丰富的配置选项可以满足各种复杂的负载均衡需求。可扩展性Haproxy支持插件扩展可以轻松地集成到现有的系统中。安全性Haproxy提供了SSL/TLS加密、访问控制列表ACL等安全功能。 1.2.2、缺点 配置复杂Haproxy的配置可能比其他一些负载均衡器更复杂需要一定的学习和经验。成本较高Haproxy是一款商业软件需要购买许可证才能使用。 1.3、实验环境 haproxy172.25.254.100 web1172.25.254.10 web2172.25.254.20 haproxy haproxy:(172.25.254.100) dnf install haproxy -y rpm -qc haproxy 编辑配置文件 vim /etc/haproxy/haproxy.cfg 设置vim时tap的间距 vim ~/.vimrc         set ts4 ai sw4 systemctl enable haproxy web1: yum install httpd -y     echo web1 - 172.25.254.10 /var/www/html/index.html     systemctl enable –now httpd web2: yum install nginx -y echo websever1 - 192.168.0.10 /usr/share/nginx/html/index.html systemctl start nginx  二、详解配置文件 haproxy 的配置文件/etc/haproxy/haproxy.cfg由两部分组成全局设定和对代理的设定 1、全局配置段global 进程及安全配置相关的参数性能调整相关参数Debug参数 2、代理配置段proxies defaults:为frontend,backend,listen提供默认配置frontend:前端相当于nginx中的server{}backend:后端相当于nginx中的upstream{}listen:同时拥有前端和后端配置,配置简单,生产推荐使用 2.1、global参数 log 127.0.0.1 local0  info        //定义haproxy日志输出设置     log loghost local0 info        //定义haproxy日志级别     maxconn 20480            //定义最大连接数     chroot /usr/local/haproxy        //chroot运行路径     pidfile /var/run/haproxy.pid    //haproxy进程PID文件        user haproxy            //运行haproxy用户可用uid代替     group haproxy            //运行haproxy用户组可用gid代替     daemon                //以后台形式运行haproxy 2.2、defaults参数 modetcp|http|health logglobal为每个实例启用事件和流量日志因此可用于所有区段。  #启用记录HTTP请求、会话状态和计时器的功能。     option                  httplog #等待客户端完整HTTP请求的时间此处为等待10s. option http-server-close #透传客户端真实IP至后端web服务器 #在apache配置文件中加入:br%{X-Forwarded-For}i#后在webserer中看日志即可看到地址透传信息 option forwardfor       except 127.0.0.0/8 #当server Id对应的服务器挂后强制定向到其他健康的服务器重新派发 option                  redispatch #连接后端服务器失败次数 retries                 3                timeout http request 在客户端建立连接但不请求数据时关闭客户端连接 timeout queue 等待最大时长 timeout connect 定义haproxy将客户端请求转发至后端服务器所等待的超时时长 timeout client客户端非活动状态的超时时长 timeout server客户端与服务器端建立连接后等待服务器端的超时时长 timeout http-keep-alive 定义保持连接的超时时长 timeout check健康状态监测时的超时时间过短会误判过长资源消耗 maxconn :每个server最大的连接数 http-server-close : 在使用长连接时为了避免客户端超时没有关闭长连接此功能可以使服务器端关闭长连接 redispatch 在使用基于cookie定向时一旦后端某一server宕机时会将会话重新定向至某一上游服务器必须使用 的选项 2.3、frontend参数backend参数 注意:backend 的名称必须唯一,并且必须在listen或frontend中事先定义才可以使用,否则服务无法启动 frontend和backend的简化配置 frontend webcluster    bind *:80    mode http    use_backend webcluster-host调用backend名称 backend webcluster-host    mode http    server web1 172.25.254.10:80 check inter 2 fall 2 rise 5    server web2 172.25.254.20:80 check inter 2 fall 2 rise 5 2.4、listen参数 使用listen替换 frontend和backend的配置方式可以简化设置 listen的简化配置 listen cluster bind *:80                #设定监听端口*监听所有 mode tcp server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1 server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 2.5、server参数  server 名称  IP:port #可指定的健康状态监测IP可以是专门的数据网段减少业务网络的流量#指定的健康状态监测端口 check对指定rea1进行健康状态检査如果不加此设置默认不开启检査,只有check后面没有其它配置也可以启用检查功能 inter num #健康状态检查间隔时间默认2000ms fall num #后端服务器从线上转为线下的检查的连续失效次数默认为3 rise num #后端服务器从下线恢复上线的检查的连续有效次数默认为2 weight weight #默认为1最大值为2560(状态为蓝色)表示不参与负载均衡但仍接受持久连接 backup #将后端服务器标记为备份状态,只在所有非备份主机down机时提供服务类似Sorry Server disabled #将后端服务器标记为不可用状态即维护状态除了持久模式将不再接受连接,状态为深黄色,优雅下线,不再接受新用户的请求 redirect prefix http://www.baidu.com/ #将请求临时(302)重定向至其它URL只适用于http模式 redir http://www.baidu.com #将请求临时(302)重定向至其它URL只适用于http模式 maxconn maxconn #当前后端server的最大并发连接数 2.6、socat 可对服务器动态权重和其它状态可以利用 socat工具进行调整Socat 是 Linux 下的一个多功能的网络工具名字来由是Socket CAT相当于netCAT的增强版.Socat 的主要特点就是在两个数据流之间建立双向通道且支持众多协议和链接方式。如IP、TCP、UDP、IPv6、Socket文件等。 dnf install socat -y 查看集群状态 echo show servers state | socat stdio /var/lib/haproxy/stats 改权重 echo set weight webcluster/web1 1 | socat stdio /var/lib/haproxy/stats 查看web1的权重 例一:利用工具socat 对服务器动态权重调整 例二、将web1下线 重新启动 例三、针对多进程处理方法 启用多进程 查看多进程信息  这样就会生成两个stats文件来进行多进程管理  三、Haproxy的算法 3.1、静态算法 静态算法:按照事先定义好的规则轮询公平调度不关心后端服务器的当前负载、连接数和响应速度等且无法实时修改权重(只能为0和1,不支持其它值)只能靠重启HAProxy生效。 3.1.1、static-rr:基于权重的轮询调度 不支持运行时利用socat进行权重的动态调整(只支持0和1,不支持其它值)不支持端服务器慢启动其后端主机数量没有限制相当于LVS中的 wrr 如 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance static-rr     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 2     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 3.1.2、first 根据服务器在列表中的位置自上而下进行调度其只会当第一台服务器的连接数达到上限新请求才会分配给下一台服务其会忽略服务器的权重设置不支持用socat进行动态修改权重,可以设置0和1,可以设置其它值但无效 如 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance first     server web1 172.25.254.10:80 maxconn 1 check inter 2 fall 3 rise 5 weight 2     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 3.2、动态算法 基于后端服务器状态进行调度适当调整新请求将优先调度至当前负载较低的服务器权重可以在haproxy运行时动态调整无需重启 3.2.1、roundrobin 基于权重的轮询动态调度算法支持权重的运行时调整不同于Ivs中的rr轮训模式HAProxy中的roundrobin支持慢启动(新加的服务器会逐渐增加转发数)其每个后端backend中最多支持4095个real server支持对real server权重动态调整roundrobin为默认调度算法,此算法使用广泛 如 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance roundrobin     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 3.2.2、leastconn 支持权重的运行时调整和慢启动即:根据当前连接最少的后端服务器而非权重进行优先调度(新客户端连接)比较适合长连接的场景使用比如:MySQL等场景 如 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance leastconn     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 3     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 3.3、其他算法既可静态也可动态 有hash-type contsistent是动态没有是静态 3.3.1、sorce  源地址hash基于用户源地址hash并将请求转发到后端服务器后续同一个源地址请求将被转发至同一个后端web服务器。此方式当后端服务器数据量发生变化时会导致很多用户的请求转发至新的后端服务器默认为静态方式但是可以通过hash-type支持的选项更改这个算法一般是在不插入Cookie的TCP模式下使用也可给拒绝会话cookie的客户提供最好的会话粘性适用于session会话保持但不支持cookie和缓存的场景源地址有两种转发客户端请求到后端服务器的服务器选取计算方式分别是取模法和一致性hash 如 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance source     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 3     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 如果访问客户端时一个家庭那么所有的家庭的访问流量都会被定向到一台服务器这时source算法的缺陷 1、取模法mod-base  mod-base对source地址进行hash计算再基于服务器总权重的取模最终结果决定将此请求转发至对应的后端服务器。 此方法是静态的即不支持在线调整权重不支持慢启动可实现对后端服务器均衡调度缺点是当服务器的总权重发生变化时即有服务器上线或下线都会因总权重发生变化而导致调度结果整体改变hash-type 指定的默认值为此算法 如 2、一致性hash  一致性hash当服务器的总权重发生变化时对调度结果影响是局部的不会引起大的变动。 该hash算法是动态的支持使用 socat等工具进行在线权重调整支持慢启动  如 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance source     hash-type consistent     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 3.3.2、uri 基于对用户请求的URI的左半部分或整个uri做hash再将hash结果对总权重进行取模后根据最终结果将请求转发到后端指定服务器适用于后端是缓存服务器场景默认是静态算法也可以通过hash-type指定map-based和consistent来定义使用取模法还是一致性hash 注意:此算法基于应用层所以只支持 mode http 不支持 mode tcp 1、uri取模法  配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance uri     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 2、uri一致性hash  配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance uri     hash-type consistent     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1  [rootwebserver1 ~]# echo web1-index1 /var/www/html/index1.html [rootwebserver1 ~]# echo web1-index2 /var/www/html/index2.html [rootwebserver1 ~]# echo web1-index3 /var/www/html/index3.html [rootwebserver2 ~]# echo web2-index1 /var/www/html/index1.html [rootwebserver2 ~]# echo web2-index2 /var/www/html/index2.html [rootwebserver2 ~]# echo web2-index3 /var/www/html/index3.html 访问不同的uri可以将用户同样的请求转发至相同的服务器  3.3.3、url_param url_param对用户请求的url中的 params 部分中的一个参数key对应的value值作hash计算并由服务器总权重相除以后派发至某挑出的服务器,后端搜索同一个数据会被调度到同一个服务器多用与电商通常用于追踪用户以确保来自同一个用户的请求始终发往同一个realserver如果无没key将按roundrobin算法  1、取模法  配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance uri_param name,userid     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1  2、一致性hash  配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance uri_param name,userid     hash-type consistent     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1  3.3.4、hdr 针对用户每个http头部(header)请求中的指定信息做hash此处由 name 指定的http首部将会被取出并做hash计算然后由服务器总权重取模以后派发至某挑出的服务器如果无有效值则会使用默认的轮询调度。 1、取模值  配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance hdr(User-Agent)     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1  2、一致性hash  配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode http     balance hdr(User-Agent)     hash-type consistent     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1  3.4、算法总结 #静态 static-rr—————————————-tcp/http first ———————————————tcp/http #动态 roundrobin———————————–tcp/http leastconn—————————————-tcp/http #以下静态和动态取决于hash_type是否consistent source———————————————-tcp/http Uri—————————————————–http url_param——————————————-http hdr—————————————————-http  3.4.1、各算法使用场景 first                                #使用较少 static-rr                                #做了session共享的web集群 roundrobin leastconn                        #数据库 source #基于客户端公网IP的会话保持 Uri—————http                #缓存服务器CDN服务商蓝汛、百度、阿里云、腾讯 ur] param———http                #可以实现session保持 hdr                                               #基于客户端请求报文头部做下一步处理  四、高级功能实验 4.1、基于cookie的会话保持 cookie value:为当前server指定cookie值实现基于cookie的会话黏性相对于基于 source 地址hash 调度算法对客户端的粒度更精准但同时也加大了haproxy负载目前此模式使用较少已经被session共享服务器代替。 统一cookie值的使用通一服务器 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     option forwardfor     mode http     balance roundrobin     cookie WEBCOOKIE insert nocache indirect     server web1 172.25.254.10:80 cookie zpy1 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 cookie zpy2 check inter 2 fall 3 rise 5 weight 1 网页测试 命令测试 基于cookie指定值访问 curl -b WEBCOOKIEzpy1 172.25.254.100 4.2、状态页 1、 状态页配置项  stats enable                                #基于默认的参数启用stats page stats hide-version                       #将状态页中haproxy版本隐藏 stats refresh delay                  #设定自动刷新时间间隔默认不自动刷新 stats uri prefix                         #自定义stats page uri默认值:/haproxy?stats stats auth user:passwd      #认证时的账号和密码可定义多个用户,每行指定一个用户                                                    #默认:no authentication stats admin {ifunless } cond   #启用stats page中的管理功能 2、启用状态页   配置文件/etc/haproxy/haproxy.cfg  listen stats:     mode http     bind *:7777     stats enable     stats uri /status     stats auth zpy:zpy 3、登录状态页 4.3、IP透传 4.3.1、四层IP透传 四层IP透传只能用在nginx上apache用不了 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode tcp     balance roundrobin     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 send-proxy check inter 2 fall 3 rise 5 weight 1 nginx配置/etc/nginx/nginx.conf (在访问日志中通过变量\(proxy_protoco1_addr 记录透传过来的客户端IP) http {     log_format  main  \)remote_addr - \(remote_user [\)time_local] \(request                       \)status \(body_bytes_sent \)http_referer                       \(proxy_protocol_addr                       \)http_user_agent \(http_x_forwarded_for;         ………………     server {            listen       80 proxy_protocol;             listen       [::]:80;            server_name  _;             root         /usr/share/nginx/html         ………………         } } 测试  4.3.2、七层IP透传  当haproxy工作在七层的时候也可以透传客户端真实IP至后端服务器 配置文件/etc/haproxy/haproxy.cfg listen webcluster     bind *:80     mode tcp     balance roundrobin     server web1 172.25.254.10:80 check inter 2 fall 3 rise 5 weight 1     server web2 172.25.254.20:80 check inter 2 fall 3 rise 5 weight 1 在由haproxy发往后端主机的请求报文中添加“X-Forwarded-For首部其值为前端客户端的地址;用于向后端主发送真实的客户端IP nginx的配置/etc/nginx/nginx.conf http {     log_format  main  \)remote_addr - \(remote_user [\)time_local] \(request                       \)status \(body_bytes_sent \)http_referer                       \(http_user_agent \)http_x_forwarded_for;         ………………     server {            listen       80;             listen       [::]:80;            servername  ;             root         /usr/share/nginx/html         ………………         } } apache的配置/etc/httpd/conf/httpd.conf IfModule log_config_module     #     # The following directives define some format nicknames for use with     # a CustomLog directive (see below).     #     #LogFormat %h %l %u %t \%r\ %s %b \%{Referer}i\ \%{User-Agent}i\ combined     LogFormat %{X-Forwarded-For}i %l %u %t \%r\ %s %b \%{Referer}i\ \%{User-Agent}i\ combined     LogFormat %h %l %u %t \%r\ %s %b common 测试 4.4、ACL访问控制列表Access ControlLists 1、ACL配置选项 用ACL来定义或声明一个aclaclaclnamecriterionflagsoperatorvalueacl名称匹配规范匹配模式具体操作符操作对象类型 2、ACL-criterion 匹配规范 hdr string提取在一个HTTP请求报文的首部 hdr([name[occ]])完全匹配字符串,header的指定信息occ表示在多值中使用的值的出现次数 hdr_beg([name[occ]])前缀匹配header中指定匹配内容的begin hdr_end([name[occ]])后缀匹配header中指定匹配内容end hdr_dom([name[oCC]])域匹配header中的domain name(host) hdr_dir([name[occ]])路径匹配header的uri路径 hdr_1en([name[occ]])长度匹配header的长度匹配 hdr_reg([name[occ]])正则表达式匹配自定义表达式(regex)糊匹配 hdr_sub([name[occ]])子串匹配header中的uri模糊匹配 模糊匹配c 洪湖报文中a/b/c也会匹配 3、 ACL-flags 匹配模式 -i                  不区分大小写 -m                使用指定的正则表达式匹配方法 -n                 不做DNS解析 -u                 禁止ac1重名否则多个同名ACL匹配或关系  4、ACL-operator 具体操作符  ACL操作符 整数比较:eq、ge、gt、1e、1t 字符比较: -exact match(-m str)字符串必须完全匹配模式 -substring match(-m sub)在提取的字符串中查找模式如果其中任何一个被发现ACL将匹配 -prefix match(-m beg)在提取的字符串首部中查找模式如果其中任何一个被发现ACL将匹配 - subdir match(-m dir)将模式与提取字符串的尾部进行比较如果其中任何一个匹配则ACL进行匹配 - subdir match(-m dir)查看提取出来的用斜线分隔(“/)的字符串如其中任一个匹配则ACL进行匹配 -domain match(-m dom)查找提取的用点(“.)分隔字符串如果其中任何一个匹配则ACL进行匹配 5、多个ACL的组合调用方式 与:隐式(默认)使用 或:使用“or或“表示 否定:使用!”表示 4.4.1、域名匹配 首先在本地主机进行域名解析 配置文件/etc/haproxy/haproxy.cfg frontend webcluster     bind *:80     mode http     acl test hdr_dom(host) -i www.timingzpy.org     #acl test hdr_end(host) -i www.timingzpy.org     #acl test hdr_dom(host) -i www.timingzpy.org         #acl badwebrowers hdr_sub(User-Agent) -i curl wget     #acl static path_end -i .html .jpg .png .css .jc     #acl php path_end -i .php     ###############################################     use_backend webcluster-host if test     #use_backend webcluster-host if ctrl_ip     #http-request deny if badwebrowers     #use_backend webcluster-host if php     #use_backend webcluster     default_backend default-host   backend webcluster-host     mode http     server web1 172.25.254.10:80 check inter 2 fall 2 rise 5 backend default-host     mode http     server web2 172.25.254.20:80 check inter 2 fall 2 rise 5 1、 acl test hdr_dom(host) -i www.timingzpy.org 满足条件就用的服务器1不满足就用服务器2 2、 acl test hdr_end(host) -i www 4.4.2、基于源地址的访问控制 acl test src 172.25.254.1 172.25.254.20 测试 拒绝指定IP或IP范围访问 acl test src 172.25.254.1 172.25.254.20 http-request deny if test default_backend default-host 测试 src:172.25.254.20 src:172.25.254.100 4.4.3、匹配浏览器类型 匹配客户端浏览器将不同类型的浏览器调动至不同的服务器组 范例: 拒绝curl和wget的访问 acl test hdr_sub(User-Agent) -i curl wget http-request deny if test default_backend default-host 4.4.3、基于文件后缀名实现动静分离 web1: yum install php -y systemctl restart httpd vim /var/www/html/index.php ?php     phpinfo(); ? Haproxy  acl static path_end -i .html .jpg .png .css .jc acl php path_end -i .php use_backend webcluster-host if php default_backend default-host web2:静态页面 mkdir/usr/share/nginx/html/static -p echo static -172.25.254.20 /usr/share/nginx/html/static/index.htm 测试 4.5、自定义Haproxy错误页面 对指定的报错进行重定向进行优雅的显示错误页面 使用errorfile和erroroc指令的两种方法可以实现自定义各种错误页面  查看Haproxy默认使用的错误页面 rpm -ql haproxy | grep http 自定义错误页面  mkdir /etc/haproxy/errorpage  vim /etc/haproxy/errorpage/503.http 也可以将将他默认的错误页面复制成我们的错误页面在进行改动这样可以减少错误 haproxy: errorfile 503 /etc/haproxy/errorpage/503.http 通过在server后面加disabled来下线两个服务器 backend webcluster-host     mode http     server web1 172.25.254.10:80 check inter 2 fall 2 rise 5 disabled backend default-host     mode http     server web2 172.25.254.20:80 check inter 2 fall 2 rise 5 disabled   基于http重定向错误页面 将错误页面重定向到百度 haproxy: errorloc 503 https://www.baidu.com 4.6、 Haproxy四层负载 以mysql为例 haproxy listen dbserver:     bind *:3306     mode tcp     balance static-rr     server db1 172.25.254.10:3306 check inter 2 fall 2 rise 5     server db2 172.25.254.20:3306 check inter 2 fall 2 rise 5 web1/2: yum install mariadb-server -y 改配置区分一下 vim /etc/my.cnf.d/mariadb-server.cnf       开启mariadb 进入mysql select server_id:可以查看id,来区分 设置用户名密码 create user zpy% idnetified by zpy; 给予权限 Grant ALLON . TO zpy%; 退出 Haproxy mysql -uzpy -pzpy -h 172.25.254.100 select server_id 4.7、Haproxy https 实现 证书制作  Haproxy mkdir -p /etc/haproxy/certs openssl req -newkey rsa:2048 -nodes -sha512 -keyout /etc/haproxy/certs/timingzpy.org.key -x509 -days 365 -out /etc/haproxy/certs/timingzpy.org.crt cat /etc/haproxy/certs/timinglee.org.key /etc/haproxy/certs/timinglee.org.crt  /etc/haproxy/certs/timingzpy.pem 配置文件 frontend webcluster     bind *:80     redirect scheme https if !{ ssl_fc }     mode http listen web-https     bind *:443 ssl crt /etc/haproxy/certs/timingzpy.pem     mode http     balance roundrobin     server web1 172.25.254.10:80 check inter 2 fall 2 rise 5     server web2 172.25.254.20:80 check inter 2 fall 2 rise 5 curl -IkL  http://172.25.254.100 全站加密 [roothaproxy ~]# cd /etc/haproxy/conf.d/ [roothaproxy conf.d]# cat webcluster.cfg listen stats         mode http         bind *:7777         stats enable         stats refresh 3         stats uri /status         stats auth zpy:zpy [roothaproxy conf.d]# systemctl daemon-reload [roothaproxy conf.d]# systemctl restart haproxy.service