手把手教你在CoreOS部署一个WordPress程序

摘要:你可能听过服务器操作系统CoreOS的名字,那你试过在上面建立个小程序么?今天,我们就来手把手地教你建立一个简单的WordPress程序。

CoreOS是一个专门为大规模服务器部署定制的Linux精简系统,它将操作系统和应用程序完全分离,从而降低操作系统和应用程序的耦合度,同时解决了现有Linux服务器在容器资源、权限管理方面出现的问题。就目前来说,CoreOS会是未来操作系统的发展趋势。

那你有没有亲自在CoreOS上部署一个应用程序呢?相信大多数人都没有过这样的经验,在CoreOS上建立一个应用程序可以说是非常辛苦及沮丧的。因为在开始建立程序之前你首先必须了解所有不同的技术。

下面,我们将手把手地教你来创建一个简单的WordPress应用程序,采用MySQL作为服务器,在CoreOS上运行。

1. 安装CLI来控制CoreOS

如果你的电脑是Mac,可以在本机安装fleetctl和etcdctl来控制CoreOS集群:

2. 安装本地集群

使用部署虚拟化开发环境Vagrant来安装本地集群很容易:

现在集群就安装好了,简单吧!下面就让我们来检查一下本地fleetctl:

真棒,它起作用了!3. 使用fleet部署一个应用程序

fleetctl命令可把应用程序部署到CoreOS集群的节点中,但要为fleet写服务文件真的是太糟糕了。幸运的是,你不必自己编写,你可以使用yaml format来生成服务文件:

fleetctl客户端工具使用的是etcd系统的Key/Value存储形式,以分享配置和服务发现。下面教大家如何把程序部署到集群中:

现在程序就运行了,但是还没有注册etcd的服务,幸运的是fig2coreos生成的服务发现文件可以帮助我们:

这样就完成了!如果你使用的是Vagrant 1.5及Vagrant Cloud,那么你就可以实现 WordPress程序并看到它可以实行了:

下面就是做好的效果图:

其实我们可以在CoreOS上能做很多事,今天这个只是基础,感兴趣的你可以动手试一试

 

原文链接:http://www.csdn.net/article/2014-03-26/2818984

关于CentOS、uBuntu、Gentoo、FreeBSD、Debian等LIUX类系统

下面我讨论的都是服务器领域,因为桌面版没有意义,桌面还是Windows的天下,用Linux做桌面除了新鲜,确实没有任何优势。官网:http://www.centos.org/

       CentOS其实是Redhat的内核,感觉是会成熟稳定一点,相比旧Redhat,他多了一个yum的命令,学Debian一样自动安装软件;但我感觉CentOS的可以Yum的东西相比Debian或Ubuntu,实在太少了;CentOS游走在年轻与成熟之间,它比Ubuntu更注重安全性,你看他的CentOS5.0默认一装好就自带并打开防火墙就知道;而且有一个叫SELinux的东东在里面,让不同的程序之间权限有所限制,这也是我装CentOS一些软件经常莫名奇妙地告诉我“没有权限”的一个原因。后来因为一些软件搞了一夜,都没有搞成功,比如VSftp+PAM_MYSQL的认证,一气之下把他格掉了。

官网:http://www.ubuntu.org.cn/

       Ubuntu就是Debian的延续版,apt-get自动安装、更新软件的方式,是Debian首创(应该是他吧!)相比起来,他的apt-get软件库及源强大很多,也多很多,我们的服务器除了一个magickWand(imageMagick的PHP API),其它东西全部都是apt-get下来的,安装不需要一分钟;感觉Ubuntu更加自由,小巧,灵活,有点年轻人的感觉。

       使用心得:新版的Ubunt7.10(就是我们现在的版本),比起6.10,多了一个非常实用的功能,就是你选择你所在的地区时,比如我选中国,那安装完后你的源就自动变成了中国的源了!这个非常爽,不用再到处去找别的源来代替了。另外源一定要注意,不要乱改,我们就曾经因为改乱了,导致软件版本全部搞乱了,一气之下我昨天又跑去重装了一遍,这才恢复。

       另外:如果当你apt-get失败的时候,错误信息是E:Broken Package时,如何处理?我在google找了好久没有找到答案的,后来自己实践,发现原来就是源的问题,他在源上找不到一些Depends on关系的包,就装不成功了。这时候可以试下换其它的源,但注意一定要保持原备份!我觉得官方的源就已经相当齐全,不是万不得已一般不要轻易改掉。注意换了源之后要apt-get update一下。

       还有一个心得就是,CD-Rom里放置着系统的安装碟,也是一个挺不错的源哦!很多软件不用上网下载,直接在碟内就是很新的版本,也是个不错的选择。

