bash for循环

参考

http://www.cyberciti.biz/faq/bash-for-loop

例子

for ((i=51; i<61; i++)); do ipmitool -I lan -H 172.10.72.$i -U root -P tvmining chassis bootdev pxe; done
for i in 32 34 37 38 41 13 14 18 21 22 25; do ipmitool -I lan -H 172.10.72.$i -U root -P tvmining power on; done
for VARIABLE in 1 2 3 4 5 .. N
do
	command1
	command2
	commandN
done
#!/bin/bash
for i in 1 2 3 4 5
do
   echo "Welcome $i times"
done
#!/bin/bash
for i in {1..5}
do
   echo "Welcome $i times"
done

Bash v4.0+ has inbuilt support for setting up a st[......]

继续阅读

利用wget建本地yum源

项目上需要The Phusion Passenger RPM Repository这个yum源,但是服务器不提供rsync服务.所以只能使用wget来下载建立本地yum源.

分析
fedora,SRPMS,yum-repo,5rolling,5Server,6rolling,6Server,6.0,6.1这几个目录不需要同步,只需要下载rpm,gz,xml三种类型的文件
所以url从http://passenger.stealthymonkeys.com/rhel/5/或者http://passenger.stealthymonkeys.com/rhel/6/取
同层5Server[......]

继续阅读

centos 6.0 性能监控服务

centos 6.0新加入性能监控服务sysstat,日志存储在/var/log/sa目录下。

linux 2.6.32-71.el6.x86_64 (bj-j16-120-243)     2011-11-28      _x86_64_        (8 CPU)
00:00:01        CPU      %usr     %nice      %sys   %iowait    %steal      %irq     %soft    %guest     %idle
00:10:01        all      0.15      0.00      0.06      0.00      0.00      0.00      0.00      0.00     99.79
00:10:01          0      0.34      0.00      0.08      0.01      0.00      0.00      0.00      0.00     99.58
00:10:01          1      0.64      0.00      0.21      0.01      0.00      0.00      0.00      0.00     99.14
00:10:01          2      0.05      0.00      0.04      0.00      0.00      0.00      0.00      0.00     99.91
00:10:01          3      0.14      0.00      0.08      0.00      0.00      0.00      0.00      0.00     99.78
00:10:01          4      0.00      0.00      0.01      0.00      0.00      0.00      0.00      0.00     99.99
00:10:01          5      0.00      0.00      0.01      0.00      0.00      0.00      0.00      0.00     99.99
00:10:01          6      0.00      0.00      0.01      0.00      0.00      0.00      0.00      0.00     99.99
00:10:01          7      0.00      0.00      0.03      0.00      0.00      0.00      0.00      0.00     99.97

CPU

all 表示统计信息为所有 CPU 的平均值。
%user 	显示在用户级别(application)运行使用 CPU 总时间的百分比。
%nice 	显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。
%system 在核心级别(kernel)运行所使用 CPU 总时间的百分比。
%iowait 显示用于等待I/O操作占用 CPU 总时间的百分比。
%steal 	管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。
%idle 	显示 CPU 空闲时间占用 CPU 总时间的百分比。

若 %iowait 的值过高,表示硬盘存在I/O瓶颈
若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量
若 %idle 的值持续低于 10,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU。

bb646ee044c7bd25c8a0d3b8d2214f77[......]

继续阅读

php配置oci与pdo_oci

安装oracle-instant客户端

# rpm -Uhv oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm
# rpm -Uhv oracle-instantclient11.2-devel-11.2.0.3.0-1.x86_64.rpm
# rpm -Uhv oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.x86_64.rpm

动态连接库

#echo '/usr/lib/oracle/11.1/client64/lib/' > /etc/ld.so.conf.d/oracle.x86_64.conf
#ldconfig

oracle环境变量

# vi /etc/profile
export ORACLE_HOME=/usr/lib/oracle/11.2/client64/
export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64:$LD_LIBRARY_PATH
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
# source /etc/profile

64位系统需要创建32位的软链接

# ln -s /usr/lib/oracle/10.2.0.3/client64 /usr/lib/oracle/11.2/client
# ln -s /usr/include/oracle/10.2.0.3/client64 /usr/include/oracle/11.2/client

pdo_oci对oracle11支持不足,做一个10.2.0.3的ln软连接,骗过编译

bb646ee044c7bd25c8a0d3b8d2214f770[......]

继续阅读

持续集成项目预研 – 技术资料汇总

博客
Planet Puppet http://planetpuppet.org
Planet DevOps http://www.planetdevops.net
R.I.Pienaar  http://www.devco.net
Allegro Nanu http://www.inanu.net/post/category/work/puppet-work
路宁(luning)的博客 http://luning12.blogbus.com
乔梁 持续交付 http://www.continuousdelivery.info

网站

