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私有云平台的部署,保证私有云平台的所有服务能够正常运行,达到项目实战的考核目标。