libvirt domain XML配置实例

kvmla测试kvm虚拟化有一个多月了,现在已经开始公测了. 这里记录一下virsh管理下的kvm配置文件实例大全

<domain type='vbox'>
 <name>vbox</name>
 <uuid>4dab22b31d52d8f32516782e98ab3fa0</uuid>

 <os>
<type>hvm</type>
<boot dev='cdrom'/>
<boot dev='hd'/>
<boot dev='fd'/>
<boot dev='network'/>
 </os>

 <memory>654321</memory>
 <vcpu>1</vcpu>

阅读剩余部分...

ssl出错ssl_error_rx_record_too_long

没事干在nginx的default站点下添加段listen 443;默认监听443, 没想到原来一直正常的https站全部打不开了.
SSL 接收到一个超出最大准许长度的记录。

(错误码: ssl_error_rx_record_too_long)
去掉后解决了冲突..............

Nginx负载均衡与健康检查

   在业界,一直流传这样一句话:Nginx抗并发能力强!为什么Nginx抗并发能力强?原因是使用了非阻塞、异步传输
阻塞:如apache代理tomcat时,apache开启10个进程,同时处理着10个请求,在tomcat没有返回给apache结果时,apache是不会处理用户发出的第11个请求
非阻塞:如nginx代理tomcat时,nginx开启1000个并发,同时处理着1000个请求,在tomcat没有返回给nginx结果时,nginx会依然处理后面用户发给的请求
同步传输:比如squid代理tomcat时,浏览器发起请求,然后请求会squid立刻被转到后端服务器,于是在浏览器和后端服务器之间就建立了一个连接。在请求发起到请求完成,这条连接都是一直存在的。
异步传输:比如nginx代理tomcat时,浏览器发起请求,请求不会立刻转到后端服务器,而是将请求数据(header)先保存到nginx上,然后nginx再把这个请求发到后端服务器, 后端服务器处理完之后把数据返回到nginx上,nginx将数据流发到浏览器。

     如上图所示假设用户执行一个上传文件操作,由于用户网速较慢,因此需要花半个小时才能把文件传到服务器。squid的同步代理在用户开始上传后就和 后端tomcat建立了连接,半小时后文件上传结束,所以,后端tomcat服务器连接保持了半个小时;而nginx异步代理就是先将数据保存在 nginx上,因此仅仅是nginx和用户 保持了半小时连接,后端服务器在这半小时内没有为这个请求开启连接,半小时后用户上传结束,nginx才将上传内容发到后端tomcat,nginx和后 台之间的带宽 是很充裕的,所以只花了一秒钟就将请求发送到了后台,由此可见,后端服务器连接保持了一秒。

阅读剩余部分...

Error: Device 0 (vif) could not be connected. Hotplug scripts not working.

编译安装xen成功启动后 发现小鸡启动有些问题,启动卡住半天跳出

Error: Device 0 (vif) could not be connected. Hotplug scripts not working.
回想起编译内核 应该是有东西没编译进去.
cat .config|grep CONFIG_XEN_NETDEV_BACKEND
#CONFIG_XEN_NETDEV_BACKEND is not set
查找发现是netdev backend没启用 改为CONFIG_XEN_NETDEV_BACKEND=y然后grep XEN看下其他还有什么选择 果断全部开启 然后重新编译内核 最后 记得修改grub启动项

CentOS5内核版本2.6.18升级至3.6.4

centos5.6 kernel版本:2.6.18-238.el5-i686
所编译的kernel版本:linux-3.6.4.tar.bz2

1.将新内核cp到/usr/src目录下,然后释放内核源代码:

#bzip2 -d linux-3.6.4.tar.bz2 -> linux-3.6.4.tar
#tar -xvf linux-3.6.4.tar

2.开始设置内核编译模块及参数

make menuconfig

设置编译成模块或是否编译进内核或不选,这里增加了新内核对于虚拟化的支持模块,其他保持不变,保存退出。

make mrproper or make clean

删除安装过程中产生的大量临时文件
注意:如果直接跳过下面步骤,在make bzImage过程中会报以下错误:

阅读剩余部分...

快速安装 Ruby, Rails 运行环境

系统需求

首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用:

  • Mac OS X
  • 任意 Linux 发行版本(Ubuntu,CentOS, Redhat, ArchLinux ...)

强烈新手使用 Ubuntu 省掉不必要的麻烦!

以下代码区域,带有 $ 打头的表示需要在控制台(终端)下面执行(不包括 $ 符号)

步骤0 - 安装系统需要的包

  • Mac 请安装 Xcode 开发工具,它将帮你安装好 Unix 环境需要的开发包
  • Ubuntu 请安装

阅读剩余部分...

Ext3分区调整inodes

inode中文意思索引节点,这里主要说一下ext3分区调整磁盘的inode number。
#首先调整inodes的分区或者文件要处于空闲状态.
# mkfs.ext3 /dev/vg0/templvm -N "inode节点数"
# mkfs.ext3 命令的-N  选项用于指定自定义的inode节点数
#挂载分区
# mout  /dev/vg0/templvm /mnt
#查看修改后的inode参数
# df -i
个人平常用LVM分区,很少用单个文件做磁盘存储,不过大体操作都一样,/dev/vg0/templvm替换成你的硬盘分区或者文件路径。
特别注意:调整inode是用mkfs.ext3带上参数格式化分区,在操作前一定要记得打包备份数据,格式化数据后LVM快照的方式备份也会I/O错误。