官网:http://www.gentoo.org/

       Gentoo呢,估计是性能最好的,因为他安装超麻烦;据说他的理念就是,让你明白Linux的每一样东西是如何出来的!全部由你定制来决定!但因为其实谁都厌倦了烦琐,这个版本是正在衰落中。

官网:http://www.freebsdchina.org/

       FreeBSD是另外一种内核,不属于Linux了,我们以前百步梯的服务器就是采用FreeBSD的了,据说是性能最强劲的。但内核不一样,我们这次不敢尝试。

http://www.williamlong.info/info/archives/197.html

       Linux 最早由Linus Benedict Torvalds在1991年开始编写。在这之前,Richard Stallman创建了Free Software Foundation(FSF)组织以及GNU项目,并不断的编写创建GNU程序(此类程序的许可方式均为GPL: General Public License)。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的Linux,或称GNU/Linux。

       Linux的发行版本可以大体分为两类,一类是商业公司维护的发行版本,一类是社区组织维护的发行版本,前者以著名的Redhat(RHEL)为代表,后者以Debian为代表。下面介绍一下各个发行版本的特点:

       Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat Advance Server,收费版本)、Fedora Core(由原来的Redhat桌面版本发展而来,免费版本)、CentOS(RHEL 的社区克隆版本,免费)。Redhat应该说是在国内使用人群最多的Linux版本,甚至有人将Redhat等同于Linux,而有些老鸟更是只用这一个版本的Linux。所以这个版本的特点就是使用人群数量大,资料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人来问,而且网上的一般Linux教程都是以Redhat为例来讲解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用, 但是Fedora Core的稳定性较差,最好只用于桌面应用。

       Debian,或者称Debian系列,包括Debian和Ubuntu等。 Debian是社区类Linux的典范,是迄今为止最遵循GNU规范 的Linux系统。Debian最早由Ian Murdock于1993年创建,分为三个版本分支(branch): stable, testing 和 unstable。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而stable一般只用于服务器,上面的软件包大部分都比较过时,但是稳定和安全性都非常的高。Debian最具特色的是apt-get / dpkg包管理方式,其实Redhat的YUM也是在模仿Debian的APT方式,但在二进制文件发行方式中,APT应该是最好的了。Debian的资料也很丰富,有很多支持的社区,有问题求教也有地方可去:)

       Ubuntu严格来说不能算一个独立的发行版本,Ubuntu是基于Debian的unstable版本加强而来,可以这么说,Ubuntu就是 一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的 Linux桌面系统。根据选择的桌面系统不同,有三个版本可供选择,基于Gnome的Ubuntu,基于KDE的Kubuntu以及基于Xfc的 Xubuntu。特点是界面非常友好,容易上手,对硬件的支持非常全面,是最适合做桌面系统的Linux发行版本。

       Gentoo,伟大的Gentoo是Linux世界最年轻的发行版本,正因为年轻,所以能吸取在她之前的所有发行版本的优点,这也是Gentoo 被称为最完美的Linux发行版本的原因之一。Gentoo最初由Daniel Robbins(FreeBSD的开发者之一)创建,首个稳定版本发布于2002年。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美 FreeBSD的广受美誉的ports系统 ——Portage包管理系统。不同于APT和YUM等二进制文件分发的包管理系统,Portage是基于源代码分发的,必须编译后才能运行,对于大型软件而言比较慢,不过正因为所有软件都是在本地机器编译的,在经过各种定制的编译参数优化后,能将机器的硬件性能发挥到极致。Gentoo是所有Linux 发行版本里安装最复杂的,但是又是安装完成后最便于管理的版本,也是在相同硬件环境下运行最快的版本。

       最后,介绍一下FreeBSD,需要强调的是:FreeBSD并不是一个Linux系统!但FreeBSD与Linux的用户群有相当一部分是重合的,二者支持的硬件环境也比较一致,所采用的软件也比较类似,所以可以将FreeBSD视为一个Linux版本来比较。FreeBSD拥有两个分支: stable和current。顾名思义,stable是稳定版,而 current则是添加了新技术的测试版。FreeBSD采用Ports包管理系统,与Gentoo类似,基于源代码分发,必须在本地机器编后后才能运行,但是Ports系统没有Portage系统使用简便,使用起来稍微复杂一些。FreeBSD的最大特点就是稳定和高效,是作为服务器操作系统的最佳选择,但对硬件的支持没有Linux完备,所以并不适合作为桌面系统。

       下面给为选择一个Linux发行版本犯愁的朋友一些建议:
       如果你只是需要一个桌面系统,而且既不想使用盗版,又不想花大量的钱购买商业软件,那么你就需要一款适合桌面使用的Linux发行版本了,如果你 不想自己定制任何东西,不想在系统上浪费太多时间,那么很简单,你就根据自己的爱好在ubuntu、kubuntu以及xubuntu中选一款吧,三者的 区别仅仅是桌面程序的不一样。
       如果你需要一个桌面系统,而且还想非常灵活的定制自己的Linux系统,想让自己的机器跑得更欢,不介意在Linux系统安装方面浪费一点时间,那么你的唯一选择就是Gentoo,尽情享受Gentoo带来的自由快感吧!
       如果你需要的是一个服务器系统,而且你已经非常厌烦各种Linux的配置,只是想要一个比较稳定的服务器系统而已,那么你最好的选择就是CentOS了,安装完成后,经过简单的配置就能提供非常稳定的服务了。
       如果你需要的是一个坚如磐石的非常稳定的服务器系统,那么你的唯一选择就是FreeBSD。
       如果你需要一个稳定的服务器系统,而且想深入摸索一下Linux的各个方面的知识,想自己定制许多内容,那么我推荐你使用Gentoo。

