Ubuntu22.04通过Maas和Juju部署openstack charm

目录

  • 官方文档
  • 材料准备
    • 软件
    • 硬件
  • 模板机和虚拟网络
  • 安装MAAS
    • 官方文档
    • MAAS节点配置
    • 安装MAAS
    • 浏览器登录MAAS进行配置
  • 激活DHCP

官方文档

https://docs.openstack.org/project-deploy-guide/charm-deployment-guide/2023.1/
这是一个通过Maas面板即可部署openstack的方式,是目前最优秀的部署方式,但是系统仅限Ubuntu

材料准备

软件

  1. Ubuntu 22.04 LTS (Jammy) for the Juju client, Juju controller, and all cloud nodes (including containers)
  2. MAAS 3.3.3
  3. Juju 2.9.43
  4. OpenStack 2023.1 (Antelope)

硬件

1 x MAAS system: 8GiB RAM, 2 CPUs, 1 NIC, 1 x 40GiB storage
1 x Juju controller node: 4GiB RAM, 2 CPUs, 1 NIC, 1 x 40GiB storage
4 x cloud nodes: 8GiB RAM, 2 CPUs, 1 NIC, 3 x 80GiB storage
因此主机规划如下

主机名CPU内存系统盘数据盘网卡ip
maas4c8GB100GB/10.0.0.9
juju4c8GB100GB/10.0.0.10
cloud14c8GB100GB100GB*310.0.0.11
cloud24c8GB100GB100GB*310.0.0.12
cloud34c8GB100GB100GB*310.0.0.13
cloud44c8GB100GB100GB*310.0.0.14

旧版本的MAAS面板需要4个cloud节点具备双网卡,一个用于管理面一个用于外网面。自从MAAS (v.2.9.2)以后,只需要一个网口即可,所有流量通过OVS网桥转发,这个由面板自动配置,用户不用管。
本文假设这6个主机是物理机,如果读者使用虚拟机,需要开启CPU hostpassthrough嵌套虚拟化功能。
MAAS主机将作为Openstack集群的DHCP和DNS服务器,所以至关重要。
JUJU主机和cloud主机必须是x86_64的结构
cloud主机的三个数据盘将用于Ceph分布式存储,Ceph至少需要3块盘。

模板机和虚拟网络

本文使用qemu-kvm和virt-manager模拟真实环境
创建一个NAT虚拟网络,10.0.0.0/24,网络名称随意
在这里插入图片描述
模板机开启嵌套虚拟化
在这里插入图片描述

创建一个4核心8GB内存+100GB系统盘的Ubuntu Server22.04虚拟机作为模板机,并且网卡网络选择刚才创建的虚拟网络,cpu打开嵌套虚拟化。系统内网卡默认dhcp模式,后面我们安装Openstack集群时会手动配置成静态IP。

安装MAAS

官方文档

Ubuntu给出的MAAS安装文档:https://maas.io/docs/fresh-installation-of-maas
Openstack给出的MAAS安装文档:https://docs.openstack.org/project-deploy-guide/charm-deployment-guide/2023.1/install-maas.html

MAAS节点配置

克隆模板机,新的虚拟机名称maas
主机配置如下

# 设置主机名
hostnamectl set-hostname maas
bash# 设置静态ip
cat > /etc/netplan/00-installer-config.yaml << EOF
# This is the network config written by 'subiquity'
network:ethernets:enp1s0:dhcp4: falseaddresses: [10.0.0.9/24]routes:- to: defaultvia: 10.0.0.1nameservers:addresses: [10.0.0.1]version: 2
EOF# 生效网络
netplan apply# 编写hosts文件
cat >> /etc/hosts << EOF
10.0.0.9  maas
10.0.0.10 juju
10.0.0.11 cloud1
10.0.0.12 cloud2
10.0.0.13 cloud3
10.0.0.14 cloud4
EOF# 关闭防火墙
ufw disable# 生成root公钥
ssh-keygen -t rsa  # 一路回车过去

安装MAAS

在maas服务器上执行以下命令安装maas,本文同时参考了ubuntu和Openstack的maas文档

