5.4.3 基本服务任务设计

5.4.3 基本服务任务设计

1.配置keystone

在roles目录下创建keyヶone文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建keystone文件,在templates目录下新建keystone.j2文件,代码如下所示:

2.glance服务安装

在roles目录下创建glance文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建glance文件,在templates目录下新建glance.j2文件,代码如下所示:

3.Nova控制节点服务安装

在roles目录下创建nova-controller文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建keystone文件,在templates目录下新建nova-controller.j2文件,代码如下所示:

4.Nova计算节点服务安装

在roles目录下创建nova-compute文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建nova-compute文件,在templates目录下新建nova-compute.j2文件,代码如下所示:

5.Neutron控制节点服务安装

在roles目录下创建neutron-controller文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建neutron-controller文件,在templates目录下新建neutroncontroller.j2文件,代码如下所示:

6.Neutron计算节点服务安装

在roles目录下创建neutron-compute文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建neutron-compute文件,在templates目录下新建neutroncompute.j2文件,代码如下所示:

7.Horizon服务安装

在roles目录下创建dashboard文件,在tasks目录下新建main.yml文件,代码如下所示:

在roles目录下创建dashboard文件,在templates目录下新建neutron-compute.j2文件,代码如下所示:

8.环境安装

以上为所有分离模块的主要配置文件和相关的执行脚本,现在需要一个统一的脚本将所有的功能模块合成一个整体。在roles同级目录编写deploy.yml文件,代码如下所示。

一切配置完成之后开始执行ansible脚本,代码如下所示:

一键执行以上ansible脚本,根据服务器配置的不同,等待的时间也有所不同。执行完成后,可以通过Web界面查看最后的安装结果,详细安装过程时间较长,在此不进行细节展示。

任务思考

通过部署私有云平台OpenStack的学习,在开发ansible脚本的过程中,所有操作都将复杂的过程模块化,开发过程非常清晰。通过学习ansible运维技术,读者可以将所学技术应用到企业的复杂项目中。要将复杂的运维脚本模块化,可以采用角色分组方式进行配置。

任务评价

通过学习本任务的知识点,可让读者熟练掌握ansible运维技术。在实训过程中,读者会遇到很多难以解决的问题,可以通过前面任务的排错功能去解决,以快速提升自身技能。通过排错功能,读者能完成OpenStack私有云平台的部署,保证私有云平台的所有服务能够正常运行,达到项目实战的考核目标。