下载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. c++垃圾回收代码练习 引用计数

    学习实践垃圾回收的一个小代码 采用引用计数 每次多一个指针指向这个分配内存的地址时候 则引用计数加1 当计数为0 则释放内存 他的难点在于指针之间的复制 所有权交换 计数的变化 #include &l ...

  2. hd2066一个人的旅行

    Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...

  3. 利用Access-Control-Allow-Origin响应头解决跨域请求

    //允许任何域名访问 header("Access-Control-Allow-Origin: *"); //指定域名允许跨域 header("Access-Contro ...

  4. 6.6 Android 编译机制的变迁

    我们使用Java开发android,在编译打包APK文件时,会经过以下流程 Java编译器将应用中所有Java文件编译为class文件(JVM运行的是.class文件,而DVM是.dex文件) dx工 ...

  5. 完全背包问题:湫湫系列故事――减肥记I(HDU 4508)

    湫湫系列故事――减肥记I  HDU 4508 一道裸的完全背包 #include<iostream> #include<algorithm> #include<stdio ...

  6. NumberSort选择法、冒泡法排序

    public class NumberSort {/***读进9个数:*构建成一个int型数组:*顺序排好:**/public static void main(String args[]) {int ...

  7. C#之delegate

    delegate 委托的使用: 封装一个方法,该方法只有一个参数并且不返回值. using System; using System.Windows.Forms; delegate void Disp ...

  8. 零配置Socket TCP消息通讯服务容器EC

    EC全称是elastic communication,是基于c#实现的Socket网络通讯服务容器,支持windows .Net和mono.通过EC容器可以让开发人员在不了解Socket网络通讯知识和 ...

  9. [MSSQL2012]First_Value函数

    First_Value返回结果集中某列第一条数据的值,跟TOP 1效果一样,比较简单的一个函数 先贴测试用代码 DECLARE @TestData TABLE(     ID INT IDENTITY ...

  10. 转:DataSet、DataTable、DataRow、DataColumn区别及使用实例

    DataSet 表示数据在内存中的缓存. 属性 Tables  获取包含在 DataSet 中的表的集合. ds.Tables["sjxx"] DataTable 表示内存中数据的 ...