美国主机

最近一直在研究老美的主机。常用的几个都有实验。老美的主机一般都有一到三个月的无条件退款。总体说说相对国内主机的区别:
一,不严格限制磁盘空间和硬件资源。其实国人有个特点,就是什么都往主机上搬。完全没有必要。真的一个站一天上几千ip的,一般共享主机是受不了的,您赶紧想办法弄vps或者云主机甚至是独立服务器去。静态站每天有大量数据生成静态文件的,那对磁盘空间和数据库要求都是一个不小的考验的。这种共享主机其实定位很明显,就是针对中小企业和个人展示及中等强度网络应用要求的。您别指望这是万能的。有些主机对于资源其实是有后台要求的。一旦发现你的主机资源严重影响其他人的操作与服务,他们会警告你限期整改,最严重的会删除你的数据。当然不排除一些主机服务故意恶心你。这种情况下以windows主机居多,谁叫破微软的资源最恶心呢。
二,类型分工明确。国外主机以linux居多,老美对lnmp确实摸得特别透彻,并且lnmp架构多为来源系统和软件。会给他们省很多软件成本,嫁祸到我们头上的自然也就少了。您想想一套正版windows server都会靠大家来买单的。lnmp加上cpanel,就一个字∶好用。php也算是世界上最流行的web开发语言了。不妨您试试。windows主机老美的也不错,不过普遍会比linux贵一些。到现在我才明白国人喜欢asp和.net是盲目崇拜微软惹的祸。其实挺悲哀的。老美的windows主机虽然也大多支持php,但是应该还是不如linux下的好吧。并且一般的windows的管理面板都不如cpanel,难怪cpanel授权那么贵。一分钱一分货。

三,客服服务优良。普遍老外主机的客户很专业。基本上范围内能满足你的要求的,都会尽力去做。当然不排除有些主机站点规模小,请的印度阿三当客服,有些确实不太专业。但是整体来说,比咱们国内技术的高了老鼻子。至少不会和国内的某些装大的网站,随便设置个什么就要一大笔费用。并且他们有很多貌似对某些方面很专业,甚至包括建站及编程。就看你遇到遇不到了。

四,网络速度及稳定性问题。这个问题是一个很严重的问题。您想想,怎么说也饶了半个地球了。咱们借着海底宽带光缆直通到互联网的发源地的主机,怎嘛说也还是挺远的。老美的机房速度本来都不错,带宽资源绝对比国内X信和X通及X通充足,并且不存在国内南北不通的问题。据我个人了解,老美有一条直通的光缆连接中国CHINANET主干网络。那个机房就是美国洛杉矶机房。速度基本上接近和港台差不多。当然个别机房速度也还不错。但是有些小主机商的机房自建的或者别的,那种确实不太稳定。稳定性上来说,只要不是WINDOWS主机,一般机器绝对相当稳定。抽风一般都是中国X信或者X通做了手脚屏蔽什么的。另外还有国际主干道出现问题,比如以前海底光缆故障。这种情况会导致路由被切换到别的网络转接,绕的太远,肯定会慢的。

 

说了以上这么多么,大家觉得这么样呢。还有,你们觉得我这个博客速度如何?美国主机哦。