一、OpenStack安装

安装一个初始化的Mitaka版本的OpenStack环境用于分析,neutron源码

序号 角色 IP地址 版本
1 controller 172.16.15.161 mitaka
2 compute01 172.16.15.162 mitaka
3 compute02 172.16.15.163 mitaka

开始安装吧

# 所有节点全部执行

使用本次安装教程,会安装ceilometer+gnocchi集成、heat、FWAAS、VPNAAS、LBAASv1等

# 所有节点全部执行
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*repo /etc/yum.repos.d/bak
cat >> /etc/yum.repos.d/openstack-mitaka.repo << EOF
[base]
name=CentOS-$releasever - Base
baseurl=http://172.20.2.44/base enabled=1
gpgcheck=0 [mitaka]
name=mitaka
baseurl=http://172.20.2.44/openstack-mitaka enabled=1
gpgcheck=0 [epel]
name=epel
baseurl=http://172.20.2.44/epel enabled=1
gpgcheck=0
EOF yum clean all
yum install python-cheetah python-gnocchi python-nova libvirt libvirt-devel libvirt-client -y

# 控制节点执行

# 控制节点执行
yum install -y openstack-packstack
packstack --gen-answer-file=openstack.txt # 这里第一行修改compute节点对应的IP地址,这里测试compute节点IP地址是172.16.15.162,172.16.15.163,IP地址之间用逗号(,)隔开
sed -i \
-e 's@CONFIG_COMPUTE_HOSTS=.*@CONFIG_COMPUTE_HOSTS=172.16.15.162,172.16.15.163@g' \
-e 's@CONFIG_CEILOMETER_METERING_BACKEND=.*@CONFIG_CEILOMETER_METERING_BACKEND=gnocchi@g' \
-e 's@CONFIG_NAGIOS_INSTALL=.*@CONFIG_NAGIOS_INSTALL=n@g' \
-e 's@CONFIG_SWIFT_INSTALL=.*@CONFIG_SWIFT_INSTALL=n@g' \
-e 's@CONFIG_HEAT_INSTALL=.*@CONFIG_HEAT_INSTALL=y@g' \
-e 's@CONFIG_HEAT_CLOUDWATCH_INSTALL=.*@CONFIG_HEAT_CLOUDWATCH_INSTALL=y@g' \
-e 's@CONFIG_HEAT_CFN_INSTALL=.*@CONFIG_HEAT_CFN_INSTALL=y@g' \
-e 's@CONFIG_NEUTRON_FWAAS=.*@CONFIG_NEUTRON_FWAAS=y@g' \
-e 's@CONFIG_NEUTRON_VPNAAS=.*@CONFIG_NEUTRON_VPNAAS=y@g' \
-e 's@CONFIG_LBAAS_INSTALL=.*@CONFIG_LBAAS_INSTALL=y@g' \
-e 's@CONFIG_MARIADB_PW=.*@CONFIG_MARIADB_PW=root1234@g' \
-e 's@CONFIG_KEYSTONE_ADMIN_PW=.*@CONFIG_KEYSTONE_ADMIN_PW=admin@g' \
-e 's@CONFIG_KEYSTONE_API_VERSION=.*@CONFIG_KEYSTONE_API_VERSION=v3@g' openstack.txt

# 在控制节点上执行

# 控制节点执行
packstack --answer-file=openstack.txt # 安装过程会修改yum源。这里需要执行如下指令,修改过来
sed -i 's@enabled=.*@enabled=1@g' /etc/yum.repos.d/openstack-mitaka.repo # 漫长的等待之后,如果不报错,进行下面操作 sed -i \
-e 's@type_drivers =.*@type_drivers = flat,vxlan@g' \
-e 's@#flat_networks =.*@flat_networks = *@g' /etc/neutron/plugins/ml2/ml2_conf.ini openstack-service disable ceilometer
openstack-service stop ceilometer

  

# 在计算节点上修改

# 在计算节点1上执行ssh互信
sed -i \
-e 's@nova.*@nova:x:162:162:OpenStack Nova Daemons:/var/lib/nova:/bin/bash@g' /etc/passwd echo nova | passwd --stdin nova su - nova ssh-keygen -t rsa -f ~/.ssh/id_rsa -P '' ssh-copy-id -i .ssh/id_rsa.pub nova@172.16.15.163 # 在计算节点2上执行ssh互信
sed -i \
-e 's@nova.*@nova:x:162:162:OpenStack Nova Daemons:/var/lib/nova:/bin/bash@g' /etc/passwd # 修改成自己的计算节点IP地址 echo nova | passwd --stdin nova su - nova ssh-keygen -t rsa -f ~/.ssh/id_rsa -P '' ssh-copy-id -i .ssh/id_rsa.pub nova@172.16.15.162

  

# 在控制节点上加上共享存储吧

# 分区
fdisk /dev/vdc <<EOF
n
p
1 w
EOF # 格式化
mkfs.xfs /dev/vdc1 # 挂载
mount /dev/vdc1 /opt/nova/instances/ # NFS共享
yum -y install nfs-utils rpcbind -y mkdir -p /opt/nova/instances
echo "/opt/nova/instances 172.16.0.0/16(rw,no_root_squash,no_all_squash,sync)" > /etc/exports
exportfs -r
chmod -R 777 /opt/nova/instances/
systemctl enable rpcbind.service
systemctl start rpcbind.service
systemctl enable nfs-server.service
systemctl start nfs-server.service

  

