技术改变世界 阅读塑造人生! - shaogx.com

This string was altered by TechBlog\Plugins\Example.; This is an example to show the potential of an offcanvas layout pattern in Bootstrap. Try some responsive-range viewport sizes to see it in action.

Linux 系统运维学习方法汇总

本文转载自:http://freeloda.blog.51cto.com/2033581/1315694大纲一、前言二、Linux 运维大环境说明三、Linux 运维学习思路四、Linux 运维大方向说明五、Linux 运维学习必看书籍推荐六、Linux 运维实践内容简介注,本博文主要用于交流与学习。如有雷同,纯属意外。一、前言... 全文

Linux 系统运维学习方法 如何学习Linux

生产环境的系统初始化脚本【Linux运维之道之脚本案例】

#!/bin/bash#    Author:atong    #    Mail:752119102#    Function:Automatic system initialization###########Update the yum repository######更新yum库cd /etc/yum.repos.d//usr/bin/wget  http://mirrors.sohu.com/help/CentOS-Base-sohu.repo/bin/mv CentOS-Base.repo CentOS-Base-Old.repo... 全文

inux运维 Linux运维之道

Linux运维之操作系统学习笔记

Linux运维之操作系统学习笔记Posted on 25 十二月, 2013 Leave a Comment学习蓝本 《现代操作系统》 荷Andrew S.Tanenbaum著 陈向群 马洪兵等译    现代计算机系统由一个或多个处理器、主存、磁盘、打印机、键盘、鼠标、显示器、网络接口和其他输入/输出设备组成。... 全文

Linux运维 操作系统原理

由su和su

 由su和su -的区别谈学习linux运维方法一例    老男孩Linux培训新班刚开始,老男孩发现群里就在讨论这个su和su -的区别,有的同学们说,直接su就可以,有的说必须要su -。有的同学直接发问,到底su和su -有什么区别?1授之以“鱼”的答案6.6.1.3 su命令实例... 全文

学习linux运维方法 老男孩linux运维培训 linux系统

抚琴煮酒Linux系统运维培训班第⑥期继续招生了

抚琴煮酒Linux系统运维培训班第⑥期继续招生了,第⑥期也会秉承五期的教学宗旨:拓宽学员的知识面,提升职业竞争力。教学内容和文档是经过前面五期学员的反馈意见整理,而且经过前面的沉淀和积累,现在也比较成熟了,第5期会增加电子商务网站架构设计和Puppet运维自动化方面的课程;当然了,由于教学信息量和实验量都比较偏大,没有一定的Linux系统基础是吃不消的,所以对学员们的基础还是一定的要求的。另外,北京和上海、苏州这边的朋友公司都在扩建,都在向我要系统运维专业的学员(公司详细介绍见QQ空间),我也会第一时间向朋友们推荐参加培训班的学员朋友们。 ... 全文

第⑥期 抚琴煮酒 Linux系统运维培训班

Linux 系统运维自动化概述

大纲一、运维自动化背景二、运维自动化发展阶段三、运维自动化体系架构四、运维自动化常用工具五、运维自动化对运维人员要求注,最近在学习运维自动化相关专题,现在总结一下与大家分享一下。(如有雷同,纯属意外)一、运维自动化背景1.问题引入近期一网站业务需要上线,预计短时间内会有几百台服务器要上线, 部署几百台服务器, 以运维部目前有限的人手, 根本不够。怎么办?解决方案:采取自动化安装、配置及监控的方案(运维自动化)。2.官方解释何谓运维自动化,即在最少的人工干预下,利用脚本与第三方工具,保证业务系统7*24小时高效稳定运行。3.高端、大气、上档次... 全文

Linux 概述 运维自动化

Linux 系统运维学习方法汇总

大纲一、前言二、Linux 运维大环境说明 三、Linux 运维学习思路四、Linux 运维大方向说明 五、Linux 运维学习必看书籍推荐六、Linux 运维实践内容简介注,本博文主要用于交流与学习。如有雷同,纯属意外。一、前言最近,有不少博友问我。刚进入运维行业怎么学习呢?思路是什么?一点思路也没有,然后与大家在群里交流了一下。现在总结一下,与大家分享一下。下面我们就废话不多说,直接上干货。^_^……二、Linux 运维大环境说明 ... 全文

