(1)Kolla目前使用到的工具包括docker和ansible,readme里面还提到,使用heat编排kolla集群。Kolla项目源代码里面,包括以下几类主要内容。
1.docker 镜像
2.Docker-compose编排文件
3.工具脚本
(2)通常每个opensatck的组件会作为一个镜像,而部分组件需要拆分成多个镜像,以便更适合实际的部署环境,每个docker镜像,包括:
1.每个组件的docker文件dockerfile
2.每个组件的配置文件config
3.每个组件的启动文件start.sh
4.链接到主build文件的build文件
(3)下载kolla
目前kolla代码托管在github上,项目仓库链接:https://github.com/openstack/kolla
(4)kolla目录结构
Kolla源代码下载下来后,先从总提上分析kolla的目录结构,查看顶级目录结构,使用命令:
tree -L 1
Kolla目录输出:
.
├── bindep.txt
├── contrib
├── deliverables.yaml
├── doc
├── docker
├── etc
├── HACKING.rst
├── kolla
├── LICENSE
├── README.rst
├── releasenotes
├── requirements.txt
├── setup.cfg
├── setup.py
├── specs
├── test-requirements.txt
├── tests
├── tools
└── tox.ini
Kolla-ansible目录输出:
.
├── ansible
├── bindep.txt
├── contrib
├── deploy-guide
├── doc
├── etc
├── kolla_ansible
├── LICENSE
├── README.rst
├── releasenotes
├── requirements.txt
├── setup.cfg
├── setup.py
├── specs
├── test-requirements.txt
├── tests
├── tools
└── tox.ini
目录:setup.cfg 视图入口
1.tox.ini
Tox配置文件。Tox是一个标准的自动化测试工具,python里面的
2.Tools
工具脚本目录。目录包括编译docker镜像,清理docker环境,生成kolla环境变量,kolla启动脚本,json、yaml文件检验等脚本。
3.Tests
测试目录,这个目录应该包含kolla测试套件
4.Test-requirements.txt】
Python的requirements文件,用于说明测试时所需要的python包。
5.Specs
Specs目录,说明使用容器的安装openstack的理念和优势