首页 > CentOS > VMWARE 安装 SmartOS + Project FiFo 云主机
2014
06-29

VMWARE 安装 SmartOS + Project FiFo 云主机

一、安装SmartOS

*必要设置*
1、先要启用BIOS 里的CPU的虚拟化VT
2、新键一个虚拟机内存设置成1G,如果设置太小 Base64 里的系统的fifo 的服务可能不能正常启动。
3、把VMWare安装的时候要把CPU里的VT虚拟化启用。操作步骤:虚拟机-设置-硬件-处理器-虚拟化引擎-虚拟化 Intel VT-x/EPT 或 AMD-V/RVI(V) 勾选上。

4、SmartOS 安装好以后光盘镜像不能弹出,因为它是以光盘或USB来引导进系统,去掉后将无法开机了。

如下图

vmware-enable-vt

 

第一步、你想继续配置? 按y 回车继续安装

第二步、设置静态IP或使用DHCP,我这里选的是 dhcp,如果你要成固定IP,需要设置IP地址,子网掩码,网关地址,域名,DNS默认是谷歌8.8.8.8,8.8.4.4。

第三步、选择安装的硬盘,按提示的硬盘输入,然后按回车。

第四步、设置超级用户密码,以及确认密码。

第五步、直接回车继续。

第六步、不需要修改配置文件,回车继续安装。

第七步、提示硬盘的数据将要被清空,按y 就开始安装了。

第八步、安装完成,重启。

 

二、 安装 Project FiFo

1、安装 chunter

[root@00-0c-29-90-f0-7e /opt]# VERSION=rel
[root@00-0c-29-90-f0-7e /opt]# curl -O http://release.project-fifo.net/chunter/${VERSION}/chunter-latest.gz #下载chunter文件
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 23.0M  100 23.0M    0     0  1432k      0  0:00:16  0:00:16 --:--:-- 1545k
[root@00-0c-29-90-f0-7e /opt]# gunzip chunter-latest.gz #解压文件
[root@00-0c-29-90-f0-7e /opt]# sh chunter-latest #安装chunter
This SmartOS release WAS NOT tested! Are you sure you want to go on? [yes|NO]
yes #输入yes回车开始安装
Okay we go on, but it might not work!
[root@00-0c-29-90-f0-7e /opt]# svcadm enable epmd chunter #启动chunter这个服务
svcadm: Partial FMRI matches multiple instances
[root@00-0c-29-90-f0-7e /opt]# svcs chunter #查看服务是否启动
STATE          STIME    FMRI
online         21:15:10 svc:/network/chunter:default #这里显示online 就是启动

2、安装FIFO

[root@00-0c-29-90-f0-7e ~]# cd /opt #进入/opt目录
[root@00-0c-29-90-f0-7e /opt]# imgadm update #升级一下
[root@00-0c-29-90-f0-7e /opt]# imgadm import dc0688b2-c677-11e3-90ac-13373101c543 #导入base64系统,自动从网上下载。
[root@00-0c-29-90-f0-7e /opt]# imgadm list #查看是否导入成功
UUID                                  NAME    VERSION  OS       PUBLISHED       
dc0688b2-c677-11e3-90ac-13373101c543  base64  13.4.2   smartos  2014-04-17T21:33:04Z
[root@00-0c-29-90-f0-7e /opt]# vi setupfifo.json #新建一个setupfifo.json 的配置文件,image_uuid就是刚刚导入系统的UID,然后把IP,子网掩码,网关修改成你的

{
 "autoboot": true,
 "brand": "joyent",
 "image_uuid": "dc0688b2-c677-11e3-90ac-13373101c543",
 "max_physical_memory": 1024,
 "cpu_cap": 100,
 "alias": "fifo",
 "quota": "40",
 "resolvers": [
 "8.8.8.8",
 "8.8.4.4"
 ],
 "nics": [
 {
 "interface": "net0",
 "nic_tag": "admin",
 "ip": "10.0.0.51",
 "gateway": "10.0.0.1",
 "netmask": "255.255.255.0"
 }
 ]
}

