文档章节

简单定制CoreOS系统

风刃
 风刃
发布于 2014/09/11 23:34
字数 617
阅读 744
收藏 5

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

    刚开始学习研究CoreOS,感觉有点烦,下边这个分享也是针对所烦的两点做的一点修改和定制。

    首先安装系统到硬盘上时需要下载一个coreos_production_image.bin.bz2,这种需要下载安装的程序多半需要看脸(Docker也是如此)

    其次,安装后无法登陆到系统中。(可能没找到方法)因为需要在安装前配置连接验证,包括用户名及密码,安装完成如果没有配置就悲催了。当然,可以通过安装时指定配置文件定制系统的配置和信息。

  • 解包与压缩需要的工具
squashfs-tools cpio gzip mkisofs

下载官方的iso安装镜像

coreos_production_iso_image.iso

  • 解压

创建工作目录(所有的工作目录都在/tmp下)

mkdir orig new sq_old sq_new cpio

 (因为挂载的iso和squashfs的镜像无法直接修改,需要全部拷贝)

挂载并将iso目录中的所有内容

mount /var/www/html/coreos_production_iso_image.iso orig/ &&  cp -r orig/* new/

解压cpio.gz

cd new/coreos/  && gzip -d cpio.gz 
cd /tmp/cpio && cpio -i < ../new/coreos/cpio

挂载拷贝squashfs

mount -o loop -t squashfs usr.squashfs /tmp/sq_old/
cp -r sq_old/* sq_new/
  • 修改定制信息

这个根据自己的需求定制

我修改的配置默认配置文件(默认一个密码)和安装的脚本(可以指定下载源)。

cat share/coreos/coreos-config.yaml
#cloud-config
coreos:
    units:
      - name: etcd.service
        command: start
users:
  - name: core
    passwd: $1$8Kxo5IMS$dGqEN0MlLgLELsQ/NpBHp/

根据自己的需求,修改coreos中的安装脚本和配置文件。保证自己在批量部署过程中可以很方便的定制。

定制好后,打包封装成iso。

  • 打包

不可以覆盖,只能创建新的,所以保证cpio目录中没有usr.squashfs

cd /tmp && mksquashfs sq_new/ cpio/usr.squashfs

使用cpio打包生成启动镜像。需要添加newc tag 否则无法解压。cpio目录下除了usr.squashfs 和etc的空目录

cd /tmp/cpio && find .| cpio -H newc -o > ../new/coreos/cpio

压缩cpio

cd /tmp/new/coreos/ && gzip cpio

制作iso镜像。

cd /tmp/new && mkisofs -v -l -r -J -o /tmp/coreos.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table .


定制好的ISO镜像链接:http://pan.baidu.com/s/1eQvMUQm

默认生成的用户名和密码:core    password

可以使用-u参数指定自己的下载url

需要 coreos_production_image.bin.bz2 和 coreos_production_image.bin.bz2.sig 放到HTTP服务器上。


如果有疑惑、建议或者发现纰漏,请回帖或点击加入【Docker部落

© 著作权归作者所有

风刃
粉丝 1
博文 1
码字总数 617
作品 0
海淀
系统管理员
私信 提问
CoreOS实践指南(九):在CoreOS上的应用服务实践(上)

截止到这里,CoreOS的基础部分已经全部介绍完毕,回头看看,其实大部分的篇幅都用在了介绍CoreOS内置服务的使用上。这些内置的服务,一方面来说为集群中的服务管理和通信提供了一种简单和规范...

Freyr
2015/05/16
272
0
内网esxi主机上安装CoreOS虚拟机

CoreOS是一个为专门运行容器而设计的轻量级linux发行版,旨在通过轻量的系统架构和灵活的应用程序部署能力简化数据中心的维护成本和复杂度。它没有包管理工具,运行容器化应用以提供服务;默...

hiwill
2018/10/19
270
0
Rocket 希望以硬件隔离引领潮流,Docker说” NO”

下一代CoreOS的容器使用基于Intel的硬件隔离来增加安全性。其他容器系统也会如法炮制吗? 既然Open Container Initiative(OCI)承诺让所有的容器都殊途同归, 但是除了Docker,其他容器技术...

Mrexamo
2015/08/26
596
0
OSC 第 73 期高手问答 — 应用容器化和 CoreOS 系统

OSCHINA 本期高手问答(5月19日- 5月25日)我们请来了 @Freyr(林帆)为大家解答关于应用容器化和 CoreOS 系统方面的问题。 林帆,ThoughtWorks 成都 Cloud&DevOps 小组成员,目前主要研究内...

叶秀兰
2015/05/19
3.5K
13
Linux黑客车库创业:服务器操作系统CoreOS颠覆互联网

车库创业似乎已成硅谷创业文化的重要组成部分,亚马逊、Google、Youtube、苹果等都是在车库中赚得第一桶金,亚马逊颠覆了书店零售业,Google颠覆了搜索,Youtube颠覆了视频,苹果颠覆了移动互...

林纳斯脱袜子
2013/08/26
352
2

没有更多内容

加载失败,请刷新页面

加载更多

dynamic-connectivity 动态连通性问题之 quick-union 算法

quick-union 的思想是:若对象 p 的 root_id 和对象 q 的 root_id 相等,则认为 p 和 q 连通。 若要将对象 p 和对象 q 连通(已知两对象未连通),则将 p 的 root_id 的值设为 q 的 root_id ...

Phpythoner_Alei
今天
40
0
OSChina 周六乱弹 —— 实在选不出来就唱国歌

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享阿冗的单曲《你的答案》。--祝大家在2020年都找到自己答案。 《你的答案》- 阿冗 手机党少年们想听歌,请使劲...

小小编辑
今天
25
1
Maven打包可执行Jar包的方法

在使用Java开发中,会使用到将工程打包成可执行的jar包的情况,那么在maven中怎么将项目中的依赖包都添加到jar中呢。在pom.xml中添加一下插件: <build><plugins><plugin><ar...

CapJes
今天
13
0
使用vue 开发地图类系统(openlayers.js)的注意。

使用vue 开发地图类系统的注意。 1、使用地图应该创建的对象 少使用 vue 的data 和计算属性(comments)存数据或是vuex。 为什么要要注意这个问题呢? 答:这个就要了解到vue的实现原理 。原理...

DY-Tao
昨天
10
0
web移动端学习:高德地图demo(一)

在高德地图开发中申请开发者资格,然后在控制台中新建应用,获得KEY; 新建模板HTML文件; <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>地图demo</title><scri......

dxiya
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部