Linux 心得 书籍 学习 运维

运用shell,python自动下载linux系统运维

    因为之前看到一篇关于自动化下载linux运维趋势的shell脚本,一来觉得linux运维趋势不错,二来也感觉作者的确很NB。呵呵,于是自己写写,其实下载不麻烦,运用wget即可,原文中对于下载后的文件名处理的很好,但是,自己感觉还是用期数代表即可。所以就没有能的那么复杂,只是可以方便下载就好,自己玩玩! 以下的俩个脚本都是请用户自己输入自己希望下载的linux运维趋势的期数,比如20,19这个样子,shell是用$1输入进去,而python是用raw_input输入进去。 python:# -*- coding: cp936 -*-import urllibimport urllib2 Num = raw_input("Please input Num:")testurl = "http://os.51cto.com/down/linuxops/51cto_linuxops_issue%s.pdf"url = testurl % Numprint "download with urllib"a = "linux%s.pdf"c= a % Numurllib.urlretrieve(url,c)对于shell的做法,其实就是一条命令。无所谓脚本了#!/bin/bashwget http://os.51cto.com/down/linuxops/51cto_linuxops_issue$1.pdf   本文出自 “千门有公子” 博客,请务必保留此出处http://ygongzi.blog.51cto.com/4215340/936103... 全文

linux运维趋势 shell python 下载

资深系统管理员给Linux/Unix新人们的建议

                      资深系统管理员给Linux/Unix新人们的建议摘要:抚琴煮酒是一位现在在外企工作的linux/unix系统工程师、项目实施工程师,也曾经担任过RHCE的教学工作。根据多年的经验积累,抚琴煮酒发现很多新人对于如何入门和规划自己的Linux学习之路都处在一种迷茫的状态,因此撰写此文,帮助入门者走出学习的门槛。 【51CTO独家特稿】作者前言:本人从事windows、linux/unix系统工程师多年了,也做过相当长时间的项目实施工程师,维护和架构过大型广告网站、商业网站及证券类网站,感觉对linux/unix算是比较熟悉了,所以就这个职业的规则算是有点心得了吧。... 全文

资深系统管理员给Linux/Unix新人们的建议 Linux系统运维 Linux系统开发 Linux嵌入式开发 Linux系统管理和维护

使用Nginx从零开始搭建基于LNMP架构的电影系统之一_Linux运维

 按照常规,首先介绍一下Nginx是什么?虽然51cto上铺天盖地的Nginx的技术文章,我们这里也简单介绍一下。 Nginx是一个类Apache、IIS的Web服务器软件,由俄罗斯的Igor Sysoev开发、在短短数年内市场占有率迅速跃居第三位的轻量级、高性能的HTTP服务软件。Nginx专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000~50000个并发请求),正因为如此,大量提供社交网络、新闻资讯、电子商务以及虚拟主机等服务的企业纷纷选择Nginx来提供WEB服务,如新浪博客、网易新闻、新华网RSS、六间房视频、迅雷安全中心、腾讯3G下载......等站点,都在使用Nginx服务。 Nginx的官方站点:http://sysoev.ru/en/、http://nginx.net Nginx中文Wiki:http://wiki.codemongers.com/NginxChs--------------------------------------------------------------------------... 全文

Nginx 从零开始 Linux 技术 linux系统

深入浅出linux三剑客之sed必杀技一例

缘起:上完培训课后,同学们对sed加正则处理问题的热情高涨,氛围相当好,但是,有个别同学还是有些晕乎,因此,撰写此文。此例如果搞熟练了,sed和正则的大部分常用技术你掌握起来就简单了。如果还有不会的,老男孩就拿出最后的讲解必杀技(先保密,嘿!),同学们想不会那是不可能的,除非你们自己主动放弃,哈哈。来,开整~!老男孩linux培训第三节课程课前第考试一题,问题如下... 全文

sed linux运维 linux linux系统

运维人员必须熟悉的运维工具汇总

运维人员必须熟悉的运维工具汇总某日受邀请参加了一个BBS活动,于是有了下面的内容。下面是在linux网站运维方向老男孩最近几年常用的免费的开源软件,临时即兴想起来的,在这里和大家分享,希望给初学者指引一点路。linux的世界真的很精彩,还没入门的朋友赶紧进来吧!操作系统:Centos※,Ubuntu,Redhat※,suse,Freebsd... 全文

