#夏日挑战赛#开源云平台“Openstack” 原创 精华

发布于 2022-7-13 15:59
浏览
4收藏

【本文正在参加星光计划计划3.0–夏日挑战赛】
活动链接:https://ost.51cto.com/posts/13641

1、Openstack介绍

OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合,为私有云和公有云提供可扩展的弹性的云计算服务,由 Rackspace和NASA共同开发的云计算平台,主要负责处理核心云计算服务,包括计算、网络、存储、身份和镜像服务。
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

2、Openstack的核心项目

计算(Compute)
对象存储(Object Storage)
镜像服务(Image Service)
身份服务(Identity Service)
网络&地址管理(Network)
块存储 (Block Storage)
UI 界面 (Dashboard)
测量 (Metering)
部署编排 (Orchestration)
数据库服务(Database Service)

3、基础环境配置

节点名称 CPU 内存 磁盘 操作系统镜像
controlle节点 2VCPU 4GB 50GB CentOS-7-x86_64-Minimal-1804.iso
Compute1节点 2VCPU 4GB 50GB CentOS-7-x86_64-Minimal-1804.iso

Vmware Workstation虚拟机开启虚拟化引擎:
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

4、修改网络

master节点
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
note节点
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

5、安装Keystone服务

①安装keystone服务软件包

yum -y install openstack-keystone httpd mod_wsgi

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

cd /etc/yum.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
yum install python-devel
wget ftp://ftp.pbone.net/mirror/vault.centos.org/7.8./messaging/x86_64/qpid-proton/Packages/q2003/qpid-proton-c-0.28.0-1.el7.x86_64.rpm
wget ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/epel/testing/6.2019-05-29/x86_64/Packages/p/python2-qpid-proton-0.28.0-1.el7.x86_64.rpm
rpm -Uvh --replacepkgs python*.rpm --nodeps --force
yum -y install centos-release-openstack-train

②创建keystone数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③配置数据库连接

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④为keystone服务创建数据表

su -s /bin/sh -c "keystone-manage db_sync" keystone

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤创建令牌

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑥创建签名秘钥和证书

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑦定义用户、租户和角色

cat /etc/keystone/admin-openrc.sh

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

a、创建服务

openstack service create --name keystone --description "OpenStack Identity" identity

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

b、创建认证端点

openstack endpoint create --region RegionOne  identity public http://controller:5000/v3
openstack endpoint create --region RegionOne  identity internal http://controller:5000/v3
openstack endpoint create --region RegionOne  identity admin http://controller:35357/v3

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

c、创建域

openstack domain create --description "Default Domain" default

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

d、创建租户

openstack project create --domain default --description "Admin Project" admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

e、创建用户

openstack user create --domain default --password 000000 admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

f、创建角色

openstack role create admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

g、添加admin角色到admin用户和租户

openstack role add --project admin --user admin admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

h、创建service项目

openstack project create --domain default --description "Service Project" service

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

i、创建demo租户

openstack project create --domain default --description "Demo Project" demo

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

j、创建demo用户

openstack user create --domain default --password 000000 demo

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

k、创建user角色

openstack role create user

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

l、添加user角色到demo租户和用户

openstack role add --project demo --user demo user

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

m、清除环境变量

unset os_TOKEN os_URL

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑧创建admin-openrc.sh

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑨获取token测试

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

6、安装Glance服务

①安装glance镜像服务软件包

yum install -y openstack-glance 

②创建glance数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③配置文件创建数据库连接

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④为镜像服务创建数据库表

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤创建用户

openstack user create --domain default --password 000000 glance

openstack role add --project server --user glance admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑥配置镜像服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑦创建Endpoint和API端点

openstack endpoint create --region RegionOne image public http://controller:9292
openstack endpoint create --region RegionOne image internal http://controller:9292
openstack endpoint create --region RegionOne image admin http://controller:9292

