`
wiselyman
  • 浏览: 2096389 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
Group-logo
点睛Spring4.1
浏览量:82512
74ae1471-94c5-3ae2-b227-779326b57435
点睛Spring MVC4...
浏览量:130904
社区版块
存档分类
最新评论

吐血力作:平台云deis之安装deis平台

    博客分类:
  • PaaS
 
阅读更多

吐血力作:平台云deis之准备

吐血力作:平台云deis之安装CoreOS集群

吐血力作:平台云deis之安装deis平台

吐血力作:平台云deis之deis客户端使用 

 

1. 编译deisctl

这步可以放在CoreOS集群安装之前,若你采用的是deis1.0.2我已将编译好的放在此处。

1.1 下载deis1.0.2

  • 地址:https://github.com/deis/deis/archive/v1.0.2.zip
  • 安装go语言并配置export GOPATH=/root/workspace
  • 将文件解压在/root/workspace/src/github.com/deis目录下,注意此deis为deis用户不是deis平台,解压后是deis/deis
  • 安装godep,在国内无法安装godep,将编译好的godep放再此下载,放置在/usr/local/bin
  • cd /root/workspace/src/github.com/deis/deis
  • make -C deisctl build
  • 这时候编译好的deisctl在/root/workspace/src/github.com/deis/deisctl目录下

2. 安装deis平台

2.1 pull deis docker images

用工作机pull deis平台的镜像,以备以后内网使用,关于如何建立docker私有registry和将docker image转成tar包方便以后复制到非互联网机器请参照 《打包docker镜像并使用文件导入 》 《建立docker私有库(docker registry) 》。 下面是需要pull的镜像列表,除了dies/builder需要自己编译,其余可使用官方版本。

deis/logger         docker pull deis/logger:v1.0.2

deis/logspout       docker pull deis/logspout:v1.0.2

deis/controller         docker pull deis/controller:v1.0.2

deis/builder        docker pull deis/builder:v1.0.2  自己编译

deis/data       docker pull deis/data

deis/base       docker pull deis/base

deis/router     docker pull deis/router:v1.0.2

deis/publisher      docker pull deis/publisher:v1.0.2

deis/cache      docker pull deis/cache:v1.0.2

deis/registry       docker pull deis/registry:v1.0.2

deis/database       docker pull deis/database:v1.0.2

deis/store-metadata     docker pull deis/store-metadata:v1.0.2

deis/store-gateway      docker pull deis/store-gateway:v1.0.2  

deis/store-monitor      docker pull deis/store-monitor:v1.0.2  

deis/store-daemon   docker pull deis/store-daemon:v1.0.2  

ubuntu-debootstrap  docker pull ubuntu-debootstrap

progrium/cedarish docker pull progrium/cedarish 

2.2 将这些镜像push到本地docker registry

举下面一例,所有都要操作

docker tag img_id localhost:5000/deis/base

docker push localhost:5000/deis/base

2.3 编译deis/builder

2.3.1 修改dies/builder的Dockerfile

  • 修改安装etcdctl路径为内网地址RUN curl -sSL -o /usr/local/bin/etcdctl http://192.168.1.103/opdemand/etcdctl-v0.4.6
  • 修改安装confd路径为内网RUN curl -sSL -o /usr/local/bin/confd http://192.168.1.103/opdemand/confd-v0.5.0-json
  • 注释下载progrium_cedarish_2014_10_01.tar
# HACK: import progrium/cedarish as a tarball
# see https://github.com/deis/deis/issues/1027
#RUN curl -#SL -o /progrium_cedarish.tar \
#    http://192.168.1.103/opdemand/progrium_cedarish_2014_10_01.tar 

2.3.2 修改slugrunner的Dockerfile

第一句修改为FROM 192.168.1.103:5000/progrium/cedarish:latest

2.3.3 修改slugbuilder的Dockerfile

第一句修改为FROM 192.168.1.103:5000/progrium/cedarish:latest

2.3.4 修改slugbuilder/builder/install-buildpacks

这个文件里会下载外网的git,所以需要你将github上的git克隆到本地的git server上,本文使用gitblit,修改如下:

download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-multi.git         9350571
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-ruby.git           v127
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-nodejs.git         v60
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-java.git           658ecd2
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-gradle.git         743f73c
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-grails.git         1ef927d
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-play.git           ceede86
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-python.git         v52
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-php.git            v43
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-clojure.git        bc2bfd8
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-scala.git          v41
download_buildpack http://admin@192.168.1.110:8080/r/heroku-buildpack-go.git             b261aab

2.3.4.1 针对java的修改

对于heroku-buildpack-java,当使用buildpack发布java程序的时候会从外网下载JDK和maven等,这时候需要下载jdk和maven放在内网,我们这时候也需要修改hero-buildpack-java的代码。

  • /bin/common:mavenUrl="http://192.168.1.103/maven/maven-${mavenVersion}.tar.gz"
  • /bin/compile
  • 此时java的git版本是658ecd2,如上。

2.3.5 deis/builder

  • make build
  • push到本地docker registry

2.3.6 安装deis平台

2.3.6.1 修改deisctl/units下的服务

  • 修改所有涉及ubuntu-debootstrap为192.168.1.103:5000/ubuntu-debootstrap
  • 其余镜像相关的无须修改,因我在每台cloud config里的get_image脚本中已修改。

2.3.6.2 上传units目录到/home/core/.deis目录

2.3.6.3 上传deis.pub到/home/core/.ssh目录

2.3.6.4开始安装

  • chmod 0600 /home/core/.ssh/deis
  • eval `ssh-agent -s`
  • ssh-add ~/.ssh/deis
  • export DEISCTL_TUNNEL=192.168.1.107
  • deisctl config platform set sshPrivateKey=~/.ssh/deis
  • deisctl config platform set domain=wisely.priv
  • deisctl install platform
  • deisctl start platform
  • 成功后效果: 
1
1
分享到:
评论

相关推荐

    node-deis:NodeJS 中 Deis 应用程序的 Deis 绑定

    从您的 Node 应用程序管理 Deis。 npm install node-deis --save 首先创建您的客户。 var NodeDeis = require ( './index' ) ; var client = new NodeDeis ( { controller : 'deis.yourdomain.com' , secure :...

    deis-deployer:如何使用 Deis Controller API 将“Wordpress”模型应用程序部署到 deis 集群的示例

    使用来自 Docker Registry 的 ...获取您的 Deis 集群按照上的说明在您选择的云平台(例如上安装 Deis。 确保通过执行以下操作将用户注册到您的集群: deis register保存您使用过的凭据,稍后您将需要它们将可自定义的

    deis-installation:deis安装文档

    deis-installationdeis离线安装文档(无互联网)特点:离线安装CoreOS集群离线安装deis平台deis使用指南本文使用deis 1.0.2

    machinepack-deis:用于Deis安装的SDK

    用于Deis安装的SDK 安装 $ npm install machinepack-deis 用法 有关此模块的最新用法文档,版本信息和测试状态,请参阅 。 为每台机器生成的手册页包含所有预期输入,可能的退出状态和示例返回值的完整参考。 如果...

    开源PaaS系统Deis.zip

    Deis 是一个 Django/Celery API 服务器、Python CLI 和一组 Chef cookbooks 合并起来提供一个类似 Heroku 的应用平台,用于公有云和私有云。Deis 的口号是:Your PaaS. Your Rules.Deis 是一个开源的 ... 标签:Deis

    deis-accounts:Deis 的多账户管理

    安装 asciidoc -accounts 需要asciidoc和xmlto工具。 $ apt-get install asciidoc xmlto || # on Ubuntu Linux, or > brew install asciidoc xmlto # on Mac OS X with Homebrew $ make && sudo make install 用法...

    Deis文档翻译.pdf

    Deis文档翻译.pdf Deis 是一个 Django/Celery API 服务器、Python CLI 和一组 Chef cookbooks 合并起来提供一个类似 Heroku 的应用平台,用于公有云和私有云。

    Deis-Documentation:Deis文档翻译

    Docker是云计算领域的新起之秀,CoreOS又在Docker的基础上演变为一个轻量级容器化Linux发行版,而Deis结合了Docker和CoreOS,是目前最被看好的开源PaaS平台。Deis系统文档在翻译校对完成后将会发布到DockerOne上,...

    控制器:Deis工作流控制器(API)

    Deis(发音为DAY-iss)工作流是一个开源的平台即服务(PaaS),可在任何群集中添加易于开发的层,从而可轻松在自己的服务器上部署和管理应用程序。 有关Deis工作流程的更多信息,请访问项目主页面,为 。 我们...

    deis-backup-restore:备份和还原Deis数据

    Deis备份/还原 Deis Backup / Restore提供了一种简单的方法来备份和还原Deis使用的网关和etcd密钥。 特征 备份和还原etcd 备份和还原注册表和数据库 备份和还原存储数据(日志) 高度可配置 与任何s3兼容商店兼容 ...

    systemd-go:go 中的 deis systemd 脚本

    这只是为了提高服务的当前输出并提供一种自定义平台的方法 从: [Service] EnvironmentFile=/etc/environment TimeoutStartSec=30m ExecStartPre=/bin/sh -c "docker inspect deis-builder-data >/dev/null 2>&1 ...

    ghost-deis:用于Deis部署的Ghost设置

    快速开始安装 确保已安装Node.js-我们建议您使用最新的Node v0.10.x版本。 Ghost还与Node v0.12和io.js v1.2兼容,但是请注意,这些版本很可能会遇到安装问题。 可能含有坚果。 请使用寻求帮助。 下载的Ghost 在...

    docker-ghost:用于Deis部署的Ghost实例

    用于Deis部署的Ghost实例 从dockerfile / ghost构建 更新到node:latest 更新生产中的数据库规则,或更新deis config:set PG ...变量以连接到Postgres实例。

    postgres:Deis Workflow使用的PostgreSQL数据库

    Deis(发音为DAY-iss)工作流是一个开源的平台即服务(PaaS),可在任何群集中添加易于开发的层,从而可轻松在自己的服务器上部署和管理应用程序。 有关Deis工作流程的更多信息,请访问项目主页面,为 。 我们...

    hacking-on-deis-workshop:在 AWS 上自定义 Deis 集群的研讨会

    入侵 Deis 工作室 在本实验中,我们将搭建本地开发环境,将 Deis 1.5.1 部署到 AWS,并自定义路由器组件以响应新端点。 工作站设置 要部署DEIS,我们只需要deisctl和deis客户。 然而,要破解 Deis,我们需要一个合适...

    workflow:Hephy Workflow - Deis Workflow 的开源分支 - Kubernetes 的开源 PaaS

    Hephy 工作流程 Hephy Workflow是 Deis Workflow PaaS 的开源分支。 一些旧的文档和自述文件仍然保留,因此它们可能会引用“Deis Workflow”。 Hephy Workflow 是 Deis Workflow 项目的社区延续,该项目被 Deis 团队...

    docker-mesos-coreos:使用 Deis PaaS 在 CoreOS 上可靠地自动部署 mesos

    与其立即与 haproxy 斗争,而且我主要熟悉并且对在 CoreOS 上运行 Deis 最感兴趣,而是使用 deis-publisher 方法将请求代理到mesos.{domain}和marathon.{domain}使用 deis-路由器。 该项目的持续开发是能够部署和 ...

    builder:Deis Workflow的Git服务器和应用程序构建器

    Deis(发音为DAY-iss)工作流是一个开源的平台即服务(PaaS),可在任何群集中添加易于开发的层,从而可轻松在自己的服务器上部署和管理应用程序。 有关Deis Workflow的更多信息,请访问项目主页面,为 。 我们...

    deis-api-app:一个使用 Deis 控制器 api 部署为 docker 镜像的简单应用程序

    Deis Api 应用程序 与示例一起使用的示例应用程序。 建立和推动形象 将此映像cd构建到此 repo 的根目录,然后: docker build -t <your>/simple-node:latest . docker push <your>/simple-node:latest

Global site tag (gtag.js) - Google Analytics