CoreOS实践(2)—在coreos上安装Kubernetes
下载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的更多相关文章
- Centos7上安装Kubernetes集群部署docker
一.安装前准备1.操作系统详情需要三台主机,都最小化安装 centos7.3,并update到最新 [root@master ~]# (Core) 角色 主机名 IPMaster master 192 ...
- 【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 ...
- 动手实践:在Windows上安装NumPy、Matplotlib、SciPy和IPython
参考:http://book.2cto.com/201401/39327.html
- 手工在Docker for mac上安装Kubernetes
此文发布时间比较早,当前已经有更好的办法,请参考网页: https://github.com/AliyunContainerService/k8s-for-docker-desktop 以下为原文 通 ...
- Lnmp上安装Yaf学习(二)
上一节主要实践了在Lnmp上安装Yaf扩展,那么这一节将测试 Yaf 的一个简单demo的运行. 一.通过Lnmp 创建 vhost 文件 [root@localhost yaf-3.0.6]# ln ...
- linux(centos8):kubeadm单机安装kubernetes(kubernetes 1.18.3)
一,kubernetes安装的准备工作: 1,准备工作的各步骤请参见: https://www.cnblogs.com/architectforest/p/13141743.html 2, ma ...
- kubeadm 安装Kubernetes 1.16.3 (CentOS7+IPVS+Calico)
目录 · . 一.更新系统内核(全部节点) · . 二.基础环境设置(全部节点) · . 1.修改 Host · . 2.修改 Hostname · . 3.主机时间同步 · . 4.关闭 ...
- [CoreOS 转载] CoreOS实践指南(五):分布式数据存储Etcd(上)
转载:http://www.csdn.net/article/2015-01-22/2823659 摘要:在“漫步云端:CoreOS实践指南”系列的前几篇,分别介绍了如何架设CoreOS集群,系统服务 ...
- 在CentOS 7.6 以 kubeadm 安装 Kubernetes 1.15 最佳实践
前言 Kubernetes作为容器编排工具,简化容器管理,提升工作效率而颇受青睐.很多新手部署Kubernetes由于"scientifically上网"问题举步维艰,本文以实战经 ...
随机推荐
- c++垃圾回收代码练习 引用计数
学习实践垃圾回收的一个小代码 采用引用计数 每次多一个指针指向这个分配内存的地址时候 则引用计数加1 当计数为0 则释放内存 他的难点在于指针之间的复制 所有权交换 计数的变化 #include &l ...
- hd2066一个人的旅行
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
- 利用Access-Control-Allow-Origin响应头解决跨域请求
//允许任何域名访问 header("Access-Control-Allow-Origin: *"); //指定域名允许跨域 header("Access-Contro ...
- 6.6 Android 编译机制的变迁
我们使用Java开发android,在编译打包APK文件时,会经过以下流程 Java编译器将应用中所有Java文件编译为class文件(JVM运行的是.class文件,而DVM是.dex文件) dx工 ...
- 完全背包问题:湫湫系列故事――减肥记I(HDU 4508)
湫湫系列故事――减肥记I HDU 4508 一道裸的完全背包 #include<iostream> #include<algorithm> #include<stdio ...
- NumberSort选择法、冒泡法排序
public class NumberSort {/***读进9个数:*构建成一个int型数组:*顺序排好:**/public static void main(String args[]) {int ...
- C#之delegate
delegate 委托的使用: 封装一个方法,该方法只有一个参数并且不返回值. using System; using System.Windows.Forms; delegate void Disp ...
- 零配置Socket TCP消息通讯服务容器EC
EC全称是elastic communication,是基于c#实现的Socket网络通讯服务容器,支持windows .Net和mono.通过EC容器可以让开发人员在不了解Socket网络通讯知识和 ...
- [MSSQL2012]First_Value函数
First_Value返回结果集中某列第一条数据的值,跟TOP 1效果一样,比较简单的一个函数 先贴测试用代码 DECLARE @TestData TABLE( ID INT IDENTITY ...
- 转:DataSet、DataTable、DataRow、DataColumn区别及使用实例
DataSet 表示数据在内存中的缓存. 属性 Tables 获取包含在 DataSet 中的表的集合. ds.Tables["sjxx"] DataTable 表示内存中数据的 ...