# 安装maas
sudo snap install maas-test-db
sudo snap install --channel=3.4/edge maas# 关闭系统自带的时间同步器
systemctl disable --now systemd-timesyncd# 为maas面板创建postgresql数据库,用于持久化存储数据
sudo apt update -y
sudo apt install -y postgresql# 创建三个环境变量用于初始化数据库
export MAAS_DBUSER=maas
export MAAS_DBPASS=maas
export MAAS_DBNAME=maas# 修改主机名变量,否则maas无法连接数据库5432端口
export HOSTNAME=localhost# 创建数据库和数据库用户
sudo -i -u postgres psql -c "CREATE USER \"$MAAS_DBUSER\" WITH ENCRYPTED PASSWORD '$MAAS_DBPASS'"
sudo -i -u postgres createdb -O "$MAAS_DBUSER" "$MAAS_DBNAME"
echo "host $MAAS_DBNAME $MAAS_DBUSER 0/0 md5" >> /etc/postgresql/14/main/pg_hba.conf# 初始化maas
sudo maas init region+rack --maas-url http://10.0.0.9:5240/MAAS --database-uri "postgres://$MAAS_DBUSER:$MAAS_DBPASS@$HOSTNAME/$MAAS_DBNAME"# 初始化成功的返回
MAAS has been set up.             
If you want to configure external authentication or use
MAAS with Canonical RBAC, please runsudo maas configauth
To create admins when not using external authentication, runsudo maas createadmin
To enable TLS for secured communication, please runsudo maas config-tls enable# 验证maas是否安装成功
sudo maas status# 配置maas的admin超级管理员用户
sudo maas createadmin --username admin --password 123456 --email 2290906844@qq.com 
# 将admin登录秘钥导出成文件。这个文件必须有!后面部署要用。
sudo maas apikey --username admin > /root/admin-api-key

浏览器登录MAAS进行配置

随后登录 http://10.0.0.9:5240/MAAS,或者在maas主机桌面浏览器中输入127.0.0.1:5240
第一页欢迎页面,配置DNS服务器,这里我们采用阿里云的223.6.6.6,速度比较快。apt镜像源选择中科大源。
http://mirrors.ustc.edu.cn/ubuntu
http://mirrors.ustc.edu.cn/ubuntu-ports
在这里插入图片描述
第二页,选择Ubuntu22.04镜像,点击update selection开始下载,等下载完成后点击continue

在这里插入图片描述
配置成功画面
在这里插入图片描述
到了秘钥页面,下拉框选择Upload,然后将主机/root/.ssh/id_rsa.pub文件内容粘贴到文本框中。这样面板admin用户可免密登录主机root。
在这里插入图片描述
主界面
在这里插入图片描述
到此,MAAS面板安装成功。

激活DHCP

在安装后面5个节点之前,需要让MAAS面板有一个DHCP服务,5台节点的IP由这个DHCP分配。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/203345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为数通---使用基本ACL限制Telnet登录权限案例

组网需求 如下图所示&#xff0c;PC与设备之间路由可达&#xff0c;用户希望简单方便的配置和管理远程设备&#xff0c;可以在服务器端配置Telnet用户使用AAA验证登录&#xff0c;并配置安全策略&#xff0c;保证只有符合安全策略的用户才能登录设备。 配置通过Telnet登录设备…

学习极市开发平台

这是官网的链接&#xff1a;极市开发者平台-计算机视觉算法开发落地平台-极市科技 (cvmart.net) 第一次用这个平台有很多问题&#xff0c;首先在使用这个平台之前&#xff0c;我大部分时候使用的是百度的飞浆平台&#xff0c;也就是BML&#xff0c;去训练一些深度学习的模型。 …

防抖和节流

防抖&#xff08;Debouncing&#xff09;&#xff1a; 防抖是指在事件被触发后&#xff0c;等待一定的时间间隔&#xff0c;如果在这个时间间隔内再次触发该事件&#xff0c;则重新计时。只有当事件停止触发一段时间后&#xff0c;才会执行相应的操作。防抖常用于优化输入框的搜…

Elasticsearch,Kibana集成,x-pack鉴权配置

Elasticsearch,Kibana集成 Java8环境部署[CentOS7] cd /usr/local/src wget https://repo.huaweicloud.com/java/jdk/8u201-b09/jdk-8u201-linux-x64.tar.gztar -xzvf jdk-8u201-linux-x64.tar.gz -C /usr/local#配置环境变量 vim /etc/profile #文末添加 export JAVA_HOME/us…

强敌环伺:金融业信息安全威胁分析——钓鱼和恶意软件

门口的敌人&#xff1a;分析对金融服务的攻击 Akamai会定期针对不同行业发布互联网状态报告&#xff08;SOTI&#xff09;&#xff0c;介绍相关领域最新的安全趋势和见解。最新的第8卷第3期报告主要以金融服务业为主&#xff0c;分析了该行业所面临的威胁和Akamai的见解。我们发…

2023年11月Web3行业月度发展报告区块链篇 |陀螺研究院

11月&#xff0c;在宏观转好以及事件带动下&#xff0c;加密市场逐渐回暖。上月现货ETF带来的市场情绪持续增强&#xff0c;美方监管利好消息不断&#xff0c;零售投资者入场信号明显&#xff0c;持仓在10枚BTC以下的小规模投资者持仓持续上涨&#xff0c;推动BTC保持坚挺。利好…

sed 流式编辑器

使用方式&#xff1a; 1&#xff0c;前置指令 | sed 选项 定址符指令 2&#xff0c;sed 选项 定址符指令 被处理文档 选项&#xff1a; -n 屏蔽默认输出 -i写入文件 -r支持扩展正则 指令&#xff1a; p输出 d删除 s替换 sed -n 1p user //输出第1行 sed -n…

