CoreOS具体安装方法

CoreOS是一个基于Linux 内核的轻量级操作系统,为了计算机集群的基础设施建设而生,专注于自动化,轻松部署,安全,可靠,规模化,CoreOS作为Docker生态圈中的重要一员,日益得到各大云服务商的重视,发展风头正劲,下面为大家分享一下CoreOS具体安装方法。

img

CoreOS宣称最小化的定制版linux系统:

  1. Linux内核

    Linux运行所需存在两个ROOT分区,一个被用作启动分区,一个被用作更新分区更新分区在更新完成后,自动重新启动系统,当前机器不需要从负载集群中移除,为了保证其它应用程序不被打断,会通过Linux cgroup限制更新过程中的磁盘、网络等IO使用。

  2. systemd

    作为默认系统和服务管理器,其优秀特性:

    支持并行化任务;
    同时采用 socket 式与 D-Bus 总线式激活服务;
    按需启动守护进程(daemon);
    利用 Linux 的 cgroups 监视进程;
    支持快照和系统恢复;
    维护挂载点和自动挂载点;
    各服务间基于依赖关系进行精密控制。
    
  3. root分区被设计成只读

    root分区被设计成只读,用以保证数据的一致性和更新可用

  4. CPU、IO等资源隔离

    自然要祭出容器(Container)来,CoreOS很明智使用Docker作为容器管理器用以构建、发布应用,从这个层面来看,一个应用其实就是一个容器。

  5. etcd组件负责服务发现和配置共享

    采用Raft分布式一致性协议算法,承担起,组件之间服务通信使用。很自然的,容器(Container)之间应用、服务的伸缩,就显得很简单了。其基因层面支持集群特性,当然,你也可以解读为云环境的支持。

一:准备SSH公钥/私钥 或 密码

SSH公钥/私钥制作 :在其他linux客户机机上执行 ssh-keygen : [root@localhost ~]# ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa):Created directory '/root/.ssh'.Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /root/.ssh/id_rsa.Your public key has been saved in /root/.ssh/id_rsa.pub.The key fingerprint is:d3:b5:fe:05:81:55:4b:6c:be:08:aa:28:7c:0d:e4:9d root@localhost.localdomainThe key's randomart image is:+--[ RSA 2048]----+| oo.|| o.o.|| o +. || . . o . o || o . S o o o .|| o E o . . o || . + . . .|| o o o . . || o . |+-----------------+ 中间需要选择的步骤,全部默认回车完成。然后在当前用户的~/.ssh/下面生成了id_rsa id_rsa.pub2个文件,将id_rsa.pub里面的加密串贴在下一步的密钥版 cloud-config.yaml文件 ssh-authorized-keys 对应的值上。

密码制作 :在其他linux客户机机上执行 :

[root@localhost ~]# openssl passwd -1 > 1234.txtPassword: [输入密码]Verifying - Password: [再次输入密码][root@localhost ~]#[root@localhost ~]# cat 1234.txt$1$ywWEh18N$JPwtTtm54yxmEDNegE5.Z0 将1234.txt里面的加密串贴在下一步的 密码版 cloud-config.yaml文件 passwd 对应的值上。

二:准备cloud-config.yaml文件

SSH密匙版本:

#cloud-config

hostname: myhost

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=eno16777736

[Network] Address=192.168.31.122/24 Gateway=192.168.31.1 DNS=223.5.5.5 DNS=223.6.6.6 users: – name: core ssh-authorized-keys: – ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC8C++zc+hDTWOe5DV+WnEa5/Y+dWN1UDVKX3pBYGHbNCYObpJdYpnaHbe+3NQijt15ZAYqOh6fYJlTx8L08z/bJvmj2n+N0hgO3onB4JsH70bSAL41FPzel7BKFnDlvJ1s3GJahdVzBsrDrCwzM96ofUcImtwji0oWPT3bMApkKa8e2Ty5+WwBuxFKDq/MJVqBK4yJmBnylGzmEyyRnlVpQjsDGdbYjDtHU1ECU+H4oSE7o0cSBQntQeH0ckHMU9cnwnLO8IoHIYad4oY/u+UvLq+58kO85ltioaEmTPkWBIzSB6hP/ghHrQUN/Kf22ECgD5H9CaDDGKHrlwJUZDq1 root@kali

– groups: – sudo – docker

密码版本:

#cloud-config

hostname: myhost

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=eno16777736

[Network] Address=192.168.31.122/24 Gateway=192.168.31.1 DNS=223.5.5.5 DNS=223.6.6.6 users: – name: core passwd:$1$ywWEh18N$JPwtTtm54yxmEDNegE5.Z0 – groups: – sudo – docker

