Gary兄弟学习入门小结 - 手把手安装Cloudify 3.1
1, 准备环境ubuntu 12.04 LTS:
为了方便,我在linode里找一个小机器,最小配置,1G内存的那种,一个月只要10美刀。就现在的情况下,选东京机房速度要快一点。在早上的时候ping值相对比较小一些。最近几天申请东京机器的时候,有可能遇到分配不到的情况,可能是生意太好,只能是多试几次了。我最后把Cloudify3.1 CLI, 加上Cloudify Manager,再加它那个MongoDB加上Node.js的应用实例一起安装在一个1G内存的机器里。最后证明是可以成功,但是到最后一步的时候,的确变得很慢;所以还是建议有2G以上的内存。
如果是Cloudify 3.1版本,还是推荐ubuntu 12.04 precise,有试过14.04版本安装Cloudify 3.1,会提示报错。
如果是Cloudify 3.2以上版本,推荐14.04,因为manager只有Docker安装一个选项,虽然理论上您也可能自已升内核。
root@localhost :~# cat /etc/issue
Ubuntu 12.04.4 LTS \n \l
root@localhost :~# uname -a
Linux localhost 3.19.1-x86_64-linode53 #1 SMP Tue Mar 10 15:30:28 EDT 2015 x86_64 x86_64 x86_64 GNU/Linux
2, 添加用户和更新组件安装
不要对用户添加指定group,好象有一个组件会产生问题,为啥我也正在研究中:
useradd gary -d /home/gary -m -s /bin/bash
在sudoers里添加内容,以便有sudo功能:
vi /etc/sudoers
gary ALL=(ALL) NOPASSWD: ALL
然后更新组件安装 (个人感觉cd ~比cd更清楚一些):
su gary
cd ~
sudo apt-get update && sudo apt-get upgrade
sudo apt-get install openjdk-7-jdk
virtualenv是一个python的沙箱环境,对于Cloudify是必备件:
sudo apt-get install python-virtualenv && sudo apt-get install python2.7-dev && sudo apt-get install git
3, 准备ssh用的key文件
sudo apt-get install openssh-client
/usr/bin/ssh-keygen -t rsa
在.ssh目录把key文件添加一下
cd ~/.ssh && cat id_rsa.pub >> authorized_keys && cd ~
4, 创建python的一个沙盒环境
virtualenv cfy3.1
然后激活它:
source cfy3.1/bin/activate
这个时候which python命令将会出现以下:
which python
(cfy3.1)gary@hostname:~$ which python
/home/gary/cfy3.1/bin/python
5, Cloudify CLI的安装
开始安装Cloudify命令行:
pip install cloudify==3.1
查看一下CLI版本号:
(cfy3.1)gary@li538-77:~$ cfy --version
Cloudify CLI 3.1.0 (build: 85, date: )
6, bootstrap Cloudify manager
git clone https://github.com/cloudify-cosmo/cloudify-manager-blueprints
cd cloudify-manager-blueprints
注意CLI版本与Manager一致性,不然的话对于3.1以后版本会出错。
git tag -l
git checkout 3.1
初始化cloudify本地工作目录,以安装插件,单机环境下主要是会去安装cloudify-fabric-plugin
cd ~ && cfy init
cfy local install-plugins -p cloudify-manager-blueprints/simple/simple.yaml
7, 更改inputs.json文件,在3.2以后json文件已更改成yaml文件,意思差不多
~/cloudify-manager-blueprints/simple里面有个模板了,把它复制一下到inputs.json吧。
cd ~/cloudify-manager-blueprints/simple && cp inputs.json.template inputs.json
vi inputs.json
{
"public_ip": "127.0.0.1",
"private_ip": "127.0.0.1",
"ssh_user": "gary",
"ssh_key_filename": "/home/gary/.ssh/id_rsa",
"agents_user": "ubuntu",
"resources_prefix": ""
}
曾经用~/.ssh/id_rsa来指向,而不是绝对文件路径,结果在docker安装环境下变乱了。还是统一成绝对文件路径吧。然后开始安装Cloudify Manager:
cd ~最后一步执行错误:
checkingwhetherelasticsearchisinstalled...elasticsearchisnotinstalled,installing...
checking
ERROR:packageelasticsearchisnotinstalled
whetherelasticsearchisinstalled...
4,也有兄弟说过阿里自带的Ubuntu12.04安装不上,原因是安装不上那个elasticsearch组件,目前原因不详,我只试了一下第三方的Ubuntu12.04镜像。
在执行 cfyexecutionsstart-winstall-dnodecellar时,出现了NonRecoverableError('Cannotfindkeypairfile,expectedfilepathwas/home/stack/.ssh/id_rsa'错误,事实上我是有这个文件的,请问这是什么问题?重新整理python环境试试。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。