Packer用于部署OpenStack映像

时间:2017-02-20 12:23:16

标签: json openstack packer openstack-horizon

我正在使用Packer并试图通过编写JSON文件来了解如何创建OpenStack机器映像。我在其中一个OpenStack ubuntu实例上安装了packer,并创建了一个JSON文件,如下所示,用于创建自定义图像。

{
  "builders": [{
  "type": "openstack",
  "identity_endpoint": "http://192.168.8.25:5000/v3/",
  "tenant_name": "admin",
  "domain_name": "Default",
  "username": "admin",
  "password": "adminpass",
  "region": "RegionOne",
  "ssh_username": "root",
  "image_name": "Test image",
  "source_image": "f4dcbbde-b702-4f3c-b5f1-0230ebdf0ed4",
  "flavor": "m1.medium",
  "insecure": "true"
  }]
}

在运行“packer build”时,我收到以下错误

  

openstack:加载扩展时出错:获取http://controller:8774/v2.1/079923bd0ea04700b1b6d7e047139b45/extensions:在8.8.8.8:53上拨打tcp:lookup controller:没有这样的主机。    构建完成但没有创建工件。

任何人都可以,请查看错误并帮我解决..

3 个答案:

答案 0 :(得分:1)

很可能您的OpenStack系统配置错误或您的工作站/笔记本电脑。

Packer正在尝试向OpenStack查询它支持的扩展程序,并以某种方式询问公共Google DNS(8.8.8.8:53)如何解析显然不是正确(公共)DNS名称的controller

检查来自openstack extensions list -f yaml的回复并检查您的DNS设置。如果您找不到任何问题,请提出OpenStack系统支持的问题。

答案 1 :(得分:0)

以下是使用Packer为OpenStack创建centos图像的JSON代码。

{

"建设者":[{

"输入":" openstack",

" identity_endpoint":" http://192.168.8.25:5000/v3/",

" tenant_name":" admin",

" domain_name":"默认",

"用户名":"管理员",

"密码":" MiracleIT",

" region":" RegionOne",

" ssh_username":" centos",

" image_name":" CentOS 7服务器Cloud-Init",

" source_image":" 8cbff151-05bc-4ae5-babc-6be5acb7fee4",

"味道":" m1.medium",

" networks":[" 6e4c7854-a817-4022-b5c5-20d72373f469"],

"不安全":" true"

}]

}

答案 2 :(得分:0)

使用JAVA(OpenJDK)创建ubuntu映像的代码,Tomcat使用打包器..

{

"建设者":[{

"输入":" openstack",

" identity_endpoint":" http://192.168.8.25:5000/v3/",

" tenant_name":" admin",

" domain_name":"默认",

"用户名":"管理员",

"密码":" MiracleIT",

" region":" RegionOne",

" ssh_username":" ubuntu",

" image_name":" UBUNTU 14.04 JAVA TOMCAT Server PACKER",

" source_image":" 913ef163-e2aa-4161-85d4-16a9924abfa1",

"味道":" m1.small",

" networks":[" 6e4c7854-a817-4022-b5c5-20d72373f469"],

"不安全":" true"

}],

"供应商":[{     "输入":" shell",     "内联":[       "睡30",

" sudo apt-get update",

" sudo apt-get install -y openjdk-7-jre", " sudo apt-get install -y tomcat7"     ]   }]

}