开源软件 linux 老男孩 操作系统 初学者

Linux系统运维的重要原则和方法详解

企业Linux系统的运维成为目前企业关注的重点。作为一种优秀的开源网络操作系统,如何充分利用Linux的工具并使用相应的方法来提高运维效率是非常重要的工作。在第一篇文章中,我们介绍了运维相关的4个应用工具的使用和实战,本文作为该专题的第二篇文章,将着重介绍运维过程中的重要原则和方法,包括如何避免产生问题以及如何解决系统问题的内容,以为企业Linux的实际运维提供有益参考。Need to Know I:系统管理员与系统用户增强沟通... 全文

系统管理员 打印机 敏感度 Linux 操作系统

Linux运维趋势采摘

煮酒品茶:本文只是记录学习过程中采摘的东西罢了。--------------------------------------------------黑色字体:已阅蓝色字体:待阅红色字体:重点(或者作者PS)--------------------------------------------------更新:2012-04-25 23:03 对构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)[连载之电子商务系统架构] 进行小小改动。 构建高性能电子商务网站-------------------------------一、熟悉安全技术,了解硬件防火墙性能,能熟悉的配置iptables 和了解Linux/Unix 相关的安全工具;二、熟练的配置Linux 的集群技术,比如LVS/Nginx/HAproxy,了解其原理和会话保持机制;三、熟练的配置Nginx 和Apache 服务器,能熟练的配置其正则;四、熟练和了解MySQL 或Oracle 数据库,至少要了解一种;五、熟悉存储;六、熟悉和了解虚拟化技术;七、极熟悉SHELL 脚本,用其实现工作中的各项需求;八、懂PHP 或Java 代码。(以上总结来自抚琴煮酒的一次访谈)在大型电子商务网站下,运维的工作会细分,不过上述内容仍是基本功。此外,由于大规模网站遇到的各方面挑战,会要求开发人员和运维人员能够与时俱进,在网站遭遇瓶颈之前做好应对。 煮酒品茶:抚琴煮酒的这些个基本功,个人认为把他当成一个学习的过程即可,精通这个精通那个最终只会倒致啥事无成,只有一项完全熟悉之后方可进军下一目标。------------------------------------- Ubuntu 11.10,Fedora 16正式发布-----------------------------------------------------【脑细胞】网站架构的常见演进路径:web 与db 共用→ web 和db 拆分→多台web → db 主从→ web 缓存→ db 缓存→存储拆分→ Scale Up →按应用竖切web →内存当硬盘→按时间横切db →按事务竖切db →按hash 竖切db →存储网络化→虚拟化→云,看起来都有章可循,但不知多少技术人员在这路上死了无数脑细胞,还有那无数的不眠之夜。http://weibo.com/1649415495/xwl7WBXwa 煮酒品茶:同上方观点一样,任何一个都是一个过程,只有彻底了解后方可进军下个方面,技术过渡也是这么过来的。------------------------------------------- 淘宝软件基础设施近年发展情况----------------------------------------------MySQL优化针对复制、同步、日志系统、单机效率、负载均衡方面的优化。详见yufeng 的另一篇分享:http://www.slideshare.net/mryufeng/mysql-7583273服务优化针对Apache/Nginx、HTTP 模块、Squid、LVS、HAProxy、TCP 方面的优化。Nginx 优化方面,淘宝有一个开源的模块,大家可以参考一下:http://code.taobao.org/p/nginx_concat_module/去年的Velociy 大会上,朱照远(叔度)和王晓哲(清无)也分享过Nginx定制开发方面的经验。Java环境优化这方面可以参考淘宝Java 中间件团队博客(注:该团队已经在今年和淘宝业务平台团队合并为通用产品团队):http://rdc.taobao.com/team/jm/Linux内核优化与定制夸父通讯中间件任卿对夸父通讯中间件进行过介绍:http://www.slideshare.net/openparty/ss-6680035低功耗硬件平台这方面可以参考淘宝最近公开的开源绿色计算项目:http://www.greencompute.org/CDN系统这方面也可以参考任卿的介绍:http://www.slideshare.net/colderboy17/cdn-9022813------------------------架构或者构思前期必须思考:应用服务器操作系统-应用服务器软件-Web Server-DB Server 开发框架------------------------ 煮酒品茶:以此记录,并慢慢学习--------------------------------------------------- 构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)[连载之电子商务系统架构]---------------------------------------------------构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)[连载之电子商务系统架构]出处:http://jimmyli.blog.51cto.com/ 我站在巨人肩膀上Jimmy Li作者:Jimmy Li关键词:网站,电子商务,Shell,自动备份,异地备份------[连载之电子商务系统架构]访问量超过100万的电子商务网站技术架构连接:http://jimmyli.blog.51cto.com/3190309/584992 网站运维异地备份方案及故障应急备用镜像 站 上一遍文章详细介绍了服务器安全方面,接下来继续介绍Linux服务器文件备份,数据库备份,数据安 全存储相关的电子商务系统架构。针对安全性有多种多样的解决方案,其中数据备份是重中之重的首要 工作。电子商务网站更加注重考虑数据安全,数据备份方案,包括本地备份、异地备份架构。其中Linux服务 器的备份方案非常多,本文介绍一个大众化适用的解决方案,通过编写Shell脚本来完成自动备份。本 架构包括备份网站文件、数据库,自动本地备份并FTP上传备份脚本,完成相应本地备份、异地备份, 实现双层备份解决方案。 本文要点: 1.全自动完成网站文件及数据库备份。2.编写Shell脚本来完成自动备份。3.同时进行自动本地/异地双备份,FTP上传备份。4.Linux服务器的备份解决方案。5.包括备份网站文件,网站程序文件、数据文件,MYSQL数据库。6.定期定时自动完成备份。定期删除旧备份,这里是自动删除30天前备份,复用利用备份空间。 目录: 一、准备工作二、构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)架构图三、网站及数据库自动本地备份并FTP上传备份Shell脚本,完整的实例;备份脚本进行详细解说,注释 。  在运营中的电子商务网站,建站之初就一直在重申一定要备份好自己的数据,因为太多的不确定性可能 会造成数据库丢失,而且大部分基础服务商也不可能提供每天备份数据。原来本BLOG提供过一个备份方 法,只是略微说了一下,可能部分新手会不太好入手。今天分享一个自己的备份脚本。详见后面附录 http://jimmyli.blog.51cto.com/3190309/584992 《网站运维异地备份方案及故障应急 备用镜像站》 一、准备工作: 1.软件安装需要提前在Linux服务器安装好lftp,lftp功能上比较强大,CentOS直接执行:yum install lftp, Debian执行:apt-get install lftp 。2.备份目录建立需要在Linux服务器上创建/home/backup/ 目录。3.FTP异地备份IP 账号 密码需要在异地FTP上创建backup目录。如果Linux服务器上数据库不多的话使用网络基础服务商的存储空间就可以。也可以用专门的备份服务 器。可根据应用的大小,数据量的大小,网络状况,和实际的网络资源,硬件资源灵活支配。 二、构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)架构图  三、网站及数据库自动本地备份并FTP上传备份Shell脚本完整的实例:======================================================================== #!/bin/bash #Funciont: Backup website and mysql database #Author: Jimmy Li #Website: http://jimmyli.blog.51cto.com/ #IMPORTANT!!!Please Setting the following Values! Backup_Dir1=/data/wwwroot/www.zuihuasuan8.netwd=/var/www/html/blog MYSQL_UserName=root MYSQL_PassWord=你的mysql数据库root密码 Backup_Database_Name1=www.zuihuasuan8.net FTP_HostName=www.zuihuasuan8.net FTP_UserName=www.zuihuasuan8.net FTP_PassWord=www.zuihuasuan8.net FTP_BackupDir=www.zuihuasuan8.net——backup TodayWWWBackup=www-*-$(date +"%Y%m%d").tar.gz TodayDBBackup=db-*-$(date +"%Y%m%d").sql OldWWWBackup=www-*-$(date -d -30day +"%Y%m%d").tar.gz OldDBBackup=db-*-$(date -d -30day +"%Y%m%d").sql #tar zcf /home/backup/www-$Backup_Dir1-$(date +"%Y%m%d").tar.gz -C /home/wwwroot/ cd $wdtar -zcvf /home/backup/www-$Backup_Dir1-$(date +"%Y%m%d").tar.gz * $Backup_Dir1 --exclude=soft /usr/local/mysql/bin/mysqldump -u$MYSQL_UserName -p$MYSQL_PassWord $Backup_Database_Name1  > /home/backup/db-$Backup_Database_Name1-$(date +"%Y%m%d").sql rm $OldWWWBackup rm $OldDBBackup cd /home/backup/ lftp $FTP_HostName -u $FTP_UserName,$FTP_PassWord << EOF cd $FTP_BackupDir mrm $OldWWWBackup mrm $OldDBBackup mput $TodayWWWBackup mput $TodayDBBackup bye EOF ========================================================================煮酒品茶:有点小小的人性化问题,打包后的文件解压后连整个目录都打包了,造成长目录,这本不是我们需求的,所以我们小小的cd一下就好了定义:wd=/var/www/html/blog 压缩:tar -zcvf /home/backup/www-$Backup_Dir1-$(date +"%Y%m%d").tar.gz * ------------------------------------我修改后的:Linux数据备份方案 设计需求:一、每天零晨三点备份web文件二、每天零晨三点备份MYsql数据库三、远程传送至某地 脚本如下:-----------------------------------------------------------#-----------------------------------------# form to cwtea.51cto.com or wh.cn-cert.com#Email:zwhset@163.com#-----------------------------------------#wd=Web即备份文件目录bd=备份目录su=Mysql用户sp=Mysql密码sn=数据库名字fu=FTP用户fp=FTP密码fpd=FTP备份目录#wwwcd $wdtar -zcvf $bd/web-$(date +"%Y%m%d").tar.gz *#sqlmysqldump -u$su -p$sp $sn > $bd/$sn$(date +"%Y%m%d").sql#ftplftp FTPIP -u$fu,FTP密码 <<EOFcd $spdmput $bd/web-$(date +"%Y%m%d").tar.gzmput $bd/$sn$(date +"%Y%m%d").sqlbyeEOF--------------------------------------------------------------- ----------------------------------- 下面将备份脚本进行详细解说,注释:#!/bin/bash#Funciont: Backup website and mysql database#Author: Jimmy Li#Website: http://jimmyli.blog.51cto.com/#IMPORTANT!!!Please Setting the following Values!######~Set Directory you want to backup~######将下面的目录修改成自己要备份的目录,一般按我 的都是在/data/wwwroot/下面所有直接写了需要备份的目录。可以继续再加:Backup_Dir2=你的目录  ,Backup_Dir后面的数字依次递增。如果不足N个,直接删除不需要的就可以,同时修改下面tar zcf  部分。Backup_Dir1=/data/wwwroot/www.zuihuasuan8.net ######~Set MySQL UserName and password~######设置MySQL的用户名和密码,最好是root,其他用户 可能因为权限问题无法导出部分数据库。MYSQL_UserName=rootMYSQL_PassWord=你的mysql数据库root密码######~Set MySQL Database you want to backup~######设置要部分的数据库,可以继续再加: Backup_Database_Name2=数据库名,Backup_Database_Name后面的数字依次递增。Backup_Database_Name1=www.zuihuasuan8.net ######~Set FTP Information~######设置用来存放备份数据的FTP信息FTP_HostName=www.zuihuasuan8.net   //FTP服务器的IP或者域名FTP_UserName=www.zuihuasuan8.net                //FTP服务器用户名FTP_PassWord=www.zuihuasuan8.net   //FTP服务器用户对应的密码FTP_BackupDir=www.zuihuasuan8.net——backup                    //备份到FTP上的目录,需要提 前创建好。#Values Setting END! ######设置结束TodayWWWBackup=www-*-$(date +"%Y%m%d").tar.gzTodayDBBackup=db-*-$(date +"%Y%m%d").sqlOldWWWBackup=www-*-$(date -d -30day +"%Y%m%d").tar.gzOldDBBackup=db-*-$(date -d -30day +"%Y%m%d").sqltar zcf /home/backup/www-$Backup_Dir1-$(date +"%Y%m%d").tar.gz -C /home/wwwroot/  $Backup_Dir1 --exclude=soft ###上面为备份网站文件数据,因为我的网站比较零散,而且网站目录下面有些目录属于临时目录并不 需要备份,所以可以在上面加上--exclude=不备份的目录。如果在前面加了Backup_Dir2=yourdir,则 再加tar zcf /home/backup/www-$Backup_Dir2-$(date +"%Y%m%d").tar.gz -C/home/wwwroot/ $Backup_Dir2 。如果多余则删除多余行。/usr/local/mysql/bin/mysqldump -u$MYSQL_UserName -p$MYSQL_PassWord $Backup_Database_Name1  > /home/backup/db-$Backup_Database_Name1-$(date +"%Y%m%d").sql ###上面为备份MySQL数据库,如果在前面加了Backup_Database_Name2=yourdatabasename,则再 加/usr/local/mysql/bin/mysqldump -u$MYSQL_UserName -p$MYSQL_PassWord  $Backup_Database_Name2 > /home/backup/db-$Backup_Database_Name2-$(date +"%Y%m%d").sql 。如 果多余则删除多余行。rm $OldWWWBackuprm $OldDBBackup###删除30天前的备份###cd /home/backup/###下面为自动上传部分,不得不说lftp很强大,抛弃ftp吧####lftp $FTP_HostName -u $FTP_UserName,$FTP_PassWord << EOFcd $FTP_BackupDirmrm $OldWWWBackupmrm $OldDBBackupmput $TodayWWWBackupmput $TodayDBBackupbyeEOF脚本下载地址:下载脚本,将脚本放到/root/ 下面,按上面的注释修改脚本中的参数,并保存,如果不熟悉vim或者 nano编辑器,可以用winscp,执行:chmod +x /root/backup.sh 为脚本添加执行权限,执行:crontab  -e 添加定时执行在crontab中加入:0 3 * * * /root/backup.sh凌晨3点自动执行/root/bakcup.sh 脚本,备份Linux服务器上的数据并上传到预先设定好的异地FTP上 。选择在凌晨3进行备份,是因为这个时间段网站的访问量是最低。也就是说在很少人访问的情况下做备 份操作。 附录:网站运维异地备份方案及故障应急备用镜像站  定期检查异地备份故障应急时,启用应急Web服务 出处:http://jimmyli.blog.51cto.com/ Jimmy Li Blog 。欢迎朋友一起交流,讨论。扣扣:柒⑥柒陆叁⑤叁伍 煮酒品茶:一套非常nice的方案,过程就是脚本收集文件然后上传至远程备份服务器上。思路是头脑,脚本是执行。构成一个基本的备份系统。测试后再修改看效果。------------------------------------------------------------  一种MySQL主从同步加速方案------------------------------------------------------------一种MySQL主从同步加速方案一、问题起源MySQL 的主从同步一直有从库延迟的问题,原因简单描述如下:1、 MySQL 从库上有一个IO 线程负责从主库取binlog 到本地。另外有一个SQL 线程负责执行这些本地日志,实现命令重放;2、 正常网络状况下IO 线程没有性能问题(这个待会会用到),问题是SQL 线程只有一个,更新速度跟不上。所以经常会看到从库的CPU idle 很高,但同步性能就是上不去。二、方案雏形单线程的SQL 线程是造成这个问题的主要原因。比较直接的想法是把它改成多线程版本,这个据说官方版本开发中,其实我们也有一个这样的patch,但是直接写大片代码在线上提供服务的slave 机器上这种事儿,都会因为担心稳定性而很难推动(写patch 的和运维的同学,你们懂的)。所以打算用一个“第三方”工具中转,来实现多线程同步。基本结构如图:说明:1、这些transfer 从master 上各自同步一部分的数据,分别独立更新slave。多进程、多线程均可。2、Transfer 与master 之间异步更新日志,transfer 与slave 之间同步更新数据。3、从这可以看出这个方案的缺点之一:更新能够被独立分开。比较直观的想法是,按照表分。三、关于transfer作为这个关键的转发工具transfer,需要提供如下功能:1、能够指定同步master 中的哪部分数据,并且能够方便地修改这个配置以应对master 的加表需求。2、支持stop slave、start slave。支持快速切换到新主库的change master命令。3、能够记录读取点,transfer 自己重启或master 重启后能够按照记录点继续读后面的binlog。4、能够记录分发点,transfer 自己重启或slave 重启后能够按照记录点继续同步给slave。用起来就会发现还有好多要求……四、方案实现Transfer 的这么多功能,自己造轮子就累了。这里直接用MySQL 来充当此角色。为了方便描述,下文还将之称为transfer。Transfer 更新slave 在功能上可以使用federated 引擎,但由于其纠结的实现导致性能上达不到要求,因此在MySQL 框架层中作了一点修改,读到同步日志后,直接发送给slave。方案简单描述如下:1、Slave 机器上搭另外的若干个MySQL(transfer),将其设为Master 的从库,且设置replicate-do-table, 每个transfer 承担一部分的表。2、所有Transfer 的更新目标都设置为slave,其更新方式是读到日志后直接mysql_real_query 执行到slave 上。从这可以看出这个方案的缺点之二:只能支持statement 格式的同步方式。其实row 也能支持,后面再说。五、仍然延迟?在transfer 放弃federated 引擎改用直接发送后,性能提升不少,从库同步性能增加一倍,但延迟还很大。发现这个时候slave 的机器cpu 已经很忙了,idle 20% 以下——这个算是好消息,总比idle 很高但性能上不去好。实际上是因为每个transfer,虽然设置只同步其中的部分表,但在实现上是IO 线程把master 上的所有命令都备份到本地,然后在SQL 线程执行的时候再判断,若不符合replicate-do-table,再放弃。这样存在的问题,是n 个transfer,磁盘写了n 倍,更严重的是导致SQL线程空转。我们上文提到整个流程中IO 线程是比较空闲的,因此修改IO 线程逻辑,在写入磁盘前先判断,若不符合本transfer 的replicate-do-table 设置,不写盘,直接放弃。六、效果从库的QPS 由于线程切换会有抖动,但总的执行时间与主库相同。从库的cpu idle 下降,与主库几乎同时恢复到100。七、小结1、要求在slave 机器上多配置n 个transfer(是否在从库上均可)2、目前只能支持statement 的binlog 格式,实际上row 可以支持,方案定了,开发计划中。3、跨表更新的语句,会按照其更新的第一个表,分发到唯一一个transfer,没有重复更新的问题,但有时序性问题。方案的好处:1、功能比较齐全。直接使用MySQL,原有的管理功能基本都能用,主库从库重启/ 换库的代价比较小。2、开发量小,只在transfer 上修改两处,不包括配置读取部分,300 行以内3、风险相对小,不直接修改master 和slave 上的代码,线上容易接收。原文:http://dinglin.iteye.com/blog/1179574另外,本方案有改进版本,作者建议一并阅读:http://dinglin.iteye.com/blog/1187154 煮酒品茶:典形的主从模式吧,工具同步,这个还得尝试着去更改。----------------------------------------------- 本文出自 “煮酒品茶” 博客,转载请与作者联系!... 全文

