系统:ubuntu 16.04 server x64
根据官网教程(英语渣渣)
前置工作:
安装SSH
sudo apt-get install openssh-server
sudo apt-get install openssh-client(可能不用)
更换source-list
通过ssh更改一下sourse.list文件
更新下
sudo apt-get update
sudo apt-get dist-upgrade
安个vim
sudo apt-get install vim
遇到问题:
网络配置:
计算和控制结点都是两块网卡,一块NAT模式,IP用DHCP或者静态都行,另一块host-only(???不确定),IP按照官网教程设定
auto INTERFACE_NAME iface INTERFACE_NAME inet manual up ip link set dev $IFACE up down ip link set dev $IFACE downVmware 添加网卡:http://blog.sina.com.cn/s/blog_59b0e3f30100ah42.html
按照这个教程发现第二块网卡的名称 然后直接在 /etc/network/interfaces 里面添加上图配置即可
安装keystone连接数据库的时候要加sudo
sudo mysql -uroot -p
否则会
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
glance安装前配置数据库
摘自:openstack M版中文文档。。P版文档缺失这部分??
Networking Option 2: Self-service networks
这个模块需要科学上网
实际操作文件中该属性名称为nova_metadata_host....于是我就把两个都设成了controller
第二块网卡就是host only那块,上图为网络部分第二种网络
安装好dashboard以后,直接在主机 输入控制结点IP+/horizon 就可以。。。可能会比较慢
启动一个实例:
添加provider network
这里面的IP需要和
Ip在一个地址段,并且根据
对始末IP进行配置
以上,祝大家配置愉快【手动滑稽】
下面,关于openstack api:
python有相关的库,http://www.aboutyun.com/thread-6747-1-1.html
我并没有用,感觉出了bug,不会debug
于是就用官方提供的api文档,配合requests库(好用)
不管什么操作都要先获取token
具体调用方式可以看一下:http://www.cnblogs.com/biangbiang/archive/2013/02/01/2888800.html领会一下精神
然而并不要用它的API,因为那些太旧了,pike版api还得看官方文档 https://developer.openstack.org/api-guide/quick-start/
一些简单的操作 看compute模块就行https://developer.openstack.org/api-ref/compute/
认证部分实例代码:
data={
"auth": {
"identity": {
"methods": [
"password"
],
"password": {
"user": {
"domain": {
"name": userDomain
},
"name": username,
"password": password
}
}
},
"scope": {
"project": {
"domain": {
"name": projectDomain
},
"name": projectName
}
}
}
}
data=json.dumps(data)#必须,否则会400错误
headers={"Content-Type": "application/json","Accept": "application/json"}
url="http://"+IP+":5000/v3/auth/tokens"
re=requests.post(url=url,headers=headers,data=data)
if re.status_code!=201:
self.token=None
raise Get_Info_ERROR("获取用户token失败,请检查验证信息")
self.token=re.headers['X-Subject-Token']
后面的其它操作按照文档来即可