[root@00-0c-29-90-f0-7e /opt]# vmadm create >setupfifo.json
[root@00-0c-29-90-f0-7e /opt]# vmadm list #查看创建的FIFO主机
UUID                                  TYPE  RAM      STATE             ALIAS
8ebd87b8-1586-4b90-b08f-71acfa720bd9  OS    1024     running           fifo
[root@00-0c-29-90-f0-7e /opt]# zlogin 8ebd87b8-1586-4b90-b08f-71acfa720bd9 #登录到base64系统里
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# VERSION=rel
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# echo "http://release.project-fifo.net/pkg/${VERSION}/" >>/opt/local/etc/pkgin/repositories.conf  #添加PKG源
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# pkgin -fy up #更新一下源
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# pkgin install nginx fifo-snarl fifo-sniffle fifo-howl fifo-wiggle fifo-jingles #安装FIFO所需要的包
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# cp /opt/local/fifo-jingles/config/nginx.conf /opt/local/etc/nginx/nginx.conf #复制fifo-jingles的配置文件到nginx目录
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcadm enable epmd    #启动epmd 服务
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcadm enable snarl   #启动snarl 服务
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcadm enable sniffle #启动sniffle 服务
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcadm enable howl    #启动howl 服务
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcadm enable wiggle  #启动wiggle 服务
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcadm enable nginx   #启动nginx 服务
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcs epmd snarl sniffle howl wiggle nginx #查看以上服务是否都正常启动,显示有howl,wiggle没有启动,过一下再查看一下。
STATE          STIME    FMRI
online         21:00:50 svc:/pkgsrc/epmd:default
online         21:00:50 svc:/pkgsrc/nginx:default
offline*       21:00:50 svc:/network/snarl:default
offline*       21:00:50 svc:/network/sniffle:default
offline*       21:00:50 svc:/network/howl:default
offline*       21:00:50 svc:/network/wiggle:default
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# svcs epmd snarl sniffle howl wiggle nginx #以下服务都正常启动
STATE          STIME    FMRI
online         21:00:50 svc:/pkgsrc/epmd:default
online         21:00:50 svc:/pkgsrc/nginx:default
online         21:00:53 svc:/network/wiggle:default
online         21:00:53 svc:/network/howl:default
online         21:00:54 svc:/network/snarl:default
online         21:00:55 svc:/network/sniffle:default
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm users add admin #添加fifo 管理员帐号
User 'admin' added with id '945dc7ae-fdbb-4b9c-904b-6f538035937d'.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm users grant admin ... #授权admin帐号
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm users passwd admin admin #设置admin 帐号密码为admin
Password successfully changed for user 'admin'.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles add Users
Role 'Users' added with id '58e6b610-0fa5-48fe-b2ca-804214556644'.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud cloud status
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud datasets list
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud networks list
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud ipranges list
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud packages list
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud vms list
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users cloud vms create
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users hypervisors _ create
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users datasets _ create
Granted.
[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm roles grant Users roles 58e6b610-0fa5-48fe-b2ca-804214556644 get
Granted.

[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 /opt]# exit
logout

到此安装完成。

打开浏览器http://10.0.0.51 就可以看到安装的FIFO管理,然后输入刚刚创建的用户admin,密码admin

FAQ

1、在添加admin用户的时候,可能会出现以下错误。

[root@8ebd87b8-1586-4b90-b08f-71acfa720bd9 ~]# fifoadm users add admin
Node is not running!

出现这个问题的时候一般是安装FIFO里面的服务有些可能没有启动,

用这个命令svcs epmd snarl sniffle howl wiggle nginx 查看一下是否都是online ,如果没有并用 svcadm enable snarl 也启动不了的时候,查看一下VMWARE的内存是不是少于1G,当时我记得虚拟机设置是800MB的时候就有这情况,当时咨询了 DogeOS的作者李宇,才得知是 base64系统里的服务没有启动,不管怎么弄都是启动不了,最后把内存设置成1G的时候重开虚拟机的时候服务启动都正常。

2、可以正常登录FIFO,内存和硬盘使用率都为零,并且看不到正在运行的虚拟机。

如下图

 

 

 

出现这个问题的时候,一般是chunter服务没有启动,或没有正常安装。

[root@00-0c-29-90-f0-7e ]# svcs|grep chunter #查看chunter 服务是否正常启动
online         21:15:10 svc:/network/chunter:default

 

参考文献

http://docs.project-fifo.net/general/installation.html

并同时感谢 DogeOS 的作者李宇 http://www.dogeos.net/

2014.7.14 修复更新一处漏掉

最后编辑:
作者:dnybz
这个作者貌似有点懒,什么都没有留下。

  1. 应该是 pkgin install nginx fifo-snarl fifo-sniffle fifo-howl fifo-wiggle fifo-jingles fifo-watchdogwatchdog运行之后可以fifoadm users add admin参考资料:https://docs.project-fifo.net/en/stable/general/installation.html

    • 参考资料里面的仍然无法用ip访问fifo,但是live-cd的镜像按照这个流程创建后,是可以的。http://www.mydoop.com/2014/07/smartosproject-fifo%E4%BA%91%E4%B8%BB%E6%9C%BA%E5%AE%89%E8%A3%85android-x86-4-4-rc2/