在设计云上资源的基础结构时,首先需要的是体系架构图。有多种工具可用于构建体系架构图,例如Microsoft Visio, Visual Paradigm,Draw.io图形等。这些工具确实有助于理解和准备云上资源基础结构图,是构建总体设计,部署和拓扑结构的好方法,并提供了对该架构的鸟瞰图。但上述工具存在一个共同的不便之处,不能直接将设计好的体系结构图部署成资源实例。为了帮助解决这一问题, OCI Designer Toolkit(OKIT)工具应运而生,帮助客户更快更高效的在OCI上,完成云上资源从设计蓝图到实现应用这一过程。
OCI DesignerToolkit(OKIT)是用于OCI的,基于浏览器的开源设计工具,它可以非常快速地设计完整的基于OCI的基础结构。它是一个拖放应用程序,管理员可以通过该应用程序准备基于OCI的基础结构,也可以将其导出为可以执行的Ansible/Terraform脚本。
OKIT提供一个图形化环境,通过它可以使用Web浏览器创OCI环境。该界面非常简单易用,可快速部署和使用。允许设计人员或架构师使用可视化的手段创建基础结构,然后导出成不同的图片格式,例如:
SVG
png
jpeg
更关键的是,该工具包更进一步,可以将关键属性信息如OCI上的基础设施信息,身份认证信息等,添加到构建基础结构中,并导出为可直接运行的脚步,通过这些脚本可以直接部署成OCI上可供使用的资源。目前OKIT支持的导出脚本的格式包含3种:
Ansible
Terraform
OCI Resource Manager
OCI Designer Toolkit提供了一个简单而简约的界面,该界面可以分为三个部分。
Palette
它位于屏幕的左侧,可以在其中访问不同的OCI组件,代表不同的OCI服务,可以将这些图标拖放到Canvas中以构建基础结构。
Canvas
显示在构建基础结构图的屏幕中心。初始化后,它只会是一个空白的图纸,可以从Palette栏中拖放组件,完成整体基础实施架构图的设计。
Properties
在屏幕的右侧,有“Properties”滑出面板,通过它可以编辑OCI组件的相关属性。
OKIT可以安装在本地电脑或者云上的计算资源实例中。OKIT提供以下三种安装方式,其中DockerCompose/Docker这两种安装方式都需要Docker的容器环境,二者的区别是Docker Compose方式已经在compose文件里定义好了OKIT需要的所有关键信息,而Docker方式需要在启动的时候,在命令行指定相应的关键信息。Vagrant是一种基于虚机环境的安装方式,需要实现安装Vagrant软件以及Oracle VM VirtualBox这样的桌面虚拟化软件:
Docker Compose
Docker
Vagrant
下面以在OCI的计算资源实为例证,介绍OKIT的安装过程:
安装Docker环境
通过以下命令安装并启动Docker进程。
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager --add-repohttps://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum install -y docker-ce
$ sudo systemctl start docker
2. 安装OCI CLI工具,并配置OCI CLI环境信息
通过下面命令安装OCI 命令行工具
$ bash -c "$(curl -L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"复制
运行以下命令,依据提示配置OCI CLI环境信息
$ oci setup config复制
3. 安装Git工具,cloneOKIT Github上的部署脚本
$ sudo yum install -y git
运行以下命令,clone脚本。
$ git clone https://github.com/oracle/oci-designer-toolkit.git复制
进入脚本目录,build OKIT镜像。
$ cd oci-designer-toolkit复制
$ sudo docker build --tag okit --file./containers/docker/Dockerfile --force-rm ./containers/docker/
4. OKIT镜像构建成功,通过以下命令启动OKIT容器。
$ sudo docker run -d --rm -p 80:80 \
--name okit \
--hostname okit \
-v~/.oci:/root/.oci \
-v`pwd`/okitweb:/okit/okitweb \
-v`pwd`/visualiser:/okit/visualiser \
-v`pwd`/log:/okit/log okit
5. 浏览器访问OKIT Web界面
配置OCI 资源的Security List运行被互联网访问,通过下面地址访问OKIT页面。
http://<OCI示例公网IP>/okit/designer
通过部署OKIT,我们可以在OKIT上设计OCI上的部署架构,设计完成之后可以将设计蓝图导出可以执行脚本脚本,完成OCI云上资源的部署。
关于OCI Designer Toolkit OKIT更多信息可以访问:
https://github.com/oracle/oci-designer-toolkit

作者简介
向志华,甲骨文云架构团队高级咨询顾问,专注 Application PaaS 产品及服务,同时关注Docker容器产品及Kubernetes容器调度产品方向。13年IT行业从业经验,擅长J2EE产品架构及开发,参与过Openstack相关产品研发工作。您可以通过george.xiang@oracle.com,与他联系。
扫描二维码或点击阅读原文
快速预约精选云解决方案演示