Linux linux系统 安全 集群技术 采摘

应广大群众的要求,今天开始连载《超容易的Linux系统管理入门书》一书

学习Linux容易嘛?我说超容易,你肯定不信。那学习Linux最好的学习方法是什么,就是脑子里面一直提问题,不停的提,时时刻刻提,如果你没有问题,那再容易的学习书你也看不懂。      《超容易的Linux系统管理入门书》每章最后都有一堆问题,高手看到这些问题肯定会发笑,但入门者看到这些问题肯定如醍醐灌顶。这是学习Linux的必经之路!想学好,先研究这些问题吧!       想每天能听到小妞的语音播报,想学更多学校里和书本上学不大的IT技术或技能,欢迎关注微信公众号:xiniubook2008。或加微博:我的图书我做主,参加活动,免费获书。... 全文

运维 自动化 系统管理 linux

Linux内核升级方法详解

Linux的内核是系统的核心,所以升级内核是Linux系统管理员的一项基本技能,所以我就分享了系统运维实务上的一篇文章,当然我对源文件稍做了一些内容的增加,就是把遇到的问题及解决方案也加上了,希望对各位Linux系统管理员有所帮助!1.下载内核cd /usr/src... 全文

Linux内核 系统运维

linux下构建Smokeping网络监控平台

 linux下构建Smokeping网络监控平台一. Smokeping 简介1.1 Smokeping简介:... 全文

