OpenStack之Train版本部署---基本环境篇 (:=)

关于部署的环境说明

版本

本次部署使用OpenStack 1910的Train版本
在这里插入图片描述

环境

本次部署流程是基于测试环境部署的,实机部署可能会有所偏差,请参照生产环境自行检查。

先使用vmware workstation创建3台虚拟机(根据架构图应该是4台 但是宿主机资源有限,将存储节点和网络节点合并)

虚拟机配置

所有虚拟机 均使用以下配置 (宿主机至少拥有24g内存和6核心的英特尔处理器或者6核的AMD 4代ryzen以上)开启处理器虚拟化

控制节点ct:

处理器2核2线程实际上在宿主机应该是2核4线程,因为vm设置的虚拟机线程是每个核心的线程数
内存/存储8G300g+300g设置多个硬盘文件,不会立即分配所有空间
网卡net:20.0.0.20(模拟公网,面向用户)vm1:192.168.100.10 (模拟局域网,面向内部服务)
操作系统Centos7.6-1810最小化安装(模拟生产环境)

如下:
在这里插入图片描述

其他节点只需修改地址即可
c1:
ens33:20.0.0.21
ens37:192.168.100.11
c2:
ens33:20.0.0.22
ens37:192.168.100.12

部署流程

  1. 为所有主机配置网卡+运行环境
  2. 为所有主机配置基础服务(rabbitmq、mariadb、memcache、Apache)
  3. 部署keystone组件
  4. 部署Glance组件
  5. 部署placement组件
  6. 部署Nova组件
  7. 部署Neutron组件
  8. 部署dashboard组件
  9. 部署Cinder组件

过程太长博主会分篇介绍,本次只是基本环境部署

部署开始

先修改网卡配置

vi /etc/sysconfig/network-scripts/ifcfg-ens33 #配置nat网卡
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
IPV4_ROUTE_METRIC=90 #设置网卡的优先级,方便从公网获取yum源
DEFROUTE=yes
IPADDR=20.0.0.20
NETMASK=255.255.255.0
GATEWAY=20.0.0.2
DNS=20.0.0.2
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=0451dc22-a548-4ecc-b092-6eb6271ac782
DEVICE=ens33
ONBOOT=yes
保存退出
vi /etc/sysconfig/network-scripts/ifcfg-ens37 #配置vm1网卡 方便组件之间互相访问
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
#GATEWAY=192.168.100.2 #注销网关
DNS=192.168.100.2
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens37
DEVICE=ens37
ONBOOT=yes
保存退出
systemctl restart network

使用yum安装部署组件需要的依赖环境

yum updatte
yum clean all
yum -y install net-tools bash-completion vim gcc gcc-c++ make pcre  pcre-devel expat-devel cmake  bzip2
yum updatte
yum clean all
yum -y install centos-release-openstack-train python-openstackclient openstack-selinux openstack-utils

添加一些配置时需要做的准备

添加hosts本地映射记录
vi /etc/hosts #后续配置时只需指定制主机名即可
192.168.100.10 ct
192.168.100.11 c1
192.168.100.12 c2
保存退出
关闭防火墙 核心防护 iptables策略 #防止组件访问被拦截
systemctl stop firewalld
setenforce 0
iptables -F
vim /etc/resolv.conf #优化dns节点
nameserver 114.114.114.114 

配置三个节点之间的免交互

ssh-keygen -t rsa	#一路回车 然后输入密码
ssh-copy-id ct
ssh-copy-id c1
ssh-copy-id c2
ssh c1 #测试一下连接

配置时间同步服务

yum -y install chrony
vim /etc/chrony.conf
#server 0.centos.pool.ntp.org iburst #上面这几条注释掉
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 203.107.6.88 iburst #这条是添加的
保存退出
systemctl enable chronyd
systemctl restart chronyd
chronyc sources #显示同步状态
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample
crontab -e #创建一个时间同步的任务计划
*/2 * * * * /usr/bin/chronyc sources >> /var/log/chronyc.log
保存退出
crontab -l
*/2 * * * * /usr/bin/chronyc sources >> /var/log/chronyc.log

配置***控制节点***

基础服务组件(如:数据库和消息代理)

