coreos-on-do, 在 Digital Ocean 上,安装 CoreOS的脚本

分享于 

5分钟阅读

GitHub

  繁體 雙語
Script to install CoreOS on Digital Ocean
  • 源代码名称:coreos-on-do
  • 源代码网址:http://www.github.com/ibuildthecloud/coreos-on-do
  • coreos-on-do源代码文档
  • coreos-on-do源代码下载
  • Git URL:
    git://www.github.com/ibuildthecloud/coreos-on-do.git
    Git Clone代码到本地:
    git clone http://www.github.com/ibuildthecloud/coreos-on-do
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/ibuildthecloud/coreos-on-do
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    这个项目现在已经正式过时了,因为现在 Digital Ocean 支持原生的CoreOS CoreOS 上

    这是在 Digital Ocean 上设置 CoreOS的脚本。 它通过使用kexec将 CoreOS 加载到内存中。 然后这个脚本使用普通的CoreOS 原始映像来创建磁盘,另外创建一个名为DOROOT的新分区,我们在其中安装一个小型的Ubuntu安装来。

    droplet启动droplet提供内核会找到小型Ubuntu安装将立即进入 CoreOS,并使用 CoreOS 内核和虚拟硬盘重新加载环境。 之后是 100% CoreOS。

    安装

    从 Ubuntu 14.04 x64液滴开始。 我已经在 sfo1,nyc2,sgp1,lon1和ams2区域测试 512mb。 你必须用SSH密钥创建 droplet。 SSH密钥很重要,因为它是如何登录到 CoreOS 安装中的。 启动运行后

    
    wget https://raw.githubusercontent.com/ibuildthecloud/coreos-on-do/master/coreos-on-do.sh
    
    
    chmod +x coreos-on-do.sh
    
    
    ./coreos-on-do.sh
    
    
    
    

    那就会运行大量的东西然后重启液滴。 你将看到的最后一行是 Rebooting。 重启后需要几分钟才能安装。 你可以转到 Digital Ocean 控制台和 tail /var/log/coreos-install.log 来查看发生了什么。 安装完成后,它将再次重新引导。 如果一切都很好,你应该能够进入你新安装的CoreOS。 记住,你需要与核心用户SSH而不是。

    用法
    coreos-on-do.sh -h
    Usage:./coreos-on-do.sh [-C channel] [-c cloud config] [-V version]
    Options:
     -C CHANNEL CoreOS release, either alpha, beta, or stable, default: alpha
     -c CLOUD_CONFIG Path to cloud config or a http(s) URL
     -V VERSION Version to install, default: current

    所有选项都可以通过 环境变量 设置,( 频道,CLOUD_CONFIG,版本)。

    云配置

    云配置插件是配置服务器的主要方式。 如果使用 -c 选项或者 CLOUD_CONFIG 环境变量,则在安装完成后,将在 /var/lib/coreos-install/user_data 处安装云配置文件。 你可以修改该文件,如果你希望在安装后更改某些 Bootstrap 配置。

    自动化

    如果你刚刚部署了一个全新的droplet,你可以运行一个命令来通过SSH自动部署 CoreOS。

    
    curl -sL https://raw.githubusercontent.com/ibuildthecloud/coreos-on-do/master/coreos-on-do.sh | ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -l root <IP> VERSION=current CHANNEL=alpha CLOUD_CONFIG=http://.../cloud-config.yml bash
    
    
    
    

    所有 环境变量 ( 版本,频道,CLOUD_CONFIG ) 都是可选的。 为了提供配置配置,它可以是一个 http URL或者本地磁盘上的文件。 最简单的事情是在运行脚本之前创建一个 private gist或者scp文件。

    wi - fi网络

    Digital Ocean 使用 static 网络配置( 无 DHCP )。 这个脚本将从最初的Ubuntu安装中复制网络信息到 CoreOS 安装。 支持 private 网络,但目前未测试 IPv6.

    故障排除

    kexec在首次重新启动时挂起

    为了安装 CoreOS,这个脚本需要运行 kexec。 有时第一个kexec会挂起。 这个脚本将打印 Rebooting,但从你的网页控制台,你只会登录和它的挂起。 如果发生这种情况,请先等待 5分钟左右。 有时它只是花费太长时间,由于某些原因,网络控制台被冻结。 如果它仍然没有做什么只是功率循环的液滴,然后重试。 最终它应该能工作。


    相关文章