OpenStack-基础环境

1、实验描述

通过搭建 OpenStackocata 版,来学习虚拟化技术

2、实验环境

【你可能需要】【CentOS 7 搭建模板机】点我快速打开文章

【你可能需要】【VMware 从模板机快速克隆多台】点我快速打开文章

【你可能需要】【CentOS 7 命令行显示优化】点我快速打开文章

【你可看需要】【CentOS 7 配置yum源】点我快速打开文章

虚拟机:

  • 系统:CenOS 7.6
  • 内存:4G+
  • 数量:2台
  • 硬盘:50G+

物理机:Windows 10

3、实验工具

【OpenStack】【013-OpenStack】点我快速打开分享(若异常,请私信,万分感谢) 【提取码:sgux 】

4、实验步骤

【官方文档】点我快速打开文章

4.1 修改主机名、IP地址与hosts文件

4.1.1 控制节点(controller)

1. 主机名
hostnamectl set-hostname controller

2. IP地址
ifconfig eth0|awk 'NR==2{print $2}'

IP=$(ifconfig eth0|awk 'NR==2{print $2}')

sed -i "s#$IP#10.0.0.11#g" /etc/sysconfig/network-scripts/ifcfg-eth0

grep 10.0.0.11 /etc/sysconfig/network-scripts/ifcfg-eth0

3. host文件
cat >>/etc/hosts <<EOF
# controller
10.0.0.11 controller
# compute1
10.0.0.31 compute1
EOF

tail /etc/hosts

systemctl restart network

若增加节点以下可参考

# block1
10.0.0.41 block1
# object1
10.0.0.51 object1
# object2
10.0.0.52 object2
4. 重连验证
ssh root@10.0.0.11

hostname

ifconfig eth0|awk 'NR==2{print $2}'

tail /etc/hosts

4.1.2 计算节点(compute1)

1. 主机名
hostnamectl set-hostname compute1

2. IP地址
ifconfig eth0|awk 'NR==2{print $2}'

IP=$(ifconfig eth0|awk 'NR==2{print $2}')

sed -i "s#$IP#10.0.0.31#g" /etc/sysconfig/network-scripts/ifcfg-eth0

grep 10.0.0.31 /etc/sysconfig/network-scripts/ifcfg-eth0

3. host文件
cat >>/etc/hosts <<EOF
# controller
10.0.0.11 controller
# compute1
10.0.0.31 compute1
EOF

tail /etc/hosts

systemctl restart network

若增加节点以下可参考

# block1
10.0.0.41 block1
# object1
10.0.0.51 object1
# object2
10.0.0.52 object2
4. 重连验证
ssh root@10.0.0.31

hostname

ifconfig eth0|awk 'NR==2{print $2}'

tail /etc/hosts

4.2 网络时间协议(NTP)

4.2.1 控制节点(controller)

1. 安装其软件包

【若没有yum源,相关博文】点我快速打开文章CentOS 7 配置yum源

yum install chrony -y &>/dev/null

echo $?

2. 修改配置文件
cp /etc/chrony.conf{,.bak}

sed -i -e '/#allow/a\allow 10.0.0.0/24' /etc/chrony.conf

grep allow /etc/chrony.conf

3. 启动和自启动
systemctl enable chronyd.service

systemctl start chronyd.service

4. 验证是否正常
netstat -lntup|grep chronyd

chronyc sources

4.2.1 计算节点(compute1)

1. 安装其软件包

【若没有yum源,相关博文】点我快速打开文章CentOS 7 配置yum源

yum install chrony -y &>/dev/null

echo $?

2. 修改配置文件
cp /etc/chrony.conf{,.bak}

sed -i 's#ntp5.aliyun.com#10.0.0.11#g' /etc/chrony.conf

grep ^server /etc/chrony.conf

3. 启动和自启动
systemctl enable chronyd.service

systemctl start chronyd.service

4. 验证是否正常
netstat -lntup|grep chronyd

chronyc sources

继续进一步的操作之前验证 NTP 的同步。有些节点,特别是那些引用了控制节点的,需要花费一些时间去同步。再次验证一下。

date

4.3 OpenStack包

4.3.1 所有节点

官方方案