http://puppetlabs.c[......]

继续阅读

libvirt Mcollective虚拟机管理插件

翻看mcollective-users留言组,无意发现一个虚拟机管理的插件,很热心的同志,留个记号,备用

https://github.com/ripienaar/mc-plugins/tree/master/agent/libvirt

% mco virt info

kvm1.xx.net
Max VCPUs: 16
Secrets: 0
Type: QEMU
Version: 12001
Ac[......]

继续阅读

自定义yum源

tar.gz包制作成rpm后,拷来拷去安装不方便的话,可以考虑放入自定义源服务器来管理。

安装createrepo

# yum -y install createrepo

建立目录

# mkdir -p /opt/www/mirrors.test.local/custom/x86_64

初始化repodata信息

# createrepo -p -d -o /opt/www/mirrors.test.local/custom/x86_64 /opt/www/mirrors.test.local/custom/x86_64

/opt/www/mirrors.test.local/custom/x86_64目录下就会生成repodata目录,包括xml数据库信息

更新信息
将上篇日志生成的mainconce[......]

继续阅读

rpm打包初体验

公司的持续集成项目,需要安装个媒体开发包,提供给我的格式是tar.gz包,如果在持续集成环境里,这种方式很难部署。需要把它做成rpm包,并放在内部源服务器里。
在google大神的帮助下,阅读大量资料,成功实现。下面是经历过程:

1.建立处理目录

# mkdir -p /root/tmp
# mkdir -p /root/rpmbuild/{RPMS,SOURCES,SPECS,SRPMS,BUILD}
# mkdir /root/mainconcept_sdk-8.7

2.程序目录结构

# tree mainconcept_sdk-8.7
mainconcept_sdk-8.7
├── etc
│   └── ld.so.conf.d
│       └── mainconcept-x86_64.conf
├── mainconcept_sdk.spec
└── usr
    ├── include
    │   └── mainconcept
    │       ├── auxinfo.h
    │       ├── ......  
    │       └── v_frame.h
    └── lib64
        └── mainconcept
            ├── libmc_config_avc.so -> libmc_config_avc.so.8
            ├── ......            
            └── libmc_trans_video_imagescaler.so.8.7.0.28412

3.spec文件内容

# cat /root/mainconcept_sdk-8.7/mainconcept_sdk.spec
 
summary: mainconcept_sdk is media development toolkits
name: mainconcept_sdk
version: 8.7
release: 1
source: %{name}-%{version}.tar.gz
license: bsd
group: Development/Libraries
buildroot: %{_tmppath}/%{name}-%{version}-%{release}
%description
 
%prep
%setup -q 
 
%build
 
%install
rm -rf %{buildroot}
 
mkdir -p %{buildroot}/usr
cp -rf %{_builddir}/%{name}-%{version}/usr %{buildroot}/
 
mkdir -p %{buildroot}/etc
cp -rf %{_builddir}/%{name}-%{version}/etc %{buildroot}/
 
%files
%attr(0664,root,root) /etc/ld.so.conf.d/mainconcept-x86_64.conf
%attr(0664,root,root) /usr/include/mainconcept/*
%attr(0775,root,root) /usr/lib64/mainconcept/*
 
%post
ldconfig
 
%preun
 
%postun
rm -rf /usr/include/mainconcept
rm -rf /usr/lib64/mainconcept
ldconfig
 
%changelog

4.打包

bb646ee044c7bd25c8a0[......]

继续阅读

centreon分布式监控

  上一个月,在北京与无锡机房实现centreon的分布式监控。无锡机房为主监控服务器10.10.0.100,北京机房部署卫星站点(Sattelite)服务器10.10.0.200。
主监控部署就不说明,看以前的的blog即可。

我理解的流程
所有配置都在主监控服务器上配置,配置完成后,配置文件由主服务器通过ssh推送到卫星服务器,然后远程重启卫星服务器的nagios服务,使配置生效。
卫星服务器监控本地的服务器,监控信息通过mysql发回主监控服务器。

卫星监控部署
1.部署监控软件
仅需要部署nagios与NDOUtils,略。

2.建立主监控站点与卫星站[......]

继续阅读

修改centreon的’Sattelite Name’引发的大麻烦

看着centreon默认的Sattelite Name->’central’不太爽,于是改了自己的满意的名字,然后重启centreon服务。
麻烦产生啦!所有的service变成double,查看检测信息,hosts数量对,services数量对,就是状态显示有问题。

登录centreon论坛,查找原因,找到解决方法。
Centreon Webinterface – All services show up twice!

停止centcore, centstorage, ndoutils, nagios服务
清空centstatus.nagios_servicestatus, centstatus.nagios_hoststatus这两张表
启动centcore, centstorage, ndoutils, nagios服务

解决。

Visitor Trackingdata recoverydata recovery softwareforex trading