⑧启动服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑨测试上传镜像

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

7、安装Nova服务

①安装nova计算服务软件包

yum install -y openstack-nova-api openstack-nova-conductor openstack-nova-console-nova-novncproxy openstack-nova-scheduler

②创建数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③配置数据库连接

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④同步数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤创建用户

openstack user create --domain default --password 000000 nova
openstack role add --project service --user nova admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑥配置计算服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑦创建Endpoint和API端点

openstack service create --name nova --description "OpenStack Compute" compute
openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1/%\(tenant_id\)s
openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1/%\(tenant_id\)s
openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1/%\(tenant_id\)s

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑧启动服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑨验证nova

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

8、部署计算节点nova服务

①安装nova计算服务软件包

yum -y install openstack-nova-compute

②配置nova服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③启动

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④验证(在控制节点上)

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
##9、安装Neutron服务

①创建neutron数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

②创建用户

openstack user create --domain default --password 000000 neutron
openstack role add --project service --user neutron admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③创建Endpoint和API端点

openstack service create --name neutron --description "OpenStack Networking" network
openstack endpoint create --region RegionOne network public http://controller:9696
openstack endpoint create --region RegionOne network internal http://controller:9696
openstack endpoint create --region RegionOne network admin http://controller:9696

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④安装neutron网络服务软件包

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤配置neutron服务

⑥编辑内核

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑦同步数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑧启动服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
##10、部署计算节点neutron服务

①安装软件包

yum -y install openstack-neutron-linuxbridge ebtables ipset

②配置neutron服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③启动服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④验证(在控制节点上)

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

11、安装Dashboard仪表盘

①安装dashboard服务软件包

yum -y install openstack-dashboard

②配置dashboard服务

(1)修改/etc/openstack-dashboard/local_settings文件
(2)在 controller 节点上配置仪表盘以使用 OpenStack 服务
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(3)允许所有主机访问仪表板
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(4)配置memcached会话存储
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(5)启用第三本认证API
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(6)启用对域的支持
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(7)配置API版本
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(8)修改默认域
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(9)修改默认角色配置
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
(10)禁用三层网络服务
#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③重启HTTP和memcached

systemctl restart httpd memcached

④访问dashboard页面

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

12、创建实例

①准备网络

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

②添加子网

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③准备硬件类型

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④创建实例

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤修改安全规则

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑥通过CRT远程连接实例

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

13、安装Cinder服务

①控制节点部署cinder服务

yum -y install openstack-cinder

②修改权限配置文件

vim /etc/cinder/policy.json

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

③创建数据库

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④创建用户

openstack user create --domain default --password 000000 cinder
openstack role add --project service --user cinder admin

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤创建Endpoint和API端点

openstack service create --name cinder --description "OpenStack Block Storage" volume
openstack service create --name cinderv2 --description "OpenStack Block Storage" volumev2
openstack endpoint create --region RegionOne volume public http://controller:8776/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne volume internal http://controller:8776/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne volume admin http://controller:8776/v1/%\(tenant_id\)s
openstack endpoint create --region RegionOne volumev2 public http://controller:8776/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne volumev2 internal http://controller:8776/v2/%\(tenant_id\)s
openstack endpoint create --region RegionOne volumev2 admin http://controller:8776/v2/%\(tenant_id\)s

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑥配置cinder服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑦同步数据库

su -s /bin/sh -c "cinder-manage db sync" cinder

⑧启动服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

14、计算节点部署cinder服务

①安装块存储软件

yum -y install lvm2 targetcli python-keystone openstack-cinder

②创建LVM物理和逻辑卷

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区
创建物理卷和逻辑卷

③修改cinder配置文件

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

④重启服务

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

⑤验证(在控制节点上)

#夏日挑战赛#开源云平台“Openstack”-开源基础软件社区

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
标签
已于2022-7-13 15:59:49修改
14
收藏 4
回复
举报
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
    相关推荐