【官方文档】点我快速打开文章,演示略

自我方案
1. 上传其软件包
ls

rz

ls

2. 解压其软件包
tar xf openstack_ocata_rpm.tar.gz -C /opt/

ls /opt/

3. 配置本地repo
mv /etc/yum.repos.d/*repo /tmp

mv /tmp/CentOS-Base.repo /etc/yum.repos.d/

cat >/etc/yum.repos.d/openstack.repo <<EOF
[openstack]
name=openstack
baseurl=file:///opt/repo
enable=1
gpgcheck=0
EOF

yum clean all &>/dev/null

echo $?

4. 安装其软件包
yum install python-openstackclient -y &>/dev/null

echo $?

rpm -qa python-openstackclient

4.4 SQL数据库

4.4.1 控制节点(controller)

1. 安装其软件包
yum install mariadb mariadb-server python2-PyMySQL -y &>/dev/null

echo $?

2. 修改配置文件
cat >/etc/my.cnf.d/openstack.cnf <<EOF
[mysqld]
bind-address = 10.0.0.11

default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
EOF

cat /etc/my.cnf.d/openstack.cnf

3. 启动和自启动
systemctl enable mariadb.service

systemctl start mariadb.service

netstat -lntup|grep mysqld

4. 设安全初始化
mysql_secure_installation

4.5 消息队列

4.5.1 控制节点(controller)

1. 安装其软件包
yum install rabbitmq-server -y &>/dev/null

echo $?

2. 启动和自启动
systemctl start rabbitmq-server.service

systemctl enable rabbitmq-server.service

3. 添加相关用户
rabbitmqctl add_user openstack RABBIT_PASS

用合适的密码替换 RABBIT_DBPASS

4. 修改相关权限
rabbitmqctl set_permissions openstack ".*" ".*" ".*"

4.6 Memcached

4.6.1 控制节点(controller)

1. 安装其软件包
yum install memcached python-memcached -y &>/dev/null

echo $?

2. 修改配置文件
cp /etc/sysconfig/memcached{,.bak}

sed -i 's#127.0.0.1,::1#0.0.0.0#g' /etc/sysconfig/memcached

grep 0.0.0.0 /etc/sysconfig/memcached

3. 启动和自启动
systemctl start memcached

systemctl enable memcached

【后续文章】点我快速打开文章

【本文图片下载地址】【002-OpenStack】点我快速打开分享(若异常,请私信,万分感谢) 【提取码:kse1 】

今天你学习了吗?若有疑问,请留言、私信或加QQ群:647033350,大家一起进步吧!

最新文章

  1. 《Django By Example》第二章 中文 翻译 (个人学习,渣翻)
  2. mysql 创建数据库和表格
  3. ccc 设置图片位置
  4. html如何绑定radio控件和label控件
  5. 戴尔PowerEdge服务器命名规则和型号分类
  6. 未能加载文件或程序集“XXXXXX”或它的某一个依赖项。试图加载格式不正确的程序。
  7. erlang reduction
  8. gulp构建工具的安装
  9. eclipse 必备
  10. PHP CI框架下,如果配置NGINX(根目录和子目录两种模式)
  11. App开发革命进阶路
  12. 日积月累系列之分页控件(js源码)
  13. 为 MariaDB 配置远程访问权限
  14. 2018/1/19 Netty学习笔记(一)
  15. TeamViewer试用期满转免费版本方法
  16. SpringBoot整合Shiro使用Ehcache等缓存无效问题
  17. moogodb 安装及简单介绍
  18. CentOS 6快捷安装RabbitMQ教程
  19. es6之更优雅的条件语句
  20. spark Pair RDD 基础操作

热门文章

  1. easyui三
  2. springmvc+strut2比较
  3. fis3 相关
  4. 43 树莓派安装pytorch
  5. 《计算机网络第7版》PDF+《计算机网络释疑与习题解答第7版》PDF
  6. 数据仓库003 - 复习Linux shell命令 - 用户用户组 sudo 权限 du-sh find 
  7. 【Java语言特性学习之六】扩展知识点
  8. Harbor + Https 部署
  9. c#菜单动态合并 z
  10. 打开IDEA的更新选项,如何打开IDEA更新弹窗