MidoNet 安装(Kilo RDO)(最老版)
一、初始化(Kilo RDO)版(最老版)
环境介绍
系统
|
CentOS 7.3
|
---|---|
主机ip | 10.211.55.5 |
主机名 | midonet |
1.配置yum源
###OpenStack源
yum install -y centos-release-openstack-newton.noarch
mv /etc/yum.repos.d/CentOS-OpenStack-newton.repo /etc/yum.repos.d/CentOS-OpenStack-kilo.repo
sed -i
"s/openstack-newton/openstack-kilo/g"
/etc/yum.repos.d/CentOS-OpenStack-kilo.repo
sed -i
"s/mirror.centos.org/buildlogs.centos.org/g"
/etc/yum.repos.d/CentOS-OpenStack-kilo.repo
##Midonet源
yum install yum-plugin-priorities -y
[root
@midonet
~]# cat /etc/yum.repos.d/datastax.repo
[datastax]
name = DataStax Repo
for
Apache Cassandra
baseurl = http:
//rpm.datastax.com/community
enabled =
1
gpgcheck =
1
gpgkey = https:
//rpm.datastax.com/rpm/repo_key
[root
@midonet
~]# cat /etc/yum.repos.d/midonet.repo
[midonet]
name=MidoNet
baseurl=http:
//repo.midonet.org/midonet/v2015.06/RHEL/7/stable/
enabled=
1
gpgcheck=
1
gpgkey=http:
//repo.midonet.org/RPM-GPG-KEY-midokura
[midonet-openstack-integration]
name=MidoNet OpenStack Integration
baseurl=http:
//repo.midonet.org/openstack-kilo/RHEL/7/stable/
enabled=
1
gpgcheck=
1
gpgkey=http:
//repo.midonet.org/RPM-GPG-KEY-midokura
[midonet-misc]
name=MidoNet 3rd Party Tools and Libraries
baseurl=http:
//repo.midonet.org/misc/RHEL/7/misc/
enabled=
1
gpgcheck=
1
gpgkey=http:
//repo.midonet.org/RPM-GPG-KEY-midokura
2.关闭防火墙和selinux
[root
@midonet
~]# getenforce
Disabled
[root
@midonet
~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(
1
)
##如果getenforce不是Disabled
#修改selinux并重启
sed -ri
"s/(SELINUX=)(.*)/\1=disabled/g"
/etc/selinux/config
reboot
3.下载openstack
yum install python-openstackclient -y --nogpgcheck
yum install openstack-selinux -y --nogpgcheck
4.下载mariadb 并初始化数据库
yum install -y mariadb mariadb-server MySQL-python --nogpgcheck
systemctl enable mariadb.service
systemctl start mariadb.service
##删除多余的库及用户
mysql -e
"DELETE FROM mysql.user WHERE User='';"
mysql -e
"DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');"
mysql -e
"DROP DATABASE IF EXISTS test;"
mysql -e
"DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'"
mysql -e
"FLUSH PRIVILEGES;"
5.创建keystone和neutron库和用户
mysql -e
"create database keystone;"
mysql -e
"grant all on keystone.* to 'keystone'@'localhost' identified by 'keystone123456';"
mysql -e
"grant all on keystone.* to 'keystone'@'%' identified by 'keystone123456';"
mysql -e
"create database neutron;"
mysql -e
"grant all on neutron.* to 'neutron'@'localhost' identified by 'neutron123456';"
mysql -e
"grant all on neutron.* to 'neutron'@'%' identified by 'neutron123456';"
mysql -e
"select user,host from mysql.user;"
6.安装RabbitMQ
yum install rabbitmq-server -y --nogpgcheck
systemctl start rabbitmq-server.service
systemctl enable rabbitmq-server.servic
二、依赖服务安装
1.keystone安装配置
# 生成admin-token
openssl rand -hex
10
> admin-token
# 下载keystone
yum install -y openstack-keystone python-keystoneclient --nogpgcheck
#修改/etc/keystone/keystone.conf配置文件
[root
@midonet
~]# egrep -B
1
"^[a-z]"
/etc/keystone/keystone.conf
[DEFAULT]
admin_token = 6faca30b15bec6ffb8f8
--
[database]
connection=mysql:
//keystone:keystone123456@midonet/keystone
--
[revoke]
driver = keystone.contrib.revoke.backends.sql.Revoke
--
[token]
provider = keystone.token.providers.uuid.Provider
driver = keystone.token.persistence.backends.sql.Token
#初始化
keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
##如果报错可能是urllib3版本高了
pip install urllib3==
1.16
chown -R keystone:keystone /var/log/keystone
chown -R keystone:keystone /etc/keystone/ssl
chmod -R o-rwx /etc/keystone/ssl
# 同步数据库
su -s /bin/sh -c
"keystone-manage db_sync"
keystone
#启动keystone
systemctl enable openstack-keystone
systemctl start openstack-keystone
#配置变量
export OS_TOKEN=6faca30b15bec6ffb8f8
export OS_URL=http:
//midonet:35357/v3
export OS_IDENTITY_API_VERSION=
3
##创建管理用户admin
openstack project create --domain
default
--description
"Admin Project"
admin
#创建admin用户
openstack user create --domain
default
--password admin123456 admin
#创建管理规则
openstack role create admin
# 将admin规则给admin租户和admin用户添加
openstack role add --project admin --user admin admin
# 创建一个service租户
openstack project create --domain
default
--description
"Service Project"
service
# 创建服务实体和认证服务
openstack service create --name keystone --description
"OpenStack Identity"
identity
# 创建API endpoint
openstack endpoint create --region RegionOne identity
public
http:
//midonet:5000/v3
openstack endpoint create --region RegionOne identity internal http:
//midonet:5000/v3
openstack endpoint create --region RegionOne identity admin http:
//midonet:35357/v3
# 创建midonet租户
openstack service create --description
"MidoNet API Service"
midonet
#创建midonet用户
openstack user create --domain
default
--password midonet123456 midonet
#将midonet添加到admin
openstack role add --project service --user midonet admin
## 配置常用的变量
cat << EOF >> /root/admin-openrc.sh
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=admin123456
export OS_AUTH_URL=http:
//midonet:35357/v3
export OS_IDENTITY_API_VERSION=
3
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
EOF
unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT
. /root/admin-openrc.sh
2.neutron安装
##下载
yum install openstack-neutron python-neutron-plugin-midonet -y --nogpgcheck
#配置neutron网络
##创建neutron用户
openstack user create --domain
default
--password neutron123456 neutron
##添加到admin
openstack role add --project service --user neutron admin
###
openstack service create --name neutron --description
"OpenStack Networking"
network
openstack endpoint create --region RegionOne network
public
http:
//midonet:9696
openstack endpoint create --region RegionOne network internal http:
//midonet:9696
openstack endpoint create --region RegionOne network admin http:
//midonet:9696
#修改# /etc/neutron/neutron.conf文件
[root
@midonet
~]# egrep -B
1
"^[a-z]"
/etc/neutron/neutron.conf
[DEFAULT]
core_plugin = neutron.plugins.midonet.plugin.MidonetPluginV2
auth_strategy= keystone
--
[keystone_authtoken]
auth_uri = http:
//127.0.0.1:35357/v2.0/
identity_uri = http:
//127.0.0.1:5000
admin_tenant_name = service
admin_user = neutron
admin_password = neutron123456
[database]
connection = mysql:
//neutron:neutron123456@midonet/neutron
[service_providers]
service_provider = LOADBALANCER:Midonet:midonet.neutron.services.loadbalancer.driver.MidonetLoadbalancerDriver:
default
ervice_plugins = lbaas
--
[oslo_concurrency]
lock_path = $state_path/lock
#新建midonet.ini文件
mkdir /etc/neutron/plugins/midonet
# /etc/neutron/plugins/midonet/midonet.ini
[DATABASE]
sql_connection = mysql:
//neutron:neutron123456@midonet/neutron
[MIDONET]
# MidoNet API URL
midonet_uri = http:
//midonet:8080/midonet-api
# MidoNet administrative user in Keystone
username = midonet
password = midonet123456
# MidoNet administrative user's tenant
project_id = service
##建立软连接
ln -s /etc/neutron/plugins/midonet/midonet.ini /etc/neutron/plugin.ini
###
su -s /bin/sh -c
"neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/midonet/midonet.ini upgrade kilo"
neutron
##启动neutron
systemctl enable neutron-server.service
systemctl start neutron-server.service
3.安装zookeeper
yum install java-
1.7
.
0
-openjdk -y --nogpgcheck
yum install zookeeper zkdump nmap-ncat -y --nogpgcheck
##修改/etc/zookeeper/zoo.cfg文件
[root
@midonet
~]# grep -C
2
"server"
/etc/zookeeper/zoo.cfg
# The number of milliseconds of each tick
server.
1
=midonet:
2888
:
3888
tickTime=
2000
# The number of ticks that the initial
##启动zookeeper
mkdir /var/lib/zookeeper/data
chown zookeeper:zookeeper /var/lib/zookeeper/data
echo
1
> /var/lib/zookeeper/data/myid
mkdir -p /usr/java/
default
/bin/
ln -s /usr/lib/jvm/jre-
1.7
.
0
-openjdk/bin/java /usr/java/
default
/bin/java
systemctl enable zookeeper.service
systemctl start zookeeper.service
##测试
[root
@midonet
~]# echo ruok | nc
127.0
.
0.1
2181
imok
[root
@midonet
~]# echo stat | nc
127.0
.
0.1
2181
Zookeeper version:
3.4
.
5
--
1
, built on
02
/
08
/
2013
12
:
25
GMT
Clients:
/
127.0
.
0.1
:
59460
[
0
](queued=
0
,recved=
1
,sent=
0
)
Latency min/avg/max:
0
/
0
/
0
Received:
2
Sent:
1
Connections:
1
Outstanding:
0
Zxid:
0x0
Mode: standalone
Node count:
4
4.安装cassandra
yum install dsc20 --nogpgcheck
#修改文件 /etc/cassandra/conf/cassandra.yaml
# The name of the cluster.
cluster_name:
'midonet'
# Addresses of hosts that are deemed contact points.
seed_provider:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
- seeds:
"midonet"
# Address to bind to and tell other Cassandra nodes to connect to.
listen_address:
10.211
.
55.5
# The address to bind the Thrift RPC service.
rpc_address: midonet
##修改/etc/init.d/cassandra
case
"$1"
in
start)
# Cassandra startup
echo -n
"Starting Cassandra: "
mkdir -p /var/run/cassandra
chown cassandra:cassandra /var/run/cassandra
su $CASSANDRA_OWNR -c
"$CASSANDRA_PROG -p $pid_file"
> $log_file
2
>&
1
retval=$?
###启动cassandra
systemctl enable cassandra.service
systemctl start cassandra.service
##验证
nodetool -host
127.0
.
0.1
status
Datacenter: datacenter1
=======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN
10.211
.
55.5
113.82
KB
256
100.0
% 748d0d83-84ea-4b1a-b7a0-3c4f8c3270cd rack1
6.MidoNet API安装
yum install midonet-api -y
#修改/usr/share/midonet-api/WEB-INF/web.xml
<context-param>
<param-name>rest_api-base_uri</param-name>
<param-value>http:
//midonet:8080/midonet-api</param-value>
</context-param>
<context-param>
<param-name>keystone-service_host</param-name>
<param-value>midonet</param-value>
</context-param>
<context-param>
<param-name>keystone-admin_token</param-name>
<param-value>6faca30b15bec6ffb8f8</param-value>
</context-param>
<context-param>
<param-name>zookeeper-zookeeper_hosts</param-name>
<!-- comma separated list of Zookeeper nodes(host:port) -->
<param-value>midonet:
2181
</param-value>
</context-param>
<context-param>
<param-name>midocluster-properties_file</param-name>
<!--
default
for
ubuntu systems with tomcat7 -->
<param-value>/var/lib/tomcat/webapps/host_uuid.properties</param-value>
</context-param>
##安装tomcat
yum install tomcat -y --nogpgcheck
##修改/etc/tomcat/server.xml
<Connector port=
"8080"
protocol=
"HTTP/1.1"
connectionTimeout=
"20000"
URIEncoding=
"UTF-8"
redirectPort=
"8443"
maxHttpHeaderSize=
"65536"
/>
##创建/etc/tomcat/Catalina/localhost/midonet-api.xml
<Context
path=
"/midonet-api"
docBase=
"/usr/share/midonet-api"
antiResourceLocking=
"false"
privileged=
"true"
/>
##启动tomcat
systemctl enable tomcat.service
systemctl start tomcat.service
7.MidoNet CLI
yum install python-midonetclient -y
##创建文件 ~/.midonetrc
[cli]
api_url = http:
//midonet:8080/midonet-api
username = admin
password = admin123456
project_id = admin
8.Midolman
yum install midolman -y
##修改/etc/midolman/midolman.conf
[zookeeper]
zookeeper_hosts = midonet:
2181
##
cat << EOF | mn-conf set -t
default
zookeeper {
zookeeper_hosts =
"midonet:2181"
}
cassandra {
servers =
"midonet"
}
EOF
##
echo
"cassandra.replication_factor : 1"
| mn-conf set -t
default
# 修改midolman.service 文件增加文件描述符数量
sed -i
'/\[Service\]/a\LimitNOFILE=60000'
/usr/lib/systemd/system/midolman.service
# 启动服务
systemctl start midolman
##启动midonet-cli
[root
@midonet
~]# midonet-cli
midonet>
###初始化网络
MidoNet 安装(Kilo RDO)(最老版)的更多相关文章
- 在同一个硬盘上安装多个 Linux 发行版及 Fedora 21 、Fedora 22 初体验
在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个 ...
- (36)老版和新版API调用
---------更新时间18:06 2016-09-18 星期日------- *前言 我用的是odoo8,但里面有相当多的api是以前版本,这时若我们自己开发的 插件采用新版本api,里面 ...
- 使用Qpython3制作老版天翼飞TP路由器拨号脚本
#幻境拨号python版 #by 1414641776 account='xxxxxx@96301' password='xxxxx' # 路由器脚本 def sendToRoute(account, ...
- win7 安装SQL Server 2005 开发版 图文教程
转自win7 安装SQL Server 2005 开发版 图文教程 ----------------------------写在安装前------------------------------ 一. ...
- [Linux 小技巧] Ubuntu 14.04 下编译、安装、配置最新开发版 GoldenDict
1. 背景介绍 GoldenDict 是一款非常优秀的跨平台电子词典软件,支持 StarDict.Babylon 等多种词典.其 PC 版基于 Qt 编写,完全免费.开源且没有广告.GoldenDic ...
- CSS3弹性盒模型新版和老版写法差异
1.在使用弹性盒模型的时候父元素必须要加display:box 或 display:inline-box: 新版弹性盒模型:flex:display : flex 老版弹性盒模型:box : disp ...
- Linux 桌面玩家指南:11. 在同一个硬盘上安装多个 Linux 发行版以及为 Linux 安装 Nvidia 显卡驱动
特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...
- TP-Shop安装步骤教程(Windows版)
TP-Shop安装步骤教程(Windows版) PS:首次发文,请多指教! 一.安装要求 1.PHP5.4以上,MYsql5.5以上. 2.需要Phpcurl,gd库.php_mysqli,php_o ...
- phpStudy模式下安装ssl证书,详细版
phpStudy模式下安装ssl证书,详细版 2017年12月16日 14:27:38 骑着蚂蚁追大象 阅读数:4232 标签: phpstudy安装ssl证书 更多 个人分类: php 版权声明 ...
随机推荐
- C中指针符*和取址符&
学习了C语言之后,关于指针部分看了无数遍,有时候明明觉得自己看懂了,指针就是地址,但是总是在看代码时候糊里糊涂的搞不明白,最近又关于指针强化了一把. 大部分情况下对于程序中指针糊涂是因为不明白指针符“ ...
- PAT A1130 Infix Expression (25 分)——中序遍历
Given a syntax tree (binary), you are supposed to output the corresponding infix expression, with pa ...
- PAT A1034 Head of a Gang (30 分)——图遍历DFS,字符串和数字的对应保存
One way that the police finds the head of a gang is to check people's phone calls. If there is a pho ...
- Java 中数组的内存分配
Java 中数组的内存分配 1.Java 程序在运行时,需要在内存中分配空间.为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据和内存管理方式. 2.数组基本概念 数组是 ...
- 【Codeforces Round 1137】Codeforces #545 (Div. 1)
Codeforces Round 1137 这场比赛做了\(A\).\(B\),排名\(376\). 主要是\(A\)题做的时间又长又交了两次\(wa4\)的. 这两次错误的提交是因为我第一开始想的求 ...
- 【Codeforces 113B】Petr#
Codeforces 113 B 题意:有一个母串\(S\)以及两个串\(S_{begin}\)和\(S_{end}\),问\(S\)中以\(S_{begin}\)为开头并且以\(S_{end}\)为 ...
- android 3.0+百度地图api地图如何移动到指定的经纬度处
由于百度地图api,2.0+和3.0+的改动比较大,api基本上被全换过了,有些同学可能2.0+的api使用的非常熟悉,但是更新到3.0+时,却会遇到一些小麻烦(由于api变了,你就需要重新学习它的a ...
- hadoop_spark伪分布式实验环境搭建和运行实例详细教程
hadoop+spark伪分布式环境搭建 安装须知 单机模式(standalone): 该模式是Hadoop的默认模式.这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统 ...
- GitFlow原理浅析
一.Git优点 分布式存储 , 本地仓库包含了远程仓库的所有内容 . 安全性高 , 远程仓库文件丢失了也不怕 优秀的分支模型 , 创建/合并分支非常的方便 方便快速 , 由于代码本地都有存储 , 所以 ...
- slurm.conf系统初始配置
#slurm集群配置 ##集群名称 ClusterName=myslurm ##主控制器的主机名 ControlMachine=node11 ##主控制器的IP地址 ControlAddr=192.1 ...