Kubernetes安装笔记

这是一篇介绍如何手动一步一步安装配置kubernetes的文章,主要为了确保读者了解启动kubernetes集群所需的每个任务。

集群信息

 

  • kube master 192.168.66.246 hostname: controller-0
  • kube node1 192.168.65.69 hostname: worker-0
  • kube node2 192.168.64.255 hostname: worker-1
  • pod CIDR 192.168.192.0/18
  • service CIDR 192.168.128.0/23

Continue reading “Kubernetes安装笔记”

linux下查看磁盘分区类型

这两天遇到个需求,要在aws ec2服务器启动的时候自动挂载volume,同时把挂载的磁盘mount到指定的目录,这里就会遇到个问题,如果volume是新创建的,那么再挂载磁盘的时候就会报错,因为磁盘还没有被格式化过。那如果每次挂载前先对磁盘进行格式化,那么如果磁盘上本来有数据,那就都丢了。

这个时候,就需要对磁盘进行一个判断,如果磁盘已经有了分区类型,比如ext3或ext4,说明这块磁盘可以直接被mount而不用格式化,如果查不到分区类型,那就说明是块新盘,需要先格式化再挂载。 Continue reading “linux下查看磁盘分区类型”

在aws ec2机器上查看本机instance ID

今天蚊子遇上个小需求,要使用aws ec2的user-data让机器在启动的时候挂载一个已经存在的ebs volume,这样就需要在机器启动的时候知道自己当前机器的instance-id,其实办法也很简单,只需要安装一个包,运行一条命令就可以实现了

sudo apt-get install cloud-utils

然后运行如下命令

Continue reading “在aws ec2机器上查看本机instance ID”

创建新的独立screen会话执行命令

screen命令想必linuxer都知道并用过,对于那些想要放在前台跑又不想在terminal关掉的时候退出的应用很有用,最近wenzi就遇到一个新需求,我在用aws的cloud-config配置服务器自启动执行脚本的时候,希望在机器初始化之后,紧接着就跑一个脚本。

而且这个脚本我又不想使用nohup的方式跑,于是乎我就想到了screen,经过查看manpage,果然找到了好办法,既能使用screen多次连接的功能,又可以用screen命令直接运行命令并自动退出会话 Continue reading “创建新的独立screen会话执行命令”

MMDrawerController搭配storyboard使用详解

MMDrawerController是一个iOS抽屉式导航控件,支持自定义的过渡动画(滑动,滑动和缩放等)来展示或者隐藏“抽屉”。官方网站:https://github.com/mutualmobile/MMDrawerController

看过MMDrawerController源码和demo的人应该都知道,通篇都是找不到一个storyboard文件或者xib文件的,所有功能实现都是代码。按讨论组里作者的意思,这样更容易在大型项目中使用,可是对于我们个人初中级的开发者来说就有些许的不方便了,大神级的人物完全可以忽略。 Continue reading “MMDrawerController搭配storyboard使用详解”

sinatra使用mysql做为数据库

sinatra,一个轻量级的ruby web框架。如果要写一个不怎么复杂的web小应用,使用这个就在适合不过了。

最近蚊子就自己尝试着写一个小应用,结果在使用mysql这块犯了愁,正常情况下,ruby程序调用mysql还是很容易的,只需要这样做就行了

Continue reading “sinatra使用mysql做为数据库”

rpmlib(FileDigests),rpmlib(PayloadIsXz) is needed解决办法

在RHEL6中,新版的rpm使用了新的file digest algorithms 和 compression algorithms,所以当在RHEL6或centos6环境下编译RHEL5或centos5下使用的rpm包时,就会出现类似如下的错误

     rpmlib(FileDigests) <= 4.6.0-1 is needed by package-23488-1.noarch

     rpmlib(PayloadIsXz) <= 5.2-1 is needed by package-23488-1.noarch

Continue reading “rpmlib(FileDigests),rpmlib(PayloadIsXz) is needed解决办法”

脚本分享–删除指定目录下过期文件

这两天用python写了一个删除指定目录下过期时间的脚本。也可能是我初学python,对python还不够熟习,总觉得这个脚本用shell写应该更简单也更容易些。

就功能上来说,该脚本已经实现了我想要的效果,不过该脚本还不够通用性,还有更多可以完善的地方。目前该脚本在python2.4下运行良好。同时,蚊子在脚本中加入了对python版本的判断,理论上2.7下也应该可以正常使用。有环境的朋友可以帮忙测试一下。

Continue reading “脚本分享–删除指定目录下过期文件”

快速添加at任务

linux at命令,用户使用linux at命令在指定时刻执行指定的命令序列。

在这里,蚊子不做具体详细的介绍。只是来说明一下,如何可以快速的添加一个at任务。

传统方式中,我看到的有3中

1,at 5pm /bin/ls -l /root >/tmp/ls.log

在当天下午5点执行ls命令。(注)此方法我一次没有实现过。

2,将/bin/ls -l /root >/tmp/ls.log语句写入/tmp/tmpjob,语句为:

at -f /tmp/tmpjob 5pm

Continue reading “快速添加at任务”