• kickstart从autopart改为自行分区

    背景 在前面如何为linux集群批量装机?这篇文章里介绍了我们的服务器装机流程,其中ks文件中磁盘分区的配置是这样的: # Allow anaconda to partition the system as needed clearpart --all --initlabel autopart ignoredisk --only-use=sda 使用autopart的原因是我们的磁盘容量不一定(可能是400G的ssd,也可能是4T/6T的sata),通过autopart交给anaconda去决...


  • 国内 docker 仓库镜像对比

    选择负一 选择零:网易163 docker镜像 选择一:ustc的镜像 选择二:daocloud 选择三:alicloud 首先,需要明确一个问题:Mirror 与 Private Registry 有什么区别? 抄自daocloud的说明: 二者有着本质的差别。 Private Registry 是开发者或者企业自建的镜像存储库,通常用来保存企业内部的 Docker 镜像,用于内部开发流程和产品的发布、版本控制。 Mirror 是一种代理中转服务,我们(指daoclo...


  • Google Guice的动机

    动机 直接构造函数调用(Direct constructor calls) Factories 依赖注入 Dependency Injection with Guice 原文地址: Google Guice Motivation 这篇文章捋了下Google Guice造轮子的思路,举了一个很具体的例子,深入浅出,对理解为什么要有依赖注入很有帮助。 Google Guice是一个类似Spring的DI框架,优点是简单,轻量级,快。Google Guice和Spring的对比...


  • 如何为linux集群批量装机?

    rest服务(snservice) 命令行工具 kickstart配置IP 如何为linux集群批量装机? U盘安装?古老的光盘安装?一两台还可以勉强接受,机器一多,时间会很长,还特别费工夫。对于服务器来说,一般考虑的方法是PXE安装,然后搭配kickstart自动装机。整个过程如下图: 实战中我们可以使用cobbler做集中管理,对cobbler的搭建感兴趣可以参考Setup PXE Boot Environment Using Cobbler On CentOS 6.5,...


  • 为什么不用RAID-0呢?这关于时间和雪花

    JBOD和RAID-0的诱惑 可靠性 每个磁盘是一个独特的雪花 总结 更新:单驱动器RAID-0 原文地址,机器+人工翻译。 作者:史蒂夫洛克伦 在各种Hadoop的邮件列表中反复出现的问题是:“为什么Hadoop倾向于使用一组分离的磁盘,而不是将这些磁盘组成RAID-0阵列再使用?” 这是关于时间和雪花。 JBOD和RAID-0的诱惑 在Hadoop集群,我们建议以一种已知的,蔑称为“JBOD”(Just a Box of Disks)的配置来分别对待每个磁盘。这...


  • freeIPA中kerberos跟LDAP是怎么交互的?

    freeIPA的会包含下面2个组件: LDAP Server - based on the 389 project (LDAP) http://directory.fedoraproject.org/wiki/Main_Page KDC - based on MIT Kerberos implementation http://k5wiki.kerberos.org/wiki/Main_Page 注意LDAP Server用的不是openLDAP,而是R...


  • BLOG搬到亚马逊AWS上去了

    EC2虚机需要装jekyll NGINX EC2的安全组 DNS解析 百度加速乐 之前BLOG一直使用的是github pages托管的,好处是只要git push一把就可以使用pages的jekyll功能自动编译了,并且github的CDN也不错,从大陆访问速度也还可以接受。但不好的地方是,github的pages不支持jekyll-archives,导致BLOG的tag和category都不能使用,相对来说不太方便,特别是tag。另外github把百度的爬虫给禁掉了,无法...


  • Spark支持S3作为DataSource(四):使用Spark处理存储在S3上的图片文件

    主流程 PicProcess类 图片处理 执行结果 前面三篇文章介绍了S3以及如何使用Hadoop和Spark处理S3上的文本文件,但毕竟我们使用S3的目的是为了处理非结构化文件(图片,视频)。本文介绍了如何使用Spark处理存储在S3某一个bucket里大量文件(实际我只放了很少几张图片)的方法。由于我不了解图片处理算法,所以图片的处理只是简单读取了该图片的长度、宽度、拍摄时间、拍摄地点等信息。至于更复杂的图像处理、视频处理,如车牌识别,如果图像处理算法是纯JAVA的实现,那只...


  • Spark支持S3作为DataSource(三):Spark集成S3 Service

    spark-shell Spark SQL Spark的DataSource支持S3和Swift,考虑到Ceph也提供了S3和Swift的API,而C++的效率也是Python难以望其项背的,所以Spark+Ceph(S3 Service)可能是一个比较合适的方案。 如果想试试Spark with Swift,可以参考Accessing OpenStack Swift from Spark这篇文章,这里不再涉及。 spark-shell Spark shell在启动前,需要保证HD...


  • Spark支持S3作为DataSource(二):Hadoop集成S3 Service

    Hadoop配置S3集成 Signature V2/V4 Hadoop与S3的集成可以参考官方说明。我在这里被s3/s3n/s3a给搞混淆了,实际上对于AWS来说,只有s3协议,但是hadoop由于历史原因,逐步实现了s3->s3n->s3a三种访问S3服务的协议,支持的文件也越来越大。由于我们使用的是自建S3 Service,而只有s3a支持设置endpoint,虽然号称“仍有bug”,但也只能硬着头皮上了。 Hadoop配置S3集成 修改core-site.xml,增...