我的乐与怒

Life, thoughts, stories and ideas.

使用Consul Docker微服务平台实践

基础环境 - CentOS6.6 内核升级 因为虚拟机的centos内核无法达到docker稳定运行,因此升级到3.1,执行 #导入key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org #安装ELRepo到CentOS 6.6中 rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm #安装长期支持版本kernel yum --enablerepo=elrepo-kernel install kernel-lt -y #编辑grub.conf文件,修改Grub引导顺序,选择3.1版本的内容(一

Git index-pack failed 问题解决

问题 git 由于提交了比较大的文件,在服务端一直无法拉下来,错误如下 root@iZ94au:/wwwroot/app# git pull remote: Counting objects: 168, done. remote: Compressing objects: 100% (87/87), done. Connection to bitbucket.org closed by remote host.0 KiB/s fatal: The remote end hung up unexpectedly fatal: early EOF fatal: index-pack failed 解决方案 解决1 根据stackoverflow的回答修改comporession=0 修改压缩的程度 compression = 9 设置为 -1, 0 9 均无效 解决2 这个错误可能是由于

服务发现,Consul入门

翻译自官方文档 . 欢迎进入Consul的入门指南!这个指南是开始使用Consul的起点,通过这个指南了解Consul是什么,他可以解决哪些问题.它与现有软件的比较和怎么开始使用它.如果你对Consul已经有基本的了解,可以阅读 文档 ,它提供更多可用特性的参考. ###英文原版 https://www.consul.io/intro/ 翻译 工作

CentOS搭建L2TP VPN服务

参考 : http://longtimenoc.com/archives/centos%E4%B8%8Al2tp%E5%AE%89%E8%A3%85%E4%B8%8E%E9%85%8D%E7%BD%AE 准备 编译会用到的库 yum install -y ppp iptables make gcc gmp-devel xmlto bison flex xmlto libpcap-devel lsof vim-enhanced 安装openswan wget https://download.openswan.org/openswan/openswan-latest.tar.gz tar zxf openswan-latest.tar.gz cd openswan-2.6.48 make programs install 安装xl2tpd yum install xl2tpd 配置 配置/etc/ipsec.conf config setup nat_traversal=yes virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12 oe=off protostack=netkey conn L2TP-PSK-NAT rightsubnet=vhost:%priv also=L2TP-PSK-noNAT conn L2TP-PSK-noNAT authby=secret pfs=no auto=add keyingtries=3 rekey=no ikelifetime=8h keylife=1h type=transport left=$vpsip #改你服务器的IP leftprotoport=17/1701 right=%any rightprotoport=17/%any 配置 /etc/ipsec.secrets 你的服务器IP %any: PSK "你的密码" 编辑 /etc/sysctl.conf

安装生成环境的Swarm集群

参考 : https://docs.docker.com/swarm/install-manual/ 网络规划 规划如下 节点描述 名称 Swarm 主机和备份机 p4 , hdp1 Swarm 节点 hdp2,hdp3 发现后台 p4

PPTP MAC断线问题

MAC连接pptp服务经常断线 日志内容如下 Aug 1 14:01:06 s1 pptpd[21666]: CTRL: Client 218.88.x.155 control connection finished Aug 1 14:05:34 s1 pptpd[21965]: CTRL: Client 218.88.x.155 control connection started Aug 1 14:05:34 s1 pptpd[21965]: CTRL: Starting call (launching pppd, opening GRE) Aug 1 14:05:34 s1 pppd[21967]: Warning: can't open options file /home/xxxx/.ppprc: Permission denied Aug 1 14:05:34 s1 pppd[21967]: Plugin /usr/lib64/pptpd/pptpd-logwtmp.so loaded. Aug 1 14:05:34 s1 pppd[21967]: pptpd-logwtmp: $Version$ Aug 1 14:05:34 s1 pppd[21967]: Using interface ppp0 Aug 1 14:05:34 s1 pppd[21967]: Connect: ppp0 <--> /dev/pts/2 Aug 1 14:05:34 s1 pptpd[21965]: GRE: Bad checksum from pppd. Aug 1 14:05:38 s1 pppd[21967]: MPPE 128-bit stateless compression enabled Aug 1 14:05:41 s1 pppd[21967]: Unsupported protocol 'Apple Client Server Protocol Control' (0x8235) received Aug 1 14:05:41 s1 pppd[21967]: Unsupported

使用Yum快速升级CentOS6.6内核

因为要装Docker所以需要升级下Linux内核 记录下命令备忘 导入public key rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org 安装ELRepo到CentOS 6.6中 rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm 安装长期支持版本kernel yum --enablerepo=elrepo-kernel install kernel-lt -y 编辑grub.conf文件,修改Grub引导顺序 vim /etc/grub.conf 确认刚刚安装的内核的位置,然后将default修改一下。 default=0 timeout=5

Jenkins集成jekyll

Jekyll 3 需要ruby 2.0 以上,CentOS上的yum包比较老.使用rvm进行安装 curl -L get.rvm.io | bash -s stable 导入 # root用户安装执行 source /usr/local/rvm/rvm.sh # 其他用户安装 source ~/.rvm/rvm.sh 安装Ruby rvm 2.0.0 Jekyll的路径如下 /usr/local/rvm/gems/ruby-2.0.0-p648/bin/jekyll 但是要正常运行需要用wrappers脚本处理下环境变量等等, 包裹下如下 cd $WORKSPACE /usr/local/rvm/gems/ruby-2.0.0-p648/wrappers/jekyll build --source $WORKSPACE --destination $WORKSPACE/_sites 构建后scp拷贝到

集群安装Hadoop系列组件

公司日志系统扩容,考虑到后续数据暴增,选用HBase来进行存储,在本地VM进行一下演练 记录下安装过程备查 配置之前请查阅兼容列表 目前安装的版本 HADOOP-2.5.2 HBASE-1.1.5 Hadoop 安装 1.配置 选择4台虚拟机作整个集群,配置如下 hdp1 10.0.0.30 #master hdp2 10.0.0.31 #datanode hdp3 10.0.0.32 #datanode hdp4 10.0.0.33 #datanode 2.工具 远程执行命令 #!/bin/sh #/opt/hdp/hdp_ssh for i in 31 32 33 41 42 43; do echo -e "\033[33m - 10.0.0.${i} - \033[0m" ssh root@10.0.0.$i $*

Golang:错误即值 Errors are values

来自Rob Pike的博客翻译

英文原版见此 https://blog.golang.org/errors-are-values 作者 :Rob Pike 翻译 :Vincent Mi 前言 最近用Go写了一下程序,没有try-catch不太适应。因此翻到了这篇文章. 顺手翻译了过来.可能翻译不太好纯为了自己加深理解. 正文 如何进行错误处理,这是一个Go程序员之间,特别是一些新的Go程序员,会经常讨论的问题.讨论到最后往往由于以下代码的多