下载kubernetes

sudo mkdir -p /opt/bin

sudo wget https://storage.googleapis.com/kubernetes/binaries.tar.gz

sudo tar -xvf binaries.tar.gz -C /opt/bin

git clone https://github.com/kelseyhightower/kubernetes-coreos.git

sudo cp kubernetes-coreos/units/* /etc/systemd/system/

启动docker服务

$ sudo vi /etc/systemd/system/docker.service

$ sudo systemctl daemon-reload

$ sudo systemctl restart docker

$ sudo systemctl status docker

启动kubernetes的相关服务

sudo systemctl start apiserver

sudo systemctl start controller-manager

sudo systemctl start kubelet

sudo systemctl start proxy

$ sudo systemctl status apiserver

● apiserver.service - Kubernetes API Server

Loaded: loaded (/etc/systemd/system/apiserver.service; disabled)

Active: active (running) since Mon 2014-09-22 07:00:58 UTC; 5s ago

Docs: https://github.com/GoogleCloudPlatform/kubernetes

Main PID: 1099 (apiserver)

CGroup: /system.slice/apiserver.service

└─1099 /opt/bin/apiserver --address=127.0.0.1 --port=8080 --etcd_servers=http://127.0.0.1:4001 --mac...

Sep 22 07:00:58 core-01 systemd[1]: Starting Kubernetes API Server...

Sep 22 07:00:58 core-01 systemd[1]: Started Kubernetes API Server.

Sep 22 07:00:58 core-01 apiserver[1099]: I0922 07:00:58.466359 01099 apiserver.go:76] No cloud provider specified.

Sep 22 07:00:58 core-01 apiserver[1099]: E0922 07:00:58.470180 01099 healthy_registry.go:77] 127.0.0.1 fai...fused

Sep 22 07:00:58 core-01 apiserver[1099]: I0922 07:00:58.472353 01099 log.go:151] GET /api/v1beta1/services...) 200

Hint: Some lines were ellipsized, use -l to show in full.

创建pod

$cat kubernetes-coreos/pods/redis.json

{

"id": "redis",

"desiredState": {

"manifest": {

"version": "v1beta1",

"id": "redis",

"containers": [{

"name": "redis",

"image": "dockerfile/redis",

"ports": [{

"containerPort": 6379,

"hostPort": 6379

}]

}]

}

},

"labels": {

"name": "redis"

}

}

$ /opt/bin/kubecfg -h http://127.0.0.1:8080 -c kubernetes-coreos/pods/redis.json create /pods

ID                  Image(s)            Host                Labels              Status

----------          ----------          ----------          ----------          ----------

redis               dockerfile/redis    /                   name=redis          Waiting

core@core-01 ~ $ kubecfg list /pods

ID                  Image(s)            Host                Labels              Status

----------          ----------          ----------          ----------          ----------

redis               dockerfile/redis    /                   name=redis          Waiting

在操作过程中发现pod的状态一直为Waiting状态。由于scheduler服务没有启动的原因,目前kelseyhightower/kubernetes-coreos还没有scheduler.service,但已经存在PR。参考这里

core@core-01 /etc/systemd/system $ cat scheduler.service

[Unit]

After=apiserver.service

ConditionFileIsExecutable=/opt/bin/scheduler

Description=Kubernetes Scheduler

Documentation=https://github.com/GoogleCloudPlatform/kubernetes

Wants=apiserver.service

[Service]

ExecStart=/opt/bin/scheduler \

--logtostderr=true \

--master=127.0.0.1:8080

Restart=always

RestartSec=10

[Install]

WantedBy=multi-user.target

启动scheduler.service。

测试redis

$ docker run -t -i dockerfile/redis /usr/local/bin/redis-cli -h 10.1.42.1

10.1.42.1:6379> help

redis-cli 2.8.17

Type: "help @<group>" to get a list of commands in <group>

"help <command>" for help on <command>

"help <tab>" to get a list of possible help topics

"quit" to exit

10.1.42.1:6379> help set

SET key value [EX seconds] [PX milliseconds] [NX|XX]

summary: Set the string value of a key

since: 1.0.0

group: string

10.1.42.1:6379> SET key1 value1

OK

10.1.42.1:6379> help get

GET key

summary: Get the value of a key

since: 1.0.0

group: string

10.1.42.1:6379> GET key1

"value1"

主要参考

[1] https://github.com/kelseyhightower/kubernetes-coreos

[2] https://coreos.com/blog/running-kubernetes-example-on-CoreOS-part-1/

作者:YY哥 
出处:http://www.cnblogs.com/hustcat/ 
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

CoreOS实践(2)—在coreos上安装Kubernetes的更多相关文章

  1. Centos7上安装Kubernetes集群部署docker

    一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...

  2. 【k8s】centos上安装kubernetes,报错Error:docker-ce-cli conflicts with 2:docker-1.13.1-94.gitb2f74b2.el7.centos.x86_64

    使用命令: yum install kubernetes 报错: Error: docker-ce-cli conflicts with :docker--.git07f3374.el7.centos ...

  3. 动手实践:在Windows上安装NumPy、Matplotlib、SciPy和IPython

    参考:http://book.2cto.com/201401/39327.html

  4. 手工在Docker for mac上安装Kubernetes

    此文发布时间比较早,当前已经有更好的办法,请参考网页: https://github.com/AliyunContainerService/k8s-for-docker-desktop 以下为原文 通 ...

  5. Lnmp上安装Yaf学习(二)

    上一节主要实践了在Lnmp上安装Yaf扩展,那么这一节将测试 Yaf 的一个简单demo的运行. 一.通过Lnmp 创建 vhost 文件 [root@localhost yaf-3.0.6]# ln ...

  6. linux(centos8):kubeadm单机安装kubernetes(kubernetes 1.18.3)

    一,kubernetes安装的准备工作: 1,准备工作的各步骤请参见: https://www.cnblogs.com/architectforest/p/13141743.html   2,  ma ...

  7. kubeadm 安装Kubernetes 1.16.3 (CentOS7+IPVS+Calico)

    目录 ·  . 一.更新系统内核(全部节点) ·  . 二.基础环境设置(全部节点) ·  . 1.修改 Host ·  . 2.修改 Hostname ·  . 3.主机时间同步 ·  . 4.关闭 ...

  8. [CoreOS 转载] CoreOS实践指南(五):分布式数据存储Etcd(上)

    转载:http://www.csdn.net/article/2015-01-22/2823659 摘要:在“漫步云端:CoreOS实践指南”系列的前几篇,分别介绍了如何架设CoreOS集群,系统服务 ...

  9. 在CentOS 7.6 以 kubeadm 安装 Kubernetes 1.15 最佳实践

    前言 Kubernetes作为容器编排工具,简化容器管理,提升工作效率而颇受青睐.很多新手部署Kubernetes由于"scientifically上网"问题举步维艰,本文以实战经 ...

随机推荐

  1. Repeater 使用方法

    ItemTemplate: 包含要逐一呈现给数据源中的每个数据项的 HTML 元素和控件 AlternatingItemTemplate: 包含要逐一呈现给数据源中的其他每个数据项的 HTML 元素和 ...

  2. JS,数组小练习

    var arr = [4, 0, 7, 9, 0, 0, 2, 6, 0, 3, 1, 0];要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组 p.p1 { margin: 0.0p ...

  3. mysql innobackupex xtrabackup 大数据量 备份 还原

    大数据量备份与还原,始终是个难点.当MYSQL超10G,用mysqldump来导出就比较慢了.在这里推荐xtrabackup,这个工具比mysqldump要快很多. 一.Xtrabackup介绍 1, ...

  4. [f]动态判断js加载完成

    在正常的加载过程中,js文件的加载是同步的,也就是说在js加载的过程中,浏览器会阻塞接下来的内容的解析.这时候,动态加载便显得尤为重要了,由于它是异步加载,因此,它可以在后台自动下载,并不会妨碍其它内 ...

  5. python 多线程编程

    这篇文章写的很棒http://blog.csdn.net/bravezhe/article/details/8585437 使用threading模块实现多线程编程一[综述] Python这门解释性语 ...

  6. Yii中设置时间分区

    在wamp环境下,运行一个Php yii的项目 出现问题: Use of undefined constant PRC - assumed 'PRC' 检测我的环境 PHP5.3 检测Php.ini中 ...

  7. Dynamic CRM 2013学习笔记(二十八)用JS动态设置字段的change事件、必填、禁用以及可见

    我们知道通过界面设置字段的change事件,是否是必填,是否可见非常容易.但有时我们需要动态地根据某些条件来设置,这时有需要通过js来动态地控制了. 下面分别介绍如何用js来动态设置.   一.动态设 ...

  8. MariaDB远程连接配置

    由于MariaDB是由MySQL的一个分支发展起来的,二者的配置也大体相同. wex@localhost:~# mysql -uroot -proot 进入MariaDB服务器,将mysql.user ...

  9. Python编码/文件读取/多线程

    Python编码/文件读取/多线程 个人笔记~~记录才有成长   编码/文件读取/多线程 编码 常用的一般是gbk.utf-8,而在python中字符串一般是用Unicode来操作,这样才能按照单个字 ...

  10. [stm32] MPU6050 HMC5883 Kalman 融合算法移植

    一.卡尔曼滤波九轴融合算法stm32尝试 1.Kalman滤波文件[.h已经封装为结构体] /* Copyright (C) 2012 Kristian Lauszus, TKJ Electronic ...