码迷,mamicode.com
首页 > 其他好文 > 详细

virtualbox上硬盘安装coreos

时间:2015-07-05 13:41:44      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:

网址:

http://www.serfdom.cn/index.php/archives/4/

http://www.360doc.com/content/14/1118/10/15077656_426071504.shtml

 

安装过程比较麻烦,如果仅仅按照官方文档 Installing CoreOS to Disk ,下载iso并且启动,只能得到一个完全无法登录的系统,每次重启之后都会初始化,因为ISO仅仅加载在RAM上。需要将其安装到硬盘中。本文我带领代价在virtualbox虚拟机上安装coreos。

步骤1 : 解决FQ问题

安装过程需要下载coreos镜像。我在百度网盘提供了安装过程中需要的所有文件: http://pan.baidu.com/s/1sjNSJFJ, 因此你需要做的就是下载这四个文件,然后放在一个你可以简单的wget到的位置。例如,我就是在virtualbox上面,虚拟了一个ubuntu,设置 网络为网桥,假设ip为192.168.1.130,然后安装一个apache2,并且将其放在/var/www/html下面,

root@ubuntu:/var/www/html# ls 
444.5.0 coreos-install coreos_production_image.bin.bz2 id_rsa.pub static.network 
cloud-config.yaml coreos-install2 coreos_production_image.bin.bz2.sig index.html

, 然后你再在其他的机器上,执行 wget http://192.168.1.130/cloud-config.yaml, 如果下载没有问题,那么步骤一算是完成了。

步骤2 : 配置cloud-config.yaml

安装过程中最重要的就是修改cloud-config.yaml。我在步骤一已经为大家提供了一个配置模板,大家需要修改的是`ssh-authorized-keys`对应的值。这个是你登录coreos的跳板机ssh的公钥,可以通过如下步骤简单的生成:
root@ubuntu:~# ssh-keygen
enter
enter
...

中间需要选择的步骤,全部默认回车完成。然后在当前用户的~/.ssh/下面生成了id_rsa id_rsa.pub2个文件,将id_rsa.pub里面的加密串贴在ssh-authorized-keys对应的值上。
其次是要保证 static.network 对应的name和network跟cloud-config.yaml中一致。例如我的配置:

#cloud-config

hostname: coreos1

coreos:
  etcd:
    addr: $private_ipv4:4001
    peer-addr: $private_ipv4:7001
  units:
    - name: etcd.service
      command: start
    - name: fleet.service
      command: start
    - name: static.network
      content: |
        [Match]
        Name=enp0s8

        [Network]
        Address=192.168.1.120/24
        Gateway=192.168.1.254
        DNS=8.8.8.8
        DNS=8.8.4.4
users: 
    - name: core 
        ssh-authorized-keys: 
    - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDrBCWmYcPhOtsTYtgM7pF4cv5apCP/LHW7ZMZUZO5AZHaDG61fXGmgFc5Sy8t9yRV40/QLGE1BcwRiGVxx1ChPRzFB9/qSzxyzfErt0WGys44ly/d1KvKFNEhZif0hMtKcfGwntI8pILeaRX8pDK6Vct2u3oabPgvFZJZUUCcjv4Sf8ROjV9E8BVjtQNv7iNwgsDEP+Sgdhq/bsR+Nhcp6VX49rbT 
S+jEuAu+6EwvfU0ICv6S0txZn3x1W9b4XG9YfusRXNocNmtPjFsOCpL2hFwJk8mhorQFBLymOttzNcsW6WxuPyLScAbbrQBmgf/ej8GWw61fwKWba77acBNFt core@localho 
st 

    - groups: 
        - sudo 
        - docker

步骤3 : 安装

在virtualbox新建一个虚拟机,网络》连接方式 : 桥接网卡,然后存储》存储树》Controller: IDE》添加盘片》选择磁盘》选择你刚才下载的coreos_production_iso_image.iso, 最后点击保存
启动刚才添加的虚拟机,是一个core账号所在的用户环境,可以如下直接切换到root

sudo -i 
  • 1, wget http://192.168.1.130/cloud-config.yaml, 因为已经在前面配置好了, 因此你什么都不需要修改(集群环境下,需要修改为不同的网络配置,修改ip,下同)
  • 2, wget http://192.168.1.130/static.network, 并且
mv static.network  /etc/systemd/network/
systemctl restart systemd-networkd 
  • 3, wget http://192.168.1.130/coreos-install ,修改里面207行的BASE_URL为你Apache2所在的机器ip,这种方式也有另外的好处。 你也可以直接修改coreos自带的coreos-install的BASE_URL:
cp /usr/bin/coreos-install coreos-install 
chmod +x coreos-install
vim 修改BASE_URL (简单点,没有sed了)
  • 4, 安装,
./coreos-install -d /dev/sda -C stable -c ./cloud-config.yaml

如果无意外,最后会显示 成功安装的英文巴拉巴拉。

  • 5, 登录
    安装完成之后, 需要验证下是否正确安装到磁盘上。 首先停止coreos虚拟机,然后从 设置》存储》controll IDC 》 删除前面步骤选择的iso,这个时候,你就是直接从硬盘启动了。
    然后启动虚拟机。
    启动之后,如果没有意外,就会显示:
...
coreos1 login:
this is coreos1

然后,切换到你的跳板机,ssh core@192.168.1.120

core@ubuntu:~$ ssh core@192.168.1.120 
Last login: Mon Dec 1 00:37:45 2014 from 192.168.1.130 
CoreOS (stable) 
core@coreos1 ~ $

安装成功

步骤4 : 再次修改cloud-config.yaml

如果你对当前coreos的配置不满意,那么你可以继续修改它(当然也有土豪会选择直接从新安装)

  • 1, 停止coreos,插入coreos iso盘片(步骤3),并且重新启动
  • 2, 修改
[core@localhost ~]$ sudo -i 
[root@localhost~]# mount -o subvol=root /dev/sda9 /mnt 
[root@localhost ~]# vim /mnt/var/lib/coreos-install/user_data
  • 3, 停止虚拟机,拔掉光盘,启动就能看到你的配置是否生效。

virtualbox上硬盘安装coreos

标签:

原文地址:http://www.cnblogs.com/lvfeilong/p/ewrr234.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!