您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 搭建mysql负载均衡及高可用环境12
实用标准文案精彩文档搭建mysql负载均衡及高可用环境(1)使用rhel5.8,mysql,keepalived,haproxy搭建一个集高可用、负载均衡的集群;也有使用到mysql的二进制复制来保持数据一致性;避免了单节点故障,也提供设备的利用率;虽然这个实验只有两台设备,但可以此为例,理解概念后再放大到其它环境也可以。AD:目标:使用两台主机实现Mysql的负载均衡及冗余,并做到双主互备;环境:rhel5.8,mysql-5.0.77,keepalived-1.2.7,haproxy-1.4.20;说明:keepalived实现通过vrrp协议,通过使一个虚拟IP地址(或称浮动IP)在主备设备间的切换来达到主机冗余;而客户机通过访问这个虚拟IP来获取服务;haproxy是一款负载均衡水草玛瑙mnwg.net软件,用于将请求按策略转发给不同主机,达到负载均衡的效果;可以实现网络层或应用层上的判断分配;mysql开启二进制日志,做到数据库之间的双向复制,保持数据一致性;#提醒一下,实际生产环境没人会这样搭建的,仅通过这个实验来理解这些概念,希望阅者能有所获;server1_ip=192.168.5.11server2_ip=192.168.5.12server_vip=192.168.5.111================================================#此处关闭了防火墙,开启则另配置相应规则serviceiptablesstopchkconfigiptablesofflsoptsoft#提取准备软件到此处haproxy-1.4.20.tar.gzkeepalived-1.2.7.tar.gzmkdiroptkeepalivedmkdiroptscripts#此实验用到脚本目录mkdiroptlog#此实验日志文件夹=================================================[install_mysql]#在两台主机上安装mysql,此处使用rpm包安装,yum环境可以搭本地源;yuminstall-ymysql-serverservicemysqldstart=======================================================[create_mysql_test_table]#分别创建一张高山茶eupai.net相同名称和字段的表,插入不同的值,方便中途测试ha和轮询是否成功;#还有分别创建一个相同的用户#server1mysqlusetest;createtablemywait(namechar(9),phonechar(14));insertintomywait(name,phone)values('wait',15000000000);#server2实用标准文案精彩文档usetest;createtablemywait(namechar(9),phonechar(14));insertintomywait(name,phone)values('chen',15611111111);[new_mysql_test_user]mysqlgrantallontest.*todiaosi@'%'identifiedby'123456';flushprivileges;=======================================================#从客户机上测试一下;mysql-udiaosi-p123456-h192.168.5.11-eselect*fromtest.mywait;mysql-udiaosi-p123456-h192.168.5.12-eselect*fromtest.mywait;#至此,mysql基础环境搭建完成;=======================================================[install_keepalived]yuminstall-ylibnl-devel#解决依赖关系tarxfoptsoftkeepalived-1.2.7.tar.gz-Coptsoftcdoptsoftkeepalived-1.2.7#with-kernel指定内核版本时,根据本机情况使用TAB键补全.configure--prefix=optkeepalived--with-kernel-dir=usrsrckernels2.6.18-308.el5-i686makemakeinstall[keepalived_config]#因为没有安装在目录下,所以这些启动和配置文件都需要再copy一下;cpoptkeepalivedsbinkeepalivedusrsbincpoptkeepalivedetcrc.dinit.dkeepalivedetcinit.dcpoptkeepalivedetcsysconfigkeepalivedetcsysconfigmkdiretckeepalivedcpoptkeepalivedetckeepalivedkeepalived.confetckeepalivedchkconfigkeepalivedon#设置开机启动=======================================================vimetckeepalivedkeepalived.conf#keepalived主配文件#以下的配置适合keepalived本身便是服务提供者的情况;!ConfigurationFileforkeepalived#简单的头部,这里主要可以做邮件通知报警等的设置,此处就暂不配置了;global_defs{notificationdLVS_DEVEL}#预先定义一个脚本,方便后面调用,也可以定义多个,方便选择;vrrp_scriptmysql_chk{scriptoptscriptsmysql_chke.shinterval2#脚本循环运行间隔weight2#脚本的结果导致优先级变更,成功+2}#VRRP虚拟路由冗余协议配置vrrp_instanceVI_1{#VI_1是自定义的名称;stateMASTER#表明这是一台主设备,备用设备为BACKUPinterfaceeth0nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;#指定VIP需要绑定的物理网卡virtual_router_id11#VRID虚拟路由标识,也叫做分组名称,该组内的设备需要相同priority150#定义这台设备的优先级1-254;advert_int1#生存检测时的组播信息发送间隔,组内一致authentication{#设置验证信息,组内一致auth_typePASSnbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;#有PASS和AH两种,常用PASSauth_pass111nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;#密码}virtual_ipaddress{#指定VIP地址,组内一致,可以设置多个IP192.168.5.11124}track_script{#使用在这个域中使用预先定义的脚本mysql_chk}#此部分所载入的脚本为外部脚实用标准文案精彩文档本,不需要预先定义;#也可不添加,此实验在后半部分安装haproxy后,才有添加;notify_masteroptscriptsstart_haproxy.sh#表示当切换到master状态时,要执行的脚本notify_faultoptscriptsstop_keepalived.sh#故障时执行的脚本notify_stopoptscriptsstop_haproxy.shnbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;#keepalived停止运行前运行的脚本}#keepalived主和备的配置文件基本相同;只需要修改:stateBACKUP#修改为备份设备priority100#优先级要比主低#其它地方根据实际情况也可以做调整;1234下一页查看全文内容导航第1页:搭建mysql负载均衡及高可用环境(1)第2页:搭建mysql负载均衡及高可用环境(2)第3页:搭建mysql负载均衡及高可用环境(3)第4页:搭建mysql负载均衡及高可用环境(4)非常网管——网络服务本书使用通俗易懂的语言,通过大量的实例,从实际应用的角度出发,全面系统地介绍了网络服务操作系统平台、电子邮件系统、Web站
本文标题:搭建mysql负载均衡及高可用环境12
链接地址:https://www.777doc.com/doc-5329092 .html