001-OpenStack-基础环境
OpenStack-基础环境
1、实验描述
通过搭建
OpenStack的ocata版,来学习虚拟化技术
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,大家一起进步吧!
001-OpenStack-基础环境的更多相关文章
- Openstack基础环境交换机常用配置(CISCO 3750G为例)
NOTE: 用户模式提示符为:cisco> 特权模式提示符为:cisco# 全局配置模式提示符为:cisco(config)# 端口模式提示符为:cisco(config-if)# 基础操作 ...
- openstack基础环境准备(一)
一.环境介绍 操作系统 ip地址 主机名 服务 centos7.5 192.168.56.11 linux-node1 控制节点 centos7.5 192.168.56.12 linux-node2 ...
- 准备openstack基础环境
在所有的openstack节点上执行 1.配置阿里yum源 yum -y install wget rm -rf /etc/yum.repos.d/* wget -O /etc/yum.repos.d ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 2.安装配置OpenStack基础服务
节点配置情况说明: 控制节点:controller: IP:192.168.164.128 hostname&hosts:likeadmin 计算加点:Nova: IP:192.168.164 ...
- openstack kilo部署-基础环境
公司也想搞个私有云玩玩,于是展开了一系列的调研,部署测试,openstack 有几个版本真是坑爹!!,如果喜欢被虐有兄弟,你就试试 openstack 的 juno , icehouse等版本,用不了 ...
- 001-官网安装openstack之-安装前基础环境准备
0.安装常用软件包(根据个人习惯安装需要的软件包) [root@localhost ~]# yum -y install wget vim ntp net-tools tree openssh 1.配 ...
- 完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)--基础环境搭建
公司在IDC机房有两台很高配置的服务器,计划在上面部署openstack云平台虚拟化环境,用于承载后期开发测试和其他的一些对内业务.以下对openstack的部署过程及其使用做一详细介绍,仅仅依据本人 ...
- OpenStack实践系列①openstack简介及基础环境部署
OpenStack实践系列①openstack简介及基础环境部署 一.OpenStack初探1.1 OpenStack简介 OpenStack是一整套开源软件项目的综合,它允许企业或服务提供者建立.运 ...
- openstack(pike 版)集群部署(一)----基础环境部署
一.环境 1.系统: a.CentOS Linux release 7.4.1708 (Core) b.更新yum源和安装常用软件 # yum -y install epel-release ba ...
- Centos 7 搭建OpenStack 私有云——(1)基础环境配置
1.简介: OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个开源的云计算管理 ...
随机推荐
- Rust多线程中的消息传递机制
代码说话. use std::thread; use std::sync::mpsc; use std::time::Duration; fn main() { let (tx, rx) = mpsc ...
- python 给多人发送邮件,且将结果添加为附件
import unittest,HTMLTestRunnerimport osdef runa(): path=os.getcwd() print(path) a=unittest.defaultTe ...
- python如何实现元素等待
一.为什么要元素等待? 在UI自动化过程中,元素的出现受网络环境.设备性能等多种元素影响.因此,元素加载和脚本运行到该元素的时间不一致,会报错:元素无法定位. 简单举下例子:实际UI自动化测试中,点击 ...
- postgres 计算时差
计算时间差秒数 select extract(epoch FROM (now() - (now()-interval '1 day') ));
- 8.Go-Reader,Writer和ioutil
8.1.Reader (1)输入流 流是应用程序和外部资源进行数据交互的纽带 流分为输入流和输出流,输入和输出都是相对于程序,把外部数据传入程序中叫做输入流,反之叫做输出流 在Go语言标准库中io包下 ...
- Luogu P5416 [CTSC2016]时空旅行
第一次写线段树分治的题目,没想到是道这么毒的题233 首先发现题目里的\((x,y,z,c)\)就是在放屁,只有\((x,c)\)是有用的 因此我们可以把题意转化为,在某一个时间节点上,求出所有元素的 ...
- [日常] NOI2019 退役记
这次要彻底退役了 开个坑先 Day -2 出发坐车去gz 好像和上次去雅礼的车是同一趟于是大家都以为和上次一样是 \(10:40\) 开车, 于是提前2h大概八点多就去坐公交了 到了之后取票, 发现票 ...
- django 使用HttpResponse返回json数据为中文
之前我用django一般用JsonResponse来返回json数据格式 但是发现返回中文的时候会乱码 from django.http import JsonResponse def test(re ...
- CSS3 clip裁剪动画
CSS3 clip裁剪动画 下面是比较简单的例子 <pre><html><head><style type="text/css">i ...
- TP5 使用验证码功能
工作中后台开发使用的是 TP5,但是对语法不是很熟悉,总是看着手册写代码.当时做 Java 的时候也是这样,很多语法需要靠百度.不是不能写代码,但是这样的效率感觉不高,没有行云流水的感觉,要是能有聊天 ...