【葵花宝典】kolla部署OpenStack-AllinOne
1.关闭防火墙以及内核安全机制
systemctl stop firewalld
systemctl disable firewalld ##永久性关闭
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux ##永久性关闭
2.安装拓展源关闭NetworkManager
yum -y install epel-release
systemctl disable NetworkManager
systemctl stop NetworkManager
3.修改主机名并定时同步时间
hostnamectl set-hostname cloud.itdogs.org
vim /etc/hosts
192.168.11.11 cloud.itdogs.org
yum -y install ntpdate
ntpdate ntp.aliyun.com
##创建计划性任务表,每两分钟更新一次时钟
[root@control ~]# crontab -e
*/2 * * * * /usr/sbin/ntpdate ntp.aliyun.com >> /var/log/ntpdate.log
4.安装基础包及docker服务
安装基础包
yum install python-devel libffi-devel gcc openssl-devel git python-pip -y
mkdir ~/.pip
vim ~/.pip/pip.conf
[global]
index-url = https://mirrors.aliyun.com/pypi/simple
安装docker并设置镜像加速
yum -y remove docker docker-common docker-selinux docker-engine //卸载旧版本
yum -y install yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo //阿里云yum源
yum list docker-ce --showduplicates | sort -r //找到yum源里相应的包
yum install -y docker-ce
systemctl start docker
systemctl enable docker
vi /etc/docker/daemon.json
{
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://reg-mirror.qiniu.com",
"https://registry.docker-cn.com"
]
}
sudo systemctl restart docker
5.安装kolla-ansible
yum install ansible -y
pip install kolla-ansible #安装kolla-ansible,如果报错,pip install kolla-ansible --ignore-installed PyYAML
cp -r /usr/share/kolla-ansible/etc_examples/kolla /etc/
ls /etc/kolla/
cp /usr/share/kolla-ansible/ansible/inventory/* /etc/kolla/
ls /etc/kolla/
修改虚拟机类型为qemu注:如果是在虚拟机里装 kolla,希望可以启动再启动虚拟机,那么你需要把virt type=qemu,默认是kvm。如果vmware 开了“虚拟化Intel VT"功能,就不用写这个了。
mkdir -p /etc/kolla/config/nova
cat <<EOF>/etc/kolla/config/nova/nova-compute.conf
[libvirt]
virt type=qemu cpu_mode=none
EOF
6.自定义kolla-ansible安装脚本
自动生成openstack 各服务的密码文件
kolla-genpwd
编辑vi /etc/kolla/globals.yml 自定义openstack中部署事项
cat >> /etc/kolla/globals.yml <<EOF
#version
kolla_base_distro:"centos"
kolla_install_type:"binary"
openstack_release:"train"
#vip
kolla_internal_vip_address:"192.168.11.11"
#docker registry
docker_registry:"registry.cn-shenzhen.aliyuncs.com"
docker_namespace:"kollaimage"
#network
network_interface:"ens33"
neutron_external_interface:"ens37"
neutron_plugin_agent:"openvswitch"
enable_neutron_provider_networks:"yes"
#storage
enable_cinder:"yes"
enable_cinder_backend_lvm:"yes"
#virt_type
nova_compute_virt_type:"qemu"
EOF
改:15#kolla_base_distro:"centos"#选择下载的镜像为基于 centos版本的镜像为:kolla base distro:"centos"
改:18#kolla install type:"binary"#去了前面的#号,使用yum 安装二进制包安装源码安装,指的是使用 git clone 源码安装
为:18 kolla install type:"binary"
改:21#openstack release:""为openstack release:"rocky"#指定安装rocky 版本的openstack,后期下载的openstack相关的docker 镜像的tag 标记也都为rocky
23#Location of configuration overrides
24#node_custom_config:"/etc/kolla/config"#配置文件的位置
改:31#kolla internal vip address:"10.10.10.254"为:31kolla internal_vip address:"192.168.1.63"
#我们没有启用高可用,所以这里的IP可以和ens33一样,也可以独立写一个和ens33同网段的IP。这一项的作用是:指定openstack 内部管理地址,以后就通过这个IP地址访问 openstack web界面,管理私云。
注:如果配置了高可用,这里要使用一个没被占用的IP。这个IP是搭建HA高可用的浮动IP。此IP将由keepalived 管理以提供高可用性,应设置为和network interface ens33同一个网段的地址。
改:85#network interface:"etho"为:network interface:"ens33"#Kolla-Ansible 需要设置一些网络选项。我们需要设置OpenStack 使用的网络接口。设置的第一个接口是“network_interface"。这是openstack内部多个管理类型网络的默认接口。
改:100#neutron external interface:"eth1"
为:100 neutron_external_interface:"ens38"#所需的第二个接口专用于Neutron外部(或公共)网络,可以是vlan或flat,取决于网络的创建方式。此接口应在没有IP地址的情况下处于活动如果不是,openstack 云平台中的云主机实例将无法访问外部网络。只要网卡启动着,就可以了,不要给IP,有IP时br-ex桥接就不成功了。
177#enable_cinder:"no"#先不开启cinder
改:195#enable haproxy:"yes"为:195 enable_haproxy:"no”#去了前面的#号,改yes为no。关闭高可用
7.开始安装
生成SSHKey,并授信本节点:
ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub root@cloud.itdogs.org
[root@cloud kolla]#vim /etc/kolla/all-in-one#把 localhost 替换成cloud.itdogs.org
:1, $s/localhost/cloud.itdogs.org/
:1, $s/ansible_connection=local//
注:将以下组件,都安装到cloud.itdogs.org这台机器上:改第1行到19行中。
[control]
cloud.itdogs.org
[network]
cloud.itdogs.org
[compute]
cloud.itdogs.org
...
[deployment]
cloud.itdogs.org
开始部署OpenStack
通过安装 bootstrap-servers 把部署openstack 所需要的依赖包都安装好Kolla-Ansible 提供了一个将以正确版本安装所有必需服务的剧本 bootstrap-servers。所以我们先安装bootstrap-servers 把安装 openstack 所依赖的软件包都先提前安装好。包括docker 服务。
kolla-ansible -i /etc/kolla/all-in-one bootstrap-servers
kolla-ansible -i /etc/kolla/all-in-one prechecks
设置docker volume卷挂载方式
tee /etc/systemd/system/docker.service.d/kolla.conf <<'EOF'
[Service]
MountFlags=shared
EOF
注:加上MountFlags=shared后,当 docker 宿主机新增分区时,docker 服务不用重启。添加这个参考后,后期在openstack 中使用cinder 存储服务时,新加磁盘比较方便。
重启相关服务
systemctl daemon-reload #只有修改了服务的启动脚本,才需要执行daemon-reload。只修改服务的配置文件,是不需要daemon-reload
systemctl enable docker && systemctl restart docker && systemctl status docker
拉取镜像
kolla-ansible -i /etc/kolla/all-in-one pull
查看网络链接
netstat -antup|grep 443
查看下载的镜像
docker images
docker images |wc -l
进入OpenStack实际安装部署阶段
kolla-ansible -i /etc/kolla/all-in-one deploy
#因为咱们前面已经下载的镜像,所以这时启动 docker实例会快一些。如果前面没有下载镜像,那么这时,还会边下载各种openstack 相关的镜像边部署 docker实例。
验证部署
kolla-ansible -i /etc/kolla/all-in-one post-deploy
这样就创建/etc/kolla/admin-openrc.sh 文件
cat /etc/kolla/admin-openrc.sh
查看密码登录即可
【葵花宝典】kolla部署OpenStack-AllinOne的更多相关文章
- kolla部署openstack allinone,报错 ImportError: cannot import name decorate
使用 kolla-ansible 部署 opnenstack:stein,最后无法导入变量脚本,报错信息如下: [root@kolla ~]# . /etc/kolla/admin-openrc.sh ...
- kolla部署openstack allinone,报错APIError: 500 Server Error: Internal Server Error (\"oci runtime error: container_linux.go:235: starting container process caused \"container init exited prematurely
使用 kolla-ansible 部署 opnenstack:stein 执行 kolla-ansible -i ./all-in-one deploy 开始自动化部署 在部署过程中报错,报错信息如下 ...
- OpenStack(四)——使用Kolla部署OpenStack多节点云
(1).实验环境 主机名 IP地址 角色 内存 网卡 CPU 磁盘 OpenStack-con 192.168.128.110 controller(控制) 8G 桥接网卡ens32和ens33 4核 ...
- kolla部署openstack多节点高可用并对接ceph后端存储(17)
部署节点执行: 安装基础包和docker yum install python-devel libffi-devel gcc openssl-devel git python-pip -y 升级一下 ...
- kolla-ansible部署openstack allinone单节点
环境准备 2 network interfaces 8GB main memory 40GB disk space 1.修改hostname hostnamectl set-hostname koll ...
- Linux运维---16. Kolla部署OpenStack外接rabbit集群
# 前提时rabbit集群已经搭建完成 vim /etc/kolla/globals.yml enable_rabbitmq: "no" rpc_transport_url: &q ...
- Linux运维--14.Kolla部署OpenStack使用external MariaDB Galera Cluster
使用haproxy+keepalived实现Mariadb负载均衡 controller2: 10.100.2.52 haproxy+keepalived controller3: 10.100.2. ...
- kolla 多节点部署 openstack
kolla 介绍 简介 kolla 的使命是为 openstack 云平台提供生产级别的.开箱即用的交付能力.kolla 的基本思想是一切皆容器,将所有服务基于 Docker 运行,并且保证一个容器只 ...
- Ubuntu 18.04.1 LTS + kolla-ansible 部署 openstack Rocky all-in-one 环境
1. kolla 项目介绍 简介 kolla 的使命是为 openstack 云平台提供生产级别的.开箱即用的自动化部署能力. kolla 要实现 openetack 部署分为两步,第一步是制作 do ...
- kolla部署all-in-one环境(N版)
简单介绍: Kolla 是 OpenStack 大帐篷模式下的官方子项目之一,其主要目标是通过利用 Docker 容器以及 Ansible 自动化部署工具,来为 OpenStack 云平台提 供一个简 ...
随机推荐
- Linux下查看目录文件大小
1.ls -lht 查看当前目录下文件的大小 2.du -sh 查看当前文件夹的大小
- Consul安装部署(Windows单机、Docker集群)
1. Consul简介 Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发,基于 Mozilla Public Licen ...
- AWT02-ContainerAPI
1.体系 Object -Component -Container Window:窗口容器 Frame:创建窗口 Dialog:创建对话框 Panel:内嵌容器 Applet ScrollPane:含 ...
- 说说 Python 中的高阶函数
高阶函数(higher-order function)指的是:接受一个函数为参数,或者把函数作为结果值返回的函数. 1 sorted() 比较常见的高阶函数是 sorted(),其内部的关键字参数 k ...
- NET 5使用HangFire定时任务
注意:1. 当Hangfire服务由Web程序来启用时,默认情况下,web应用程序中的Hangfire服务器实例在第一个用户访问您的站点之前不会启动.甚至,有一些事件会在一段时间后导致web应用程序关 ...
- C#中RDLC合并两个列的值
使用 & 符号连接 =Fields!ID.Value & Fields!Name.Value
- 【进程/作业管理】篇章四:Linux任务计划、周期性任务执行
命令归纳: at 未来时间点让特定任务运行一次 batch 未来时间点让系统自行选择在系统资源较空闲的时间去执行指定的任务 corn 周期性任务计划(corntad) at命令详解 <--- 假 ...
- WEB层知识点
目录 Web 应用程序技术 HTTP 1.1 HTTP请求 1.2 HTTP响应 1.3 HTTP方法 1.4 URL 1.5 HTTP消息头 1.常用消息头 2.请求消息头 3.响应消息头 1.7 ...
- 【Java】指定【微信】好友自动发送消息
package user.controller; import java.awt.*; import java.awt.datatransfer.Clipboard; import java.awt. ...
- Long类型数据传递到前端数据精度丢失问题
在开发页面的时候,遇到Long类型的数据,传送给前端遇到精度丢失的问题, 后端发的数据是这个. 前端接收到的数据是这样 解决的途径有二种:1 .在后端把Long类型的数据改成String类型(不推荐) ...