openstack 之 使用ansible安装部署试验

前期一直使用Mirantis公司的fuel工具进行安装部署openstack,但是在实际使用当中,发现fuel对于定制化的需求还是做得不够好,如果中间部署出错,你找不出原因,同时如果资源紧张,需要同时在一个物理节点上同时部署多个组件,fuel的支持不是很好。我在试验环境下测试了controller和cinder复用一台物理主机,controller与ironic复用,都失败了,而且鉴于查找解决办法,还需要深入了解fuel本身的结构,因此后面发现只有简单环境下使用fuel是顺利的,稍微灵活一点的部署,fuel就不合适了。另外,我猜想这也有可能是Mirantis公司的策略,如果fuel在很多场景下都可以正常使用的话,那别人也不会购买他们的服务了(仅仅是个人猜测)。另外提一句,目前为止,我测试fuel,成功的有3节点的,即1个controller,1个compute,1个cinder;5个节点的:3个controller的ha,1个compute,1个cinder。

实验过程参考了openstack官网的OpenStack-Ansible Deployment Guide ,网址是:

http://docs.openstack.org/project-deploy-guide/openstack-ansible/newton/

过程总结一下:

1. 首先建一个虚拟机安装ubuntu16.04版本的操作系统(基础版,,账号ywb密码ywb123),配置了4个网卡,其中一块网卡是桥接到物理网卡,并且能够上网,运行apt-get update 和 apt-get dist-upgrade 更新安装源,以及执行apt-get install aptitude build-essential git ntp ntpdate  openssh-server python-dev sudo 安装必要的软件包;完成后将这个虚拟机作为模板。

2. 复制上面建好的虚拟机模板,分别建ansible主机,controller主机,compute主机;

3. 根据官网的操作手册进行后面的安装配置。

第一阶段实验规划:

1个ansible部署节点,1个控制节点/1个计算节点/1个cinder存储节点,共4个节点,每个虚拟机3块网卡,第一块用于部署网络,第二块用于内部的存储/管理/私有网络,第三块用于公用业务网络;

相关的网络平面规划如下:

host-only, eth0:部署平面:  10.20.0.0/24

host-only, eth1: 管理平面:  172.10.0.0/24  整个网段   vlan tag: 101

存储平面:  172.10.1.0/24  整个网段   vlan tag:  102

私有网络平面:172.10.2.0/24  整个网段   网关:172.10.2.1

bridge,eth2: 公共平面:  192.168.170.211-192.168.170.220 网关:192.168.170.254   网段CIDR:192.168.170.0/24

业务浮动地址: 192.168.170.221-192.168.170.240

DNS1:61.139.2.69

4台虚拟机的主机名和ip地址规划如下:

主机名:ansible        部署平面: 10.20.0.201

公共平面:  192.168.170.201

主机名:controller1    部署平面: 10.20.0.211

公共平面:  192.168.170.211

管理平面:  172.10.0.211

存储平面:  172.10.1.211

私有网络平面:  172.10.2.211

主机名:compute1    部署平面: 10.20.0.212

公共平面:  192.168.170.212

管理平面:  172.10.0.212

存储平面:  172.10.1.212

私有网络平面:  172.10.2.212

主机名:cinder     部署平面: 10.20.0.213

公共平面:  192.168.170.213

管理平面:  172.10.0.213

存储平面:  172.10.1.213

私有网络平面:  172.10.2.213

部署过程中碰到的问题有:

1. 官网里面在部署ansible虚拟机的时候有一个git clone的操作不成功,就是下面这个命令:

git clone -b TAG https://git.openstack.org/openstack/openstack-ansible /opt/openstack-ansible

后面是通过直接到另外一个地址上直接下载,下载网址是:

https://github.com/openstack/openstack-ansible  ,里面直接通过 “clone or download”下载zip压缩包,然后解压直接上传到ansible虚拟机。发现网速非常慢,“墙国”果然是名不虚传。

时间: 2024-12-08 18:53:38

openstack 之 使用ansible安装部署试验的相关文章

第1天:Ansible安装部署

Ansible介绍 Ansible是一个简单的自动化引擎,可完成配置管理.应用部署.服务编排以及各种IT需求.它是一款使用Python语言开发实现的开源软件,其依赖Jinjia2.paramiko和PyYAML这几个python库. Ansible安装部署简单,只需要再主控端部署Ansible环境,被控端无须做任何操作,基于SSH进行配置管理.Ansible作为自动化系统运维的一大利器,在构建整个体系过程中有这举足轻重的地位.其简单易用.易于安装.功能强大.便于分享.内含大量模板等都是它的魅力所