三:下载及安装

现在我们已经编写好 “cloud-config.yaml”,可以下载并安装CoreOS了。

ISO下载链接:http://stable.release.core-os.net/amd64-usr/current/coreos_production_iso_image.iso

用ISO盘启动,会自动进入bash命令行,用户为core。注意此时系统只是加载到RAM而已,并未安装。

如果想转到root身份对当前配置、网络等操作,sudo -i 。

下载 制作好的cloud-config.yaml 文件 :

wget http://192.168.220.137:8080/cloud-config.yaml

此刻准备工作已经完成了,如果想要安装到sda这块硬盘上。

[core@server ~]$ sudo coreos-install -d /dev/sda -C stable -c ./cloud-config.yaml 其中: -d 指定目标设备 -C 指定版本,这里我用stable -c 指定配置文件,cloud-config.yaml

执行安装命令后,工具会自动到网站下载CoreOS的硬盘镜像,并安装到硬盘上面。 看到这句说明安装成功了: Success! CoreOS stable 835.13.0 is installed on /dev/sda

如无意外,安装完了就可以重启,并可通过之前配置的SSH客户端机器登录和之前设置的密码直接登录。 [root@localhost ~]# ssh core@192.168.31.122The authenticity of host '192.168.220.143 (192.168.220.143)' can't be established.ED25519 key fingerprint is fb:ba:38:e3:bc:14:21:33:0b:0e:46:a3:62:f2:9a:1f.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added '192.168.220.143' (ED25519) to the list of known hosts.CoreOS stable (835.13.0)core@myhost ~ $

原创文章,作者:晴川运维,如若转载,请注明出处:https://baike.qcidc.com/17218.html

(0)
晴川运维晴川运维
上一篇 2025年10月27日
下一篇 2025年10月27日

相关推荐

  • Linux下XWiki的安装和使用

    XWiki是一个由Java编写的基于LGPL协议发布的开源wiki和应用平台,是一个具有强大的扩展功能(如在页面嵌入脚本),集成插件以及高度模块化架构的专业wiki系统,下面为大家…

    Linux系统 2025年6月8日
  • Linux 系统中如何输入emoji

    emoji 是在 Unicode 字符空间里的有趣表情图,它们已经风靡于整个互联网。emoji 可以用来在社交媒体上表示自己的心情状态,也可以作为重要文件名的视觉标签,总之它们的各…

    Linux系统 2025年6月8日
  • KVM常用命令

    KVM是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核心架构和处理器规范模块。使用 KVM 可允许多个包括 Li…

    Linux系统 2025年10月26日
  • Kubernetes共享Ceph存储具体方法

    Kubernetes pod 结合Ceph rbd块设备的使用,让Docker 数据存储在Ceph,重启Docker或k8s RC重新调度pod 不会引起数据来回迁移。 工作原理无…

    Linux系统 2025年10月19日
  • w10中安装Linux Mint具体方法

    Linux Mint(以下简称Mint)是一种Linux发行版,类似于我们常见的Ubuntu或者Debian。它是在基于Debian和Ubuntu的基础上再进行开发,因此,它的发布…

    Linux系统 2025年6月8日
  • tomcat 性能优化

    tomcat默认参数是为开发环境制定,而非适合生产环境,尤其是内存和线程的配置,默认都很低,容易成为性能瓶颈,本篇文章重点为大家讲解一下tomcat 性能优化。 Tomcat连接器…

    Linux系统 2025年10月6日
  • 详解Linux内核之脏页跟踪

    Linux内核由于存在page cache, 一般修改的文件数据并不会马上同步到磁盘,会缓存在内存的page cache中,我们把这种和磁盘数据不一致的页称为脏页,脏页会在合适的时…

    Linux系统 2025年7月10日
  • 深入探究一下Nginx如此之快的原因

    Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器 ,也是一个 IMAP/POP3/SMTP 代理 服务器 。 Nginx 是由 Igor Sys…

    Linux系统 2025年6月10日
  • Linux下安装PHP的PDO

    PDO(PHP Data Objects)是一种在PHP里连接数据库的使用接口。PDO与mysqli曾经被建议用来取代原本PHP在用的mysql相关函数,基于数据库使用的安全性,因…

    Linux系统 2025年6月26日
  • 简单聊一下Unix 和 Linux区别

    UNIX 与 Linux 之间的关系是一个很有意思的话题。在目前主流的服务器端操作系统中,UNIX 诞生于 20 世纪 60 年代末,Windows 诞生于 20 世纪 80 年代…

    Linux系统 2025年9月24日

发表回复

登录后才能评论