openstack

使用kolla-ansible 单节点部署OpenStack(q

2019-03-07  本文已影响0人  士乄_官长

kolla-ansible单节点部署OpenStack过程,遵循all-in-one模式部署,其部署过程中可以有效的进行配置文件和日志文件的集中规划。

部署经过了虚拟机测试和物理机测试皆可用,本文就以物理机作为个例进行部署分解。

物理机配置清单:

CPU4个逻辑核    勾选“虚拟化 Intel VT-x/EPT”

网卡ens33接NAT网络,IP 192.168.134.131,用于下载组件、管理网络、API网络

网卡ens34桥接物理机网卡,IP 10.25.21.177,用于外部网络(即内网环境)

操作系统CentOS 7.5


下面进入系统环境配置

在装系统的过程中,目录分区的过程中默认/root/ 50GB,后期测试会严重不足,所以在系统安装的时候需要对/root目录的容量进行规划。

完成之后,进入centos对系统进行初始化设定:

1.关闭selinux

vi /etc/selinux/config 

更改SELINUX选项为不可用

SELINUX=disabled

2.关闭防火墙

systemctl stop firewalld

systemctl disable firewalld 

# 以为是测试环境,所以关掉了防火墙

3.更改hosts

192.168.134.131 localhost 

# centos 默认主机名localhost如果更改,统一即可

二、安装docker容器

1.查询一下防火墙是否关闭

systemctl status firewalld

# 显示disable即为关闭,同时查看selinux=disable修改完毕

2.下载安装基本工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3.安装docker

# 安装docker官方yum源

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 下载安装docker

sudo yum install -y docker-ce  

# 启用docker服务

sudo systemctl start docker  

# 设置开机自启docker服务

sudo systemctl enable docker

4.测试docker是够正常运行

sudo docker run hello-world

从官方源下载hello-world镜像并启动容器,输出

三、配置docker容器

1.开启共享挂载

mkdir /etc/systemd/system/docker.service.d

tee /etc/systemd/system/docker.service.d/kolla.conf << 'EOF'

[Service]

MountFlags=shared

EOF

重启docker服务,使生效

systemctl daemon-reload

systemctl restart docker

四、安装kolla-ansible

1.下载安装基本工具

yum install -y epel-release

yum install -y python-pip

pip install -U pip

yum install -y python-devel libffi-devel gcc openssl-devel libselinux-python git

yum install -y ansible

2.下载kolla、kolla-ansible

git clone https://github.com/openstack/kolla

git clone https://github.com/openstack/kolla-ansible

3.切换到queens版本

cd kolla

git checkout -b queens remotes/origin/stable/queens  

cd ../kolla-ansible

git checkout -b queens remotes/origin/stable/queens

4.安装kolla-ansible

# 先预装版本不匹配的包

pip install -U idna

pip install -I PyYAML  

# 安装kolla-ansible

cd kolla-ansible

pip install .

5.配置kolla-ansible

vi /etc/ansible/ansible.cfg

修改一下选项

[defaults]

host_key_checking=False

pipelining=True

forks=100

五、配置OpenStack环境

1、复制kolla-ansible配置文件

cp -r kolla-ansible/etc/kolla /etc/kolla/

cp kolla-ansible/ansible/inventory/* .

正常部署来说,kolla-ansible的方式部署OpenStack所包含的配置文件存储路径是在/etc/kolla/文件目录下。OpenStack的服务容器启动时,会将此目录映射到容器里。

2.调整kolla-ansible全局配置

vi /etc/kolla/globals.yml

更改如下

kolla_install_type: "source" # 使用源码版本,更稳定openstack_release: "queens"

 # 指定queens版本kolla_internal_vip_address: "192.168.134.131" # all-in-one部署,指定vip为管理网络网卡

docker_registry: "kolla:4000" # ----仅使用docker离线源时配置

docker_namespace: "kolla" # ----仅使用docker离线源时配置

network_interface: "ens33" # 管理网络、API网络的网卡

neutron_external_interface: "ens34" # 外部网络的网卡

enable_haproxy: "no" # all-in-one部署,不部署HA服务

nova_compute_virt_type: "kvm" # ---- 在物理机上部署时无需设置(默认kvm) ,仅在虚拟机中部署kolla-ansible-openstack时设置qemu

注意:在版本上,流传很多对下载镜像进行加速的,基本上都是阿里云,有时候有效有时候无效,看个人喜好。

[root@localhost ~]# mkdir -p /etc/docker

[root@localhost ~]# vim /etc/docker/daemon.json { "registry-mirrors": ["https://7g5a4z30.mirror.aliyuncs.com"] }

# 国内镜像加速依据个人喜好

3、生成密码

kolla-genpwd

# 生成的文件在/etc/kolla/password.yml

vi /etc/kolla/password.yml

keystone_admin_password: 123 #OpenStack登录密码,原始密码哈希生成,记忆王者可以随意修改

六、部署OpenStack环境

1.检查

kolla-ansible -i /home/all-in-one prechecks #注意一下你的all-in-one 文件目录

2.部署安装

kolla-ansible -i /home/all-in-one -vvv deploy #开启详情检查方式,方便与部署过程中的排查

3.生成运行脚本

kolla-ansible post-deploy

运行脚本

source /etc/kolla/admin-openrc.sh

4.安装OpenStack命令行工具

# 先安装版本不匹配的组件

pip install -I ipaddress  

# 安装命令行工具

pip install python-openstackclient python-glanceclient python-neutronclient

5.初始化OpenStack环境

vi /usr/share/kolla-ansible/init-runonce # 对于OpenStack的网络资源规划要进行修改

修改如下:

# This EXT_NET_CIDR is your public network,that you want to connect to the internet via.

EXT_NET_CIDR='192.168.1.0/24'

EXT_NET_RANGE='start=192.168.134.150,end=192.16.134.199'

EXT_NET_GATEWAY='192.168.1.1'

最终部署OK,界面生成

上一篇下一篇

猜你喜欢

热点阅读