linux 监控 系统 运维 smokeping

RedHat系列Linux软件包管理之yum仓库搭建

YUM(Yellow dog Updater,Modified):基于rpm包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依耐性关系,并且一次安装所有依耐的软件包,无须繁琐地一次次下载、安装。软件来源:    可供Yum下载的软件包括fedora本身的软件包以及源自rpm.livna.org的Fedora    Extras,全部是由Linux社区维护的,并且基本上是自由软件。所有的包都有一个独立的GPG签名,主要是为了用户系统的安全。图形化前端:    Yum的图形化前端主要有yumex和kyum。它们并不是独立于Yum的,而是Yum的图形前端,也就是说在安装和使用Yumex和kyum时,都是以yum的安装和配置为基础;所以在使用Yumex或kyum时,必须先安装配置YUM。实施步骤:一.做好准备工作:    1.安装FTP,一般都是通过FTP来下载软件包。        mkdir /mnt/cdrom        mount -t iso9660 /dev/cdrom /mnt/cdrom        cd /mnt/cdrom/Packages/        rpm -ivh vsftpd-2.2.2-11.el6.x86_64.rpm        service vsftpd restart    2.现在进行拷贝文件:        将光盘里的所有文件都拷贝到/var/ftp/pub下面。        实际上只拷贝Server 和VT两个文件过去就行了,还可以不用把全部RPM安装软         件包拷贝过去,太多了,一共2.4G左右,如果系统一开始安装分配给var的空间不        够就可以这样做.        完成后切换到/var/ftp/pub/目录下        删除*.html        删除Server/repodata/TRANS.TBL        删除VTr/repodata/TRANS.TBL        以上是建议删除的,不删除也可以.        rm -f *.html        rm -f Server/repodata/TRANS.TBL二、配置客户端:    vi /etc/yum.repos.d/rhel-source.repo    在文件末尾添加如下内容:    [rhel-6.3-local_yumbase]    name=rhel-6.3-local_yumbase    baseurl=ftp://192.168.1.254/pub    enbled=1    gpgcheck=0    配置文件内容简介:    [ ]内的是仓库的名字    name仓库的描述    baseurl 是你的YUM源地址,因为这里配置的是FTP,还可以是HTTP,FILE等    enabled 是否启用这个仓库,1为起用,0为禁用    gpgcheck 是否检查GPG签名(用来验证要安装的包是不是REDHAT官方的)    GPGKEY 的存放地址需要用下面的命令到入这个签名。才能使用这项功能三、yum的命令和测试:    1.yum install <package>    这里是安装下载的软件包,由于本实验没有提供FTP下载。    2.yum localinstall <package> 本地安装软件包。     eg:yum localinstall /var/ftp/pub/Packages/dhcp*     3.yum update 全部更新     4.yum update package 更新指定程序包package     5.yum check-update     6.yum info <package> 显示安装包信息     7.yum list 显示所有已经安装可以安装的程序包     8.yum list <package> 显示指定程序包的安装情况。     9.yum search <keyword> 查找软件包     10.yum remove | erase package1 删除程序包;yum会把下载的软件包和header存储在cache中,而不会自动删除。如果觉得它们占用了磁盘空间,可以使用yumclean指令进行清楚。    yum clean headers 清除header    yum clean packages 清除下载的rpm包    yum clean all 清除header与rpm包本文出自 “佧拉贵银Linux-Study” 博客,请务必保留此出处http://kalaguiyin.blog.51cto.com/4831716/1377641... 全文

yum RHEL fedora Linux 运维 操作系统

Linux运维不可不知的性能监控和调试工具(一)

前言:献给现在正在作运维或者立志作运维的朋友sysstat组件,包含了:sar,iostat,mpstat,pidstat,nfsiostat 等命令... 全文

监控系统 工具 Linux 休闲 职场

Linux运维工程师笔试题

Linux运维工程师笔试题一、基本知识题(共10题,每题3分)1、用什么命令查询指定IP地址的服务器端口?yuminstall-y nmap2、用什么命令定义某个程序执行的优先级别?... 全文

系统工程师面试题

1 2