sklearn随机森林 测试 路面点云分类

一、特征5个坐标 坐标-特征-类别 训练数据 二、模型训练 记录分享给有需要的人&#xff0c;代码质量勿喷 import numpy as np import pandas as pd import joblib#region 1 读取数据 dir D:\\py\\RandomForest\\ filename1 trainRS filename2 .csv path dirfilename1file…

flink使用事件时间时警惕kafka不同分区的事件时间倾斜问题

背景 flink和kafka的消息组合消费模式几乎是实时流处理的标配&#xff0c;然后当在flink中使用事件时间处理时&#xff0c;需要注意kafka不同分区元素之间时间相差太大的问题&#xff0c;这样有可能会导致严重的数据堆积问题 kafka不同分区元素事件时间差异较大导致的问题 总…

〖大前端 - 基础入门三大核心之JS篇㊼〗- BOM基础之window对象

说明&#xff1a;该文属于 大前端全栈架构白宝书专栏&#xff0c;目前阶段免费&#xff0c;如需要项目实战或者是体系化资源&#xff0c;文末名片加V&#xff01;作者&#xff1a;不渴望力量的哈士奇(哈哥)&#xff0c;十余年工作经验, 从事过全栈研发、产品经理等工作&#xf…

【7】PyQt布局layout

目录 1. 布局简介 2. 水平布局QHBoxLayout 3. 竖直布局QVBoxLayout 4. 表单布局QFormLayout 5. 布局嵌套 1. 布局简介 一个pyqt窗口中可以有多个控件。所谓布局,指的就是多个控件在窗口中的展示方式 布局方式大致分为: 水平布局竖直布局网格布局表单布局 2. 水平布局Q…

OpenCV-python下载安装和基本操作

文章目录 一、实验目的二、实验内容三、实验过程OpenCV-python的安装与配置python下载和环境配置PIP镜像安装Numpy安装openCV-python检验opencv安装是否成功 openCV-python的基本操作图像输入和展示以及写出openCV界面编程单窗口显示多图片鼠标事件键盘事件滑动条事件 四、实验…

【Gradle】mac环境安装Gradle及配置

官网安装说明&#xff1a;Gradle | Installation 由于Gradle运行依赖jvm&#xff0c;所以事先需要安装jdk&#xff0c;并确认你的jdk版本和gradle版本要求的对应关系&#xff0c;这个官网上有说明&#xff0c;但是我试了一下不太准确&#xff0c;供参考&#xff0c;链接如下&a…

鸿蒙一出,android开发处境再受重创

华为宣布其自研操作系统鸿蒙HarmonyOSNEXT开发者预览版将不再兼容安卓系统&#xff0c;这一消息引起了广泛关注和热议。这一决策标志着华为正式告别安卓&#xff0c;摆脱了外部的制约&#xff0c;开始着手打造一个全新的生态系统。 鸿蒙系统4发布一个月&#xff0c;截至目前&a…

Apache Flink(七):Apache Flink快速入门 - DataStream BATCH模式

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 下面使用Java代码使用DataStream…

链路追踪详解(三):分布式链路追踪标准的演进

目录 Google Dapper Twitter Zipkin Uber Jaeger OpenTracing 和 OpenCensus OpenTelemetry 小结 分布式链路追踪是现代云计算和微服务架构中一个关键技术&#xff0c;可以让开发者和运维团队理解和监控服务请求在复杂系统中的完整流转路径。分布式链路追踪技术的发展经历…

C/C++,数值计算——快速幂(Quick Pow)的几种算法源代码

1 文本格式 // C Version long long binpow(long long a, long long b) { if (b 0) return 1; long long res binpow(a, b / 2); if (b % 2) return res * res * a; else return res * res; } // C Version long long binpow(long long a,…

10.Java程序设计-基于SSM框架的微信小程序家教信息管理系统的设计与实现

摘要是论文的开篇&#xff0c;用于简要概述研究的目的、方法、主要结果和结论。以下是一个简化的摘要示例&#xff0c;你可以根据实际情况进行修改和扩展&#xff1a; 摘要 随着社会的发展和教育需求的增长&#xff0c;家教服务作为一种个性化的学习方式受到了广泛关注。为了更…

nodejs微信小程序+python+PHP新闻发布系统的设计与实现-计算机毕业设计推荐

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;…

短视频购物系统源码:构建创新购物体验的技术深度解析

短视频购物系统作为电商领域的新宠&#xff0c;其背后的源码实现是其成功的关键。本文将深入探讨短视频购物系统的核心技术和源码设计&#xff0c;以揭示其如何构建创新购物体验的技术奥秘。 1. 技术架构与框架选择 短视频购物系统的源码首先考虑的是其技术架构。常见的选择…