自动化kolla-ansible部署ubuntu20.04+openstack-victoria单机
自动化kolla-ansible部署ubuntu20.04+openstack-victoria单机
欢迎加QQ群:1026880196 进行交流学习
一. 环境信息
1. 硬件信息 型号:Dell R730
CPU:Intel(R) Xeon(R) CPU E5-2670 v3 @ 2.30GHz*2
内存:DDR4 192GB
系统: SSD480GB*2 raid 1 /dev/sda
数据: SSD480GB*6 raid 10 /dev/sdb
网卡: eno1 192.168.1.83 eno2 dhcp(需要路由器或者交换机开启dhcp 网卡能够自动获取IP地址) 2. 系统信息 #系统安装参考https://www.cnblogs.com/yyx66/p/14515383.html
#系统镜像下载地址:
网易: http://mirrors.163.com/ubuntu-releases/20.04.2.0/ubuntu-20.04.2-live-server-amd64.iso
中科大: https://mirrors.ustc.edu.cn/ubuntu-releases/20.04.2.0/ubuntu-20.04.2-live-server-amd64.iso
ubuntu-20.04.2-live-server-amd64.iso
英文=标准安装 系统分区
/boot 1000M /swap 8192M 其余/ 设置主机名
sudo hostnamectl set-hostname sstack 3. 配置hosts
sudo vim /etc/hosts
192.168.1.82 kolla.zixuanyun.com
192.168.1.83 sstack 4. 配置ssh
sudo vim /etc/ssh/sshd_config 100行 #ClientAliveInterval 0
101行 #ClientAliveCountMax 3
修改成
ClientAliveInterval 60
ClientAliveCountMax 60 重启ssh服务
sudo systemctl restart sshd && systemctl status sshd 5. 配置ssh允许root登陆(切换到root管理员权限下 su root )
sed -i '/PermitRootLogin/d' /etc/ssh/sshd_config
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
service sshd reload 6. ssh免密验证 #sstack节点操作
ssh-keygen
ssh-copy-id root@sstack 7. 配置国内源 1.备份
sudo cp -v /etc/apt/sources.list /etc/apt/sources.list.backup 2.修改文件权限,确保文件可修改
sudo chmod 777 /etc/apt/sources.list 3.使用图形化界面或vim直接修改文件内容
> /etc/apt/sources.list
vim /etc/apt/sources.list 4.将文件中的原内容全部注释,添加国内源地址 清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan focal restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan focal restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-updates focal restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-updates focal restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-backports focal restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-backports focal restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-security focal restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-security focal restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-proposed focal restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ eoan-proposed focal restricted universe multiverse4. 修改完成后记得点击图形界面的保存按钮/vim中按esc推出编辑模式,输入:wq保存并退出 5.更新软件
sudo apt update -y
sudo apt upgrade -y 8. 设置默认python、pip(软连接)并换源 Pip
pip是一个用来安装Python软件包的工具,由于Python 2已经退出了历史的舞台,Ubuntu20.04也移除了Python 2,所以不能够使用python-pip安装pip。 1. 安装pip3
sudo apt-get install python3-pip -y 2. 当安装结束,检查pip版本:
pip3 --version 3. 更换pip源
pip默认使用境外源,下载速度较慢且时而报错,我们可以更换为国内的pip源: mkdir ~/.pip/
cd .pip
sudo vim pip.conf 将下列内容加入到pip.conf文件中:
[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn 4. 查看当前源:
pip3 config list #其他国内源: # 清华源
https://pypi.tuna.tsinghua.edu.cn/simple
# 腾讯源
http://mirrors.cloud.tencent.com/pypi/simple
# 豆瓣源
http://pypi.douban.com/simple/ 5. 更新pip
sudo pip3 install --upgrade pip
二. 配置环境
1. 更新软件包索引
sudo apt-get update -y 2. 安装常用软件包
sudo apt-get install python3-dev libffi-dev gcc libssl-dev -y 3. 安装python3-pip
sudo apt-get install python3-pip -y 4. 升级pip
sudo pip3 install -U pip 5. 安装docker。之前有安装过 docker , 先删除(新安装的20.04版本没有安装,其他版本可能会默认安装了)
sudo apt-get remove docker docker-engine docker.io containerd runc 6. 安装依赖
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common -y 7. 信任 docker 的 GPG 公钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 8. 添加软件仓库
sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable" 9. 更新并安装软件
sudo apt-get update -y
sudo apt-get install docker-ce docker-ce-cli containerd.io -y 10. 设置开机启动
sudo systemctl enable docker && systemctl start docker && sudo systemctl status docker 11. 设置 docker 镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://3wk75oh9.mirror.aliyuncs.com"],
"insecure-registries": ["kolla2.zixuanyun.com:4000"]
}
EOF 12. 重新加载
sudo systemctl daemon-reload && systemctl restart docker && sudo systemctl status docker #以下在sstack节点安装
1. 安装ansible # 版本等于2.9.18 #查看Ansible版本 ansible --version
sudo pip3 install -U 'ansible<2.9.19' 2. 安装kolla-ansilbe 版本 对于victoria版本 要指定pip install kolla-ansible==11.0.0
pip3 install kolla-ansible==11.0.0 3. 创建/etc/kolla目录
sudo mkdir -p /etc/kolla
sudo chown $USER:$USER /etc/kolla 4. 复制globals.yml并passwords.yml到/etc/kolla目录
cp -r /usr/local/share/kolla-ansible/etc_examples/kolla/* /etc/kolla 5. 将文件复制all-in-one并multinode清点到当前目录
cp /usr/local/share/kolla-ansible/ansible/inventory/* .
三. 文件配置
1. 配置globals.yml文件,开启需要的文件
vim /etc/kolla/globals.yml kolla_base_distro: "ubuntu"
kolla_install_type: "source"
openstack_release: "victoria"
node_custom_config: "/etc/kolla/config"
kolla_internal_vip_address: "192.168.1.82"
kolla_internal_fqdn: "kolla.zixuanyun.com"
docker_registry: "kolla2.zixuanyun.com:4000"
docker_namespace: "kolla"
docker_client_timeout: 120
network_interface: "eno1"
neutron_external_interface: "eno2"
neutron_plugin_agent: "openvswitch"
neutron_tenant_network_types: "vxlan,vlan,flat"
keepalived_virtual_router_id: "56"
#enable_chrony: "no"
enable_cinder: "yes"
enable_cinder_backup: "no"
enable_cinder_backend_lvm: "yes"
enable_heat: "no"
enable_neutron_provider_networks: "yes"
cinder_volume_group: "cinder-volumes"
nova_compute_virt_type: "kvm"
nova_console: "spice" 2. 配置 vim all-in-one
vim /root/all-in-one 修改如下:
[control]
sstack [network]
sstack [compute]
sstack [storage]
sstack [monitoring]
sstack [deployment]
sstack 3. 生成随机密码
kolla-genpwd 4. 修改界面登陆密码为xuanyi100
sed -i 's/^keystone_admin_password.*/keystone_admin_password: xuanyi100/' /etc/kolla/passwords.yml 5. 为后端存储准备
#格式化
mkfs.ext4 /dev/sdb
pvcreate /dev/sdb
vgcreate cinder-volumes /dev/sdb 6. 设置nova配置文件
mkdir /etc/kolla/config
mkdir /etc/kolla/config/nova cat >> /etc/kolla/config/nova/nova-compute.conf << EOF
[libvirt]
inject_password=true
cpu_mode=host-passthrough
virt_type = kvm
EOF 7. 配置nova配额分配
cat >> /etc/kolla/config/nova.conf << EOF
[DEFAULT]
service_down_time = 120
cpu_allocation_ratio = 4.0
disk_allocation_ratio=1.0
ram_allocation_ratio = 1.0
reserved_host_disk_mb = 8192
reserved_host_memory_mb = 8192
allow_resize_to_same_host = True
remove_unused_base_images = False
image_cache_manager_interval = 0
resume_guests_state_on_host_boot = True
EOF 8. 创建虚拟机界面禁止默认创建新卷.
mkdir /etc/kolla/config/horizon cat >> /etc/kolla/config/horizon/custom_local_settings << EOF
LAUNCH_INSTANCE_DEFAULTS = {'create_volume': False,}
EOF
四. 部署安装
#sstack上执行
1. 检查
ansible -i all-in-one all -m ping
kolla-ansible -i ./all-in-one prechecks -vv
2. 引导各节点依赖
kolla-ansible -i ./all-in-one bootstrap-servers -vv
3. 部署
kolla-ansible -i ./all-in-one deploy -vv
4. 安装OpenStack CLI客户端:
add-apt-repository cloud-archive:victoria
apt update && apt dist-upgrade
apt install python3-openstackclient -y
5. 部署完成后生成rc文件
kolla-ansible -i all-in-one post-deploy
cp /etc/kolla/admin-openrc.sh ./
chmod +x admin-openrc.sh
6. 设置环境变量:
source /root/admin-openrc.sh
7. 编辑初始化脚本中的网络配置
vim /usr/local/share/kolla-ansible/init-runonce
EXT_NET_CIDR=${EXT_NET_CIDR:-'192.168.1.0/24'}
EXT_NET_RANGE=${EXT_NET_RANGE:-'start=192.168.1.87,end=192.168.1.200'}
EXT_NET_GATEWAY=${EXT_NET_GATEWAY:-'192.168.1.1'}
8. 执行初始化脚本:
. /usr/local/share/kolla-ansible/init-runonce
9. 访问dashbaord
http://kolla.zixuanyun.com admin zixuanyun
自动化kolla-ansible部署ubuntu20.04+openstack-victoria单机的更多相关文章
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之准备安装-09
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之准备安装-09 欢迎加QQ群:1026880196 进行交流学习 准备安装 #controller1 ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之裸金属-20
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之裸金属-20 欢迎加QQ群:1026880196 进行交流学习 近期我发现网上有人转载或者复制原创博客 ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之本地仓库-06
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之本地仓库-06 欢迎加QQ群:1026880196 进行讨论 1. 安装docker registry ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之配置环境-05
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之配置环境-05 欢迎加QQ群:1026880196 进行交流学习 #全部节点执行如下操作 1. 安装常 ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之替换logo-13
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之替换logo-13 欢迎加QQ群:1026880196 进行交流学习 替换 openstack das ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之文件配置-08
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之文件配置-08 欢迎加QQ群:1026880196 进行交流学习 文件配置 #controller ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作win2008r2-19
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作win2008r2-19 欢迎加QQ群:1026880196 进行交流学习 制作OpenSta ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作fedora27-18
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作fedora27-18 欢迎加QQ群:1026880196 进行交流学习 制作OpenSt ...
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作debian9.6.0-17
自动化kolla-ansible部署ubuntu20.04+openstack-victoria之镜像制作debian9.6.0-17 欢迎加QQ群:1026880196 进行交流学习 制作Ope ...
随机推荐
- 在gradle中构建java项目
目录 简介 构建java项目的两大插件 管理依赖 编译代码 管理resource 打包和发布 生成javadoc 简介 之前的文章我们讲到了gradle的基本使用,使用gradle的最终目的就是为了构 ...
- winform导入excel或者csv
if (txt01.Text != "") { this.lbzhantie.Items.Clear(); this.dtzhuanhuo.Rows.Clear(); if (tx ...
- LayUI之数据表格扩展
1.点击一行 选中 以下代码需要在表格渲染完成时加载. 1)当单击表格行时,把单选按钮设为选中状态 //当单击表格行时,把单选按钮设为选中状态 $(document).on("click&q ...
- 资源授权?对OAuth2.0的一次重新认识的过程
什么是OAuth? OAuth一个开放的授权标准,允许用户在不提供关键信息(如账号,密码)给第三方应用的前提下,让第三方应用去访问用户在某网站上的资源(如头像,用户昵称等). OAuth分为OAuth ...
- Pyqt5——带图标的表格(Model/View)
需求:表格中第一列内容为学生学号,为了突出学号的表示,在第一列的学号旁增加学号图标. 实现:(1)使用Qt的model-view模式生成表格视图. (2)重写代理(QAbstractItemDeleg ...
- 爬虫入门到放弃系列05:从程序模块设计到代理IP池
前言 上篇文章吧啦吧啦讲了一些有的没的,现在还是回到主题写点技术相关的.本篇文章作为基础爬虫知识的最后一篇,将以爬虫程序的模块设计来完结. 在我漫(liang)长(nian)的爬虫开发生涯中,我通常将 ...
- drf给上传图片重命名
1.先在你项目中添加一个文件夹如:system 在文件夹下添加__init__.py 和storage.py文件,并在storage.py中添加如下代码: #复制代码 -- coding: UTF-8 ...
- FreeBSD WIFI 配置详细介绍
首先运行ifconfig,看看能不能找到你的网卡,如果能,那么你可以走了﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉﹉运行sysctl net.wlan.devices,他可以告诉你,找到的无线网卡编辑/b ...
- 使用jhipster 加速java web开发
jhipster,中文释义: Java 热爱者! JHipster is a development platform to quickly generate, develop, & depl ...
- 在vscode中go编码发生的问题整理
引言 使用VsCode进行Go程序开发,我们肯定会碰到一些问题,这些问题有些是IDE的配置问题,有些是下载包的版本不一致问题,本文主要针对在开发过程中碰到的问题做一个简单的回顾和整理. 前期准备,必看 ...