科技颠覆者 发表于 2025-2-13 01:16:42

OpenEuler学习笔记(十二):OpenEuler 搭建云计算环境

‌云计算‌是干什么的?

云计算是一种基于互联网的服务模式,通过网络提供数据存储、数据处理和各种应用程序的功能‌。用户无需将数据存储在本地计算机上,而是通过网络随时随地访问所需的信息和服务。云计算通过远程服务器为用户提供数据存储、数据访问和大数据计算等功能,用户可以通过互联网毗连远程访问这些资源,无需购买、维护和运行物理服务器或数据中心。‌
https://i-blog.csdnimg.cn/direct/037463a621244bfa935b0c30f7b764cc.png
在 OpenEuler 上搭建云计算环境可以借助开源云计算管理平台 OpenStack 来实现,以下是详细的搭建步骤:
1. 环境准备

系统更新

包管系统软件包为最新状态:
sudo dnf update -y
关闭防火墙和 SELinux

为避免其对 OpenStack 组件通信造成干扰,需关闭防火墙和 SELinux:
sudo systemctl stop firewalld
sudo systemctl disable firewalld
sudo setenforce 0
sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config
2. 安装依赖软件

安装 OpenStack 安装和设置所需的依赖包:
sudo dnf install python3-openstackclient openstack-selinux -y
3. 设置数据库

OpenStack 需利用数据库存储设置信息,这里以 MariaDB 为例:
sudo dnf install mariadb mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation
创建 OpenStack 数据库设置文件 /etc/my.cnf.d/openstack.cnf:

bind-address = 0.0.0.0
default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
重启 MariaDB 服务:
sudo systemctl restart mariadb
4. 设置消息队列

OpenStack 组件借助消息队列进行通信,利用 RabbitMQ:
sudo dnf install rabbitmq-server -y
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
sudo rabbitmqctl add_user openstack password# 创建用户
sudo rabbitmqctl set_permissions openstack ".*" ".*" ".*"# 设置权限
5. 安装和设置 Keystone(身份认证服务)

创建 Keystone 数据库:
sudo mysql -u root -p
CREATE DATABASE keystone;
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
安装 Keystone 服务:
sudo dnf install openstack-keystone httpd mod_wsgi -y
编辑 /etc/keystone/keystone.conf 设置文件:

connection = mysql+pymysql://keystone:password@controller/keystone


provider = fernet
同步 Keystone 数据库:
sudo su -s /bin/sh -c "keystone-manage db_sync" keystone
初始化 Fernet 密钥:
sudo keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
sudo keystone-manage credential_setup --keystone-user keystone --keystone-group keystone
引导 Keystone 服务:
sudo keystone-manage bootstrap --bootstrap-password password \
--bootstrap-admin-url http://controller:5000/v3/ \
--bootstrap-internal-url http://controller:5000/v3/ \
--bootstrap-public-url http://controller:5000/v3/ \
--bootstrap-region-id RegionOne
设置 Apache 服务器:
sudo ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/
sudo systemctl start httpd
sudo systemctl enable httpd
6. 验证 OpenStack 环境

设置环境变量:
export OS_USERNAME=admin
export OS_PASSWORD=password
export OS_PROJECT_NAME=admin
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_NAME=Default
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
验证 Keystone 服务:
openstack token issue
https://i-blog.csdnimg.cn/direct/7d336ffddb38412a9685674897bac3b5.png
代码表明与利用说明



[*]环境准备:更新系统软件包可包管系统安全性与稳固性;关闭防火墙和 SELinux 是为防止它们制止 OpenStack 组件间的通信。
[*]依赖软件安装:python3-openstackclient 是 OpenStack 的命令行客户端,openstack-selinux 可帮助管理 OpenStack 相关的 SELinux 计谋。
[*]数据库设置:创建 MariaDB 数据库并设置其字符集和毗连参数,包管 OpenStack 数据的正确存储与访问。
[*]消息队列设置:RabbitMQ 作为消息队列,负责 OpenStack 组件间的异步通信,创建用户和设置权限可确保通信安全。
[*]Keystone 服务设置:Keystone 是 OpenStack 的身份认证服务,需创建数据库、同步数据、初始化密钥,并引导服务,末了通过 Apache 提供服务。
[*]验证环境:设置环境变量后,利用 openstack token issue
命令验证 Keystone 服务是否正常工作。
按照以上步骤,你可以在 OpenEuler 上成功搭建一个底子的 OpenStack 云计算环境。不过,这只是一个底子示例,实际应用中可能须要根据需求进一步设置和扩展。
https://i-blog.csdnimg.cn/direct/2f282bca8fb0476c849a5cfa3dac37bc.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: OpenEuler学习笔记(十二):OpenEuler 搭建云计算环境