转载:作为站长千万不要买KVMLA的VPS

作为kvmla管理团队一员 我认为这篇文章还是值得转载一下的
事件起因原由大致如下:

前因

       一网友在kvmla网购一个256M内存月付36元的vps,由于价格定位是无管理型VPS(也就是说只要vps正常运行可以正常进行管理,技术人员是不提供技术支持的),所以在tickt上回复让其自行检查处理。
        其后收到退款请求,原则上按照TOS服务条款我们三天无条件退款,但在低价促销中夹杂着一些高风险用户,所以不论使用了多久,执意要退款者我们也不会推三阻四或刻意为难.
       该网友是在2012-10-15 21:21提交退款申请,系统每天凌晨12点会自动处理 暂停 删除一切自动化进程.

事件澄清

第一点:非管理型vps不提供额外的技术支持,例如需要安装或者调整gcc php mysql apache ftp pptp;但是一些例如系统无法开机,IP冲突或者受到CC攻击需要协助,这些是份内援助的,
第二点: 在提交退款申请以前个人应该做好备份备份处理,除非你的数据是没有任何价值的, 作为服务商没有义务做用户备份和保留终止服务的数据。

工单完整细节


阅读剩余部分...

Apache优化模块mod_pagespeed

Google 发布了一个名为 mod_pagespeed 的自动化 Apache 优化模块,目前支持 CentOS, RHEL, Ubuntu, Debian, Fedora 等 Linux 发行版,用户只需要下载并安装相应的 Deb 或 RPM 包就可以完全自动优化 Apache Http 服务器了。

mod_pagespeed 可以做到:

  • 不需要对网站 CMS 系统进行改变即可应用。
  • 加速模块可以自行对网络传输的 html 字节优化及对图象 、css 进入压缩优化传输
  • 智能缓存是一大亮点,它可以自动智能缓存,加速下载

目前这套优化模块已经应用具于有 850万客户的 GoDaddy 服务器上,而且反响良好。根据此前的一些实践来看, 通过 mod_pagespeed 可以对 Web 性能的多个方面,包括缓存、客户端与服务器之间的连接、载荷大小等进行优化,最大可将页面加载时间缩短 50% 。

项目主页: http://code.google.com/speed/page-speed/docs/module.html
插件下载地址: http://code.google.com/speed/page-speed/download.html

开源项目地址: http://code.google.com/p/modpagespeed/

阅读剩余部分...

Centos6编译安装Xen

只是编译安装Xen,不包含内核内容。
在准备好Xen的内核后修改grub.conf在 root (hd0,0) 下面加上一行        kernel /xen-4.1.3.gz dom0_mem=1024M
然后将kernel /vmlinuz和initrd /initramfs两行的kernel initrd 改成module  

阅读剩余部分...

【更新】dedecms简单全免疫漏洞方法之.htaccess

一些程序虽然是开源的但是一些漏洞 我们不知道或者知道存在不知道怎么解决的时候 就得想偏门的办法来解决它。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule (plus|member|special|include|data|a|images|templets|uploads|dede|usr)/(.*).(php)$ – [F]
</IfModule>

apache下在.htaccess下加入代码就可以,如果是nginx做webserver可以参考dedecms免疫漏洞之nginx
plus目录下有些文件需要调用的话 另外再定制规则进去
更新:
原来的代码有个小问题就直接浏览目录php照样执行造成了一个死角,这次修改更新将死角彻底杜绝。

解决vi vim中文乱码问题

yum install vim-minimal fonts-chinese -y
echo "set fencs=utf-8,GB18030,ucs-bom,default,latin1" >>/etc/vimrc
echo "set fencs=utf-8,GB18030,ucs-bom,default,latin1" >>/etc/virc

以上代码是基于centos

Centos安装cpulimit

debian的同学们直接apt-get 就有了

apt-get install cpulimit gawk

centos的就源码安装一下

yum -y --skip-broken install subversion gcc make gawk
cd /tmp
svn checkout https://cpulimit.svn.sourceforge.net/svnroot/cpulimit/trunk cpulimit
cd cpulimit
make
cp cpulimit /usr/bin/

官方地址:http://cpulimit.sourceforge.net/

Centos编译安装git

Git是用于Linux内核开发的版本控制工具。与常用的版本控制工具CVS、Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux kernel这样的大项目来说自然很重要。Git最为出色的是它的合并跟踪(merge tracing)能力。

yum install -y gettext-devel autoconf expat-devel cpio perl openssl-devel zlib-devel
wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
tar xzvf git-latest.tar.gz
cd git-*
autoconf
./configure --with-curl=/usr/local
make
make install

MegaCli 常见用法

【前言】

使用 [SAS MegaRAID Linux MegaCLI] 可以在文字模式下很方便的查看目前 RAID 及 HDD 状态。

【作业环境】

CentOS 5.1 (Linux 2.6.18-53.el5)

Dell PowerEdge 1950

Dell RAID Controller PERC 5/i (Raid Card)

  • scsi0 : LSI Logic SAS based MegaRAID driver

SAS HDD 146 G * 2 (Build RAID-1)

阅读剩余部分...