lvs - mask标记
将两个服务绑定在一个集群服务中
如何将两种请求绑定在一个集群中通过一个director来调度,
这里需要iptable工具配合实现。首先在prerouting链上做一个标记,通过标记来调度
起两个服务:
在rs上安装http 和ssl 两种服务将其绑定在一个集群中调度
配置:
Vip:192.168.220.10
Dip:192.168.220.135
Rip1:192.168.220.11
Rip2:192.168.220.12
ifconfig lo:0 192.168.220.10 netmask 255.255.255.255 broadcast 192.168.220.10 up
在配置rs服务器上的vip(lo上的别名ip)是注意 将内核参数arp_agnore 为1 arp_annonce为2 防止ip冲突
在rs服务上安装相关服务 http ssl
ssl需要配置ca认证
拿 director当ca
创建私钥
自签证书:
Touch index.txt
Echo 1 > se rial
在rs上
生成私钥
生成证书
传到CA上签证
# scp ./httpd.csr 192.168.220.135:/
# openssl ca -in httpd.csr -out httpd.crt -days 365
mv httpd.* /etc/httpd/conf.d/ 放在 /etc/httpd/conf.d/ 下
安装ssl模块
yum install mod_ssl -y
修改ssl配置文件
/etc/httpd/conf.d/ssl.conf
DocumentRoot "/var/www/html"
ServerName www.xiao1.com:443
SSLCertificateFile /etc/httpd/conf.d/httpd.crt
SSLCertificateKeyFile /etc/httpd/conf.d/httpd.key
# httpd -t 检查语法
重启
做域名解析
在director上:
用iptables 打标记
# iptables -t mangle -A PREROUTING -d 192.168.220.10 -p tcp -m multiport --dports 80,443 -j MARK --set-mark 3
创建集群:
ipvsadm -A -f 3 -s rr
ipvsadm -a -f 3 -r 192.168.220.11 -g
# ipvsadm -a -f 3 -r 192.168.220.12 -g
访问:
Curl http:// 192.168.220.10
# curl -k --cacert /root/cacert.pem https://192.168.220.10
<h1>rs1 server</h1>
持久连接:
-p 默认是360
Ipvsadm -A -t 192.168.220.10:0 -s rr -p
:0 表示把所有的服务都绑定这这个集群下但一定要加-p 所有服务都会向后端派发。
问题:curl SSL: certificate subject name 'luffichen_server.tencent.com' does not match target host name '192.168.220.10
原因:这是因为 curl 访问 https 服务器时,会验证服务器证书的有效性和证书域名与访问域名一致性
- 解决方法:
1) 修改 curl 选项,使其不验证服务器证书
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($process, CURLOPT_SSL_VERIFYPEER, FALSE);
(2) 针对 curl 命令,-k 选项,也可以使其不验证证书
(3)保证证书域名与访问的域名一致,因为访问的是一个 IP,在 hosts 文件添加IP域名关系映射,然后使用服务器证书的域名进行访问
- 参考:
lvs - mask标记的更多相关文章
- lvs学习笔记
本人身为一个网工,最近一直在工作中学习linux的相关知识.前短时间通过自查资料学习了lvs的相关内容,摘录部分整理后和大家分享,内容较多,较琐碎,望见谅!!! LVS 从Linux内核版本2.6起, ...
- LVS原理以及配置
安装好ipvsadm后需要查看内核是否加载了ip_vs模块儿,如果没有需要手动执行ipvsadm进行加载: # ipvsadm # lsmod |grep ip_vs # rmmod ip_vs_rr ...
- 如何编写LVS对Real Server的健康状态检测脚本
简介:Linux 虚拟服务器(Linux Virtual Server. LVS),是一个由章文松开发的自由软件.利用KVS可以实现高可用的.可伸缩缩的Web, Mail, Cache和Medial等 ...
- 目标检测网络之 Mask R-CNN
Mask R-CNN 论文Mask R-CNN(ICCV 2017, Kaiming He,Georgia Gkioxari,Piotr Dollár,Ross Girshick, arXiv:170 ...
- UnityGUI扩展实例:图片挖洞效果 Mask的反向实现
转载自 https://www.taidous.com/forum.php?mod=viewthread&fid=211&tid=55259 我想大家在用uGUI做界面时,可能经常会碰 ...
- Linux 集群
html,body { } .CodeMirror { height: auto } .CodeMirror-scroll { } .CodeMirror-lines { padding: 4px 0 ...
- TPatch动态补丁系统(iOS)
版权声明:本文由朱煌原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/160 来源:腾云阁 https://www.qclou ...
- OpenCV SIFT原理与源码分析
http://blog.csdn.net/xiaowei_cqu/article/details/8069548 SIFT简介 Scale Invariant Feature Transform,尺度 ...
- 从Word Embedding到Bert模型—自然语言处理中的预训练技术发展史(转载)
转载 https://zhuanlan.zhihu.com/p/49271699 首发于深度学习前沿笔记 写文章 从Word Embedding到Bert模型—自然语言处理中的预训练技术发展史 张 ...
随机推荐
- kafka组件makemirror处理跨机房业务的应用
业务背景:app分散在不同的idc厂商不同的地域,产生业务数据都向一个kafka中进行处理,这些数据比较分散,如果一时网络抖动或者其他因素,数据就丢失了app --> kafka --> ...
- Day8--------------ssh服务
---恢复内容开始--- 远程管理 ssh服务端 oppenssh-server ssh客户端 oppenssh-clients Xshell 开启服务端 service sshd status 点击 ...
- 37)django-单例模式
一:单例模式 单例模式,是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类. 通过单例模式可以保证系统中一个类只有一个实例.即一个类只有一个对象实例. 常用例子:数据库连接串,只保 ...
- iPhone内存溢出——黑白苹果
一旦iPhone内存长期占用过大,一关机即再难启动,如果你Home键加power键等都不行,那么可以要刷机了. 方式: 1.电脑下载ITunes,这个过程比较漫长,一系列逐渐大概3G,下载完成打开. ...
- 牛客网 python 求解立方根
•计算一个数字的立方根,不使用库函数 详细描述: •接口说明 原型: public static double getCubeRoot(double input) 输入:double 待求解参数 返回 ...
- μCUnit,微控制器的单元测试框架
在MCU on Eclipse网站上看到Erich Styger在8月26日发布的博文,一篇关于微控制器单元测试的文章,有很高的参考价值,特将其翻译过来以备学习.原文网址:https://mcuone ...
- python中的zip、map、reduce 、lambda、filter函数的使用
飞机票 lambda函数 lambda只是一个表达式,函数体比def简单很多. lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去. lambda表达式是 ...
- LeetCode(114): 二叉树展开为链表
Medium! 题目描述: 给定一个二叉树,原地将它展开为链表. 例如,给定二叉树 1 / \ 2 5 / \ \ 3 4 6 将其展开为: 1 \ 2 \ 3 \ 4 \ 5 \ 6 解题思路: 这 ...
- WEB漏洞 XSS(一)
1.xss的形成原理 xss 中文名是“跨站脚本攻击”,英文名“Cross Site Scripting”.xss也是一种注入攻击,当web应用对用户输入过滤不严格,攻击者写入恶意的脚本代码(HTML ...
- MySQL数据查询子查询语句