yum -y install mariadb mariadb-server python2-PyMySQL #安装组件需要的数据库服务和mysql对接工具
yum -y install libibverbs 
vim /etc/my.cnf.d/openstack.cnf
[mysqld]
bind-address = 192.168.100.10 #本机地址
default-storage-engine = innodb #数据库类型
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8 #默认字符集
保存退出
systemctl enable mariadb
systemctl start mariadb
mysql_secure_installation
yum -y install rabbitmq-server #安装消息代理服务
systemctl enable rabbitmq-server.service
systemctl start rabbitmq-server.service
rabbitmqctl add_user openstack RABBIT_PASS #创建用户
rabbitmqctl set_permissions openstack ".*" ".*" ".*" #授予数据库权限
rabbitmq-plugins list
rabbitmq-plugins enable
rabbitmq-plugins enable rabbitmq_management
ss -natp | grep 5672

访问rabbitmq控制台
http://192.168.100.10:15672
默认用户名密码都是:guest
在这里插入图片描述

安装数据库链接组件

yum install -y memcached python-memcached
vi /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1,::1,ct"
保存退出
systemctl enable memcached
systemctl start memcached
netstat -nautp | grep 11211
tcp        0      0 192.168.100.10:11211    0.0.0.0:*               LISTEN      81524/memcached     
tcp        0      0 127.0.0.1:11211         0.0.0.0:*               LISTEN      81524/memcached     
tcp6       0      0 ::1:11211               :::*                    LISTEN      81524/memcached     

yum -y install etcd
cd /etc/etcd/
vim etcd.conf
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
ETCD_LISTEN_PEER_URLS="http://192.168.100.11:2380"
ETCD_LISTEN_CLIENT_URLS="http://192.168.100.11:2379"	
ETCD_NAME="ct"	
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://192.168.100.11:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://192.168.100.11:2379
ETCD_INITIAL_CLUSTER="ct=http://192.168.100.11:2380"	
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"		#集群名
ETCD_INITIAL_CLUSTER_STATE="new"   #初始集群状态
保存退出
systemctl enable etcd.service
systemctl start etcd.service
netstat -anutp |grep 2379
tcp        0      0 192.168.100.10:2379     0.0.0.0:*               LISTEN      81792/etcd          
tcp        0      0 192.168.100.10:2379     192.168.100.10:47028    ESTABLISHED 81792/etcd          
tcp        0      0 192.168.100.10:47028    192.168.100.10:2379     ESTABLISHED 81792/etcd

netstat -anutp |grep 2380
tcp        0      0 192.168.100.10:2380     0.0.0.0:*               LISTEN      81792/etcd        

部署完成
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OpenStack TrainOpenStack项目的第17个版本,下面是OpenStack Train部署方法: 1. 安装Ubuntu 18.04操作系统。 2. 更新系统并安装必要的软件包: ``` sudo apt update sudo apt upgrade sudo apt install python3-dev python3-venv libffi-dev gcc libssl-dev git ``` 3. 创建OpenStack Train虚拟环境: ``` sudo python3 -m venv /opt/venvs/openstack ``` 4. 激活虚拟环境: ``` source /opt/venvs/openstack/bin/activate ``` 5. 安装OpenStack Train: ``` sudo -H pip install -U pip sudo -H pip install 'openstacksdk<0.9999' 'osc-placement<1.0.0' python-openstackclient ``` 6. 配置OpenStack Train: ``` sudo mkdir -p /etc/openstack sudo chown $USER:$USER /etc/openstack ``` 7. 创建OpenStack Train配置文件: ``` nano /etc/openstack/clouds.yaml ``` 在文件中添加以下内容: ``` clouds: myopenstack: auth: auth_url: http://controller:5000/v3 project_name: service username: placement password: PLACEMENT_PASS region_name: RegionOne interface: public identity_api_version: 3 ``` 8. 配置OpenStack Train环境变量: ``` export OS_CLOUD=myopenstack ``` 9. 部署OpenStack Train: ``` sudo openstack host create controller sudo openstack host create compute1 sudo openstack host create compute2 sudo openstack flavor create --id 1 --ram 512 --disk 1 --vcpus 1 m1.tiny sudo openstack image create --disk-format qcow2 --file cirros-0.5.1-x86_64-disk.img cirros sudo openstack network create internal sudo openstack subnet create --subnet-range 10.0.0.0/24 --network internal internal_subnet sudo openstack router create router sudo openstack router add subnet router internal_subnet sudo openstack router set --external-gateway public router ``` 以上是OpenStack Train部署方法,具体操作可以参考OpenStack Train官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值