# 在计算节点上用NFS共享吧

showmount -e 172.16.15.161
mount -t nfs 172.16.15.161:/opt/nova/instances /var/lib/nova/instances/
chown -R nova.nova /var/lib/nova

  

neutron源码分析(一)OpenStack环境搭建的更多相关文章

  1. Dubbo 源码分析系列之一环境搭建

    环境搭建的步骤有哪些 依赖外部的环境 使用的开发工具 源码的拉取 结构大致介绍 1 依赖的外部环境 安装JDK 安装Git 安装maven 这边我们就不介绍怎么安装这些外部环境了,大家自行从安装这些外 ...

  2. mybatis源码分析之01环境搭建

    直接使用maven搭建一个mybatis的运行环境 1. pom.xml <?xml version="1.0" encoding="UTF-8"?> ...

  3. [ethereum源码分析](1) dubug环境搭建

    前言 因为最近云小哥哥换了一份工作,新公司比较忙,所以一直没有更新新的博客.云小哥哥新的公司是做区块链的,最近在学习区块链相关的东西(也算是乘坐上了区块链这艘大船).本博客是记录我搭建ethereum ...

  4. JDK1.8源码分析03之idea搭建源码阅读环境

    序言:上一节说了阅读源码的顺序,有了一个大体的方向,咱们就知道该如何下手.接下来,就要搭建一个方便阅读源码及debug的环境.有助于跟踪源码的调用情况. 目前新开发的项目, 大多数都是基于JDK1.8 ...

  5. OpenStack源码分析 Neutron源码分析(一)-----------Restful API篇

    原文:https://blog.csdn.net/happyanger6/article/details/54586463 首先,先分析WSGI应用的实现. 由前面的文章http://blog.csd ...

  6. DolphinScheduler1.3.2源码分析(二)搭建源码环境以及启动项目

    前置依赖组件安装 找一台服务器,或者本地的虚拟机,然后在服务器上安装好jdk,zookeeper,mysql. 1.源码调试环境搭建 源码环境搭建可以参考DolphinScheduler官方网站的开发 ...

  7. 《k8s-1.13版本源码分析》-测试环境搭建(k8s-1.13版本单节点环境搭建)

    本文原始地址(gitbook格式):https://farmer-hutao.github.io/k8s-source-code-analysis/prepare/debug-environment. ...

  8. openwrt(一):openwrt源码下载及编译环境搭建

    声明:从网上各位大神的博客学习,整理后记录,非原创. 注:请用非root用户来下载源码 导航: 1. openwrt编译环境搭建 2. openwrt源码下载 3. feeds更新 1. openwr ...

  9. spring源码学习之路---环境搭建(一)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 最近已经开始了spring源 ...

随机推荐

  1. SuperObject使用

    SuperObject SuperObject第三方控件包,试用了下并编写了个DEMO,发现还是蛮强大.废话 少说,看看下面的代码就知道其强大: 1.JSON原始数据 {   "name&q ...

  2. (C++) Assertion failed: !"Bad error code", file VMem.c, line 715

    (C++) Assertion failed: !"Bad error code", file VMem.c, line 715 Misc error. myInterface F ...

  3. 卷积网络训练太慢?Yann LeCun:已解决CIFAR-10,目标 ImageNet

    原文连接:http://blog.kaggle.com/2014/12/22/convolutional-nets-and-cifar-10-an-interview-with-yan-lecun/ ...

  4. 对java NIO 通道的一些了解

    @引言 reactor(反应器)模式 使用单线程模拟多线程,提高资源利用率和程序的效率,增加系统吞吐量.下面例子比较形象的说明了什么是反应器模式: 一个老板经营一个饭店, 传统模式 - 来一个客人安排 ...

  5. python3_json模块使用与字符编码问题

    序列化:将对象的状态信息转换为可以存储或可以通过网络传输的过程,传输的格式可以是json,xml. 反序列化:就是从存储区域(json,xml)读取反序列化对象的状态,重新创建该对象 Json:一种轻 ...

  6. :Linux 系统日志管理 日志转储

    Linux日志服务器设置 使用“@IP:端口”或“@@IP:端口”的格式可以把日志发送到远程主机上. 假设需要管理几十台服务器,每天的重要工作就是查看这些服务器的日志,可是每台服务器单独登录,并且查看 ...

  7. PCLK怎么获得?

    1.PCLK是由MCLK进行分频而来...... 2.PCLK是个时钟,通过寄存器只能调节它的频率什么的,它是控制像素输出的一个时钟: 3.在曝光时间的算法中需要知道PCLK的值,是因为在sensor ...

  8. Django学习笔记之URL标签的使用

    期初用django 开发应用的时候,完全是在urls.py 中硬编码配置地址,在views.py中HttpResponseRedirect()也是硬编码转向地址,当然在template 中也是一样了, ...

  9. MVC中使用分部视图参数,改变分部视图连接样式

    MVC中使用分部视图参数,改变分部视图连接样式! Controller代码 [ChildActionOnly] public ActionResult Navigator(int tag) { ret ...

  10. 照着官网来安装openstack pike之neutron安装

    neutron组件安装分为控制节点和计算节点,还是先从控制节点安装 1.前提条件,数据库为nova创建库和账户密码来连接数据库 # mysql -u root -p MariaDB [(none)]& ...