(2)ansible 安装部署

ansible安装部署非常简单,只依赖于python和ssh,而这两个依赖默认都已经安装,我接触到的环境大部分是centos.redhat环境,也有少数ubuntu.suse这类系统,不过还是尽熟悉的来,在centos 操作系统安装ansible作为管理节点. 一.pip安装 ansbile 底层也是基于python编写,所以通过pip方式可以安装ansible步骤1:安装python-pip及pythondevel程序包shell> yum install python-pip python-

Ansible安装部署及常用模块详解

Ansible命令使用 Ansible语法使用ansible <pattern_goes_here> -m <module_name> -a <arguments> -m NAME,–module-name=NAME:指定执行使用的模块 -u USERNAME,–user=USERNAME:指定远程主机以USERNAME运行命令 -s,–sudo:相当于Linux系统下的sudo命令 -USUDO_USERNAME,–sudo-user=SUDO_USERNAME:使用

ansible安装部署和配置、常用模块整理

今天心情不错~~~~第25个生日了,又遇昨晚百年难得一见的蓝月亮,所以昨晚连夜整理了文档, 会分为两部分发出去,ansible批量化部署在工作中是非常实用,建议呢 整理大量常用模块去练习 1.1.1 ansible软件介绍 1. ansible是一个基于python开发的自动化运维工具!(saltstack) 2. 其功能的实现是基础SSH远程连接服务的 3. ansible可以实现批量系统配置.批量软件部署.批量文件拷贝.批量运行命令等功能 1.1.2 ansible软件相关参考链接信息 ht

使用Ansible安装部署nginx+php+mysql

前提: 1.已配置好hosts文件且免密码登录 2.需要的yaml文件已上传到主控端 一.使用Ansible安装nginx 1.nginx.yaml文件 1 --- 2 - hosts: clong 3 remote_user: root 4 gather_facts: no 5 tasks: 6 # 安装epel源 7 - name: install epel-release repo 8 yum: name=epel-release state=present 9 # 安装libselinu

运维神器 ansible 安装部署

抽空研究下自动运维神器 ,ansible ,基于SSH的管理,不需要agent 核心:ansible 核心模块(Core Modules):这些都是ansible自带的模块? 扩展模块(Custom Modules):如果核心模块不足以完成某种功能,可以添加扩展模块 插件(Plugins):完成模块功能的补充 剧本(Playbooks):ansible的任务配置文件,将多个任务定义在剧本中,由ansible自动执行 连接插件(Connectior Plugins):ansible基于连接插件连接

nagios 安装部署试验

RH5.3 + VMware +Nagios 11 + 环境 虚拟机vmware + 操作系统 linux rh5.3 步骤 rpm -q gcc glibc glibc-common gd gd-devel xinetd openssl-devel yum install -y gcc glibc glibc-common gd gd-devel xinetd openssl-devel 遇见问题:This system is not registered with RHN Redhat之所以

自动化批量部署工具Ansible笔记之ansible安装与Inventory文件

一.ansible简介 ansible是一款自动化运维部署工具,与saltstack,pupet等不同的是,ansible没有采用C/S的架构,即没有客户端与服务端之分.这也就意味着,ansible的安装更加方便,管理节点更加灵活(任何一台安装了ansible的机器都可以充当管理节点). ansible提供了丰富的模块来方便的完成管理任务,对于复杂的管理任务来说,ansible通过编写playbook的方式来批量执行.而且ansible也可以并发的执行操作,可以同时在多台机器上执行playboo

Openstack安装部署指南翻译系列 之 说明(Pike版本官网翻译)

从部署实践来看,部署工作有两大困难,一个是架构设计,一个是排查错误.其中,当部署过程中出现错误,需要排查的时候,如果不了解基础的系统结构原理和基础的安装步骤,是很难定位和解决问题的. 现在Openstack的部署有很多可选项,主要有: 1)根据社区官网最基础的安装文档根据设计对每一个service组件进行安装,这种安装方式最基础,全手工: 2)使用Mirantis公司的Fuel工具进行部署.这种部署方式非常高效,界面友好,Fuel工具真正实现了一键部署,只要设计好网络和功能节点分布,一键部署完成