Kubernetes 1 3 从入门到进阶 安装篇(1)

Kubernetes 1.3 从入门到进阶 安装篇:minikube

Kubernetes单机运行环境一直是一个没有得到重视的问题。现在我们有了minikube,一个用go语言开发的可以在本地运行kubernetes的利器,不过目前应该只是支持kubernetes1.3。如果你只有一台机器或者虚拟机又想试验一下Kubernetes的新的功能,或者作kubernetes上开发的本地环境,minikube可能是你不错的选择。

下载minikube并设定

下载的时候突然发现版本已经是0.7.0了,发现是6个小时之前刚刚更新的,速度好快,从第一次发布的5/31的0.1版,到现在的第七次版本的迭代,基本上平均是一周一个版本的速度,这就是互联网时代的平均数度。当普通的企业推出新机能的时候,一般是在和用户的耐心在赛跑。但是一周一次的版本更新基本上是在脱着用户前进的节奏。下载来看看吧。

# curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.7.0/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 72.0M  100 72.0M    0     0   866k      0  0:01:25  0:01:25 --:--:--  889k
[root@liumiao tmp]#
  • 1
  • 2
  • 3
  • 4
  • 5

确认minikube

# which minikube
/usr/local/bin/minikube
# minikube version
There is a newer version of minikube available (v0.7.0).  Download it here:
https://github.com/kubernetes/minikube/releases/tag/v0.7.0
To disable this notification, add WantUpdateNotification: False to the json config file at /root/.minikube/config
(you may have to create the file config.json in this folder if you have no previous configuration)
minikube version: v0.6.0
#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

简单解释

curl -Lo 会把minikube下载到本地

chmod +x 给其加上执行权限

mv kubectl /usr/local/bin下是因为普通用户的path中缺省的有/usr/local/bin

minikube version: v0.6.0 ?这是个什么节奏,我只是想看个版本号。

按照提示,创建了其提示的目录,明确提示是0.6.0的版本。

# mkdir -p /root/.minikube/config
# minikube version
minikube version: v0.6.0
#
  • 1
  • 2
  • 3
  • 4

找到一台能够连接google机器,一样做了一遍,版本正常显示。0.6也好0.7也罢,继续前进。

# minikube version
minikube version: v0.7.0
#
  • 1
  • 2
  • 3

下载kubectl并设定

我们还需要下载kubectl并设定

# curl -Lo kubectl http://storage.googleapis.com/kubernetes-release/release/v1.3.0/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 53.8M  100 53.8M    0     0   688k      0  0:01:20  0:01:20 --:--:--  874k
#
  • 1
  • 2
  • 3
  • 4
  • 5

确认kubectl

# which kubectl
/usr/local/bin/kubectl
# kubectl version
Client Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.0", GitCommit:"283137936a498aed572ee22af6774b6fb6e9fd94", GitTreeState:"clean", BuildDate:"2016-07-01T19:26:38Z", GoVersion:"go1.6.2", Compiler:"gc", Platform:"linux/amd64"}
The connection to the server localhost:8080 was refused - did you specify the right host or port?
#
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

我们已经看到了新的版本信息了,Client Version: version.Info{Major:”1”, Minor:”3”, GitVersion:”v1.3.0”, Marjor的版本号1,Minor的3,1.3.0的kubernetes。但是为什么被8080refused了呢。别着急,还没有启动呢,这是没有成功连接kubernetes apiserver的节奏,一切正常,到目前为止,我们只是下载了一个可执行文件设置了权限而已。

安装条件

google官方是这样写的,Minikube requires the latest Virtualbox to be installed on your system,那么我们看看不安装会怎样。

# minikube start
Starting local Kubernetes cluster...
E0726 05:33:07.585166    4210 start.go:78] Error starting host:  Error creating. Error with pre-create check: "VBoxManage not found. Make sure VirtualBox is installed and VBoxManage is in the path"
#
  • 1
  • 2
  • 3
  • 4

好的,我们会好好安装的。有Virtualbox的可以跳过此步,minikube start不出错,就可以使用了。

CentOS上安装VB5.10。
# cd /etc/yum.repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo
# yum update
# yum install binutils qt gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms
# export KERN_DIR=/usr/src/kernels/3.10.0-327.22.2.el7.x86_64
注意此处根据具体情况3.10.0-327.22.2.el7.x86_64可能有所变化
# yum install VirtualBox-5.1
log的确认:/var/log/vbox-install.log
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

BIOS或者虚拟机设定:VT-X/AMD-v

# minikube start
Starting local Kubernetes cluster...
E0727 06:27:17.242507   66718 start.go:78] Error starting host:  Error creating. Error with pre-create check: "This computer doesn‘t have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory"
#
  • 1
  • 2
  • 3
  • 4

vmware的设定方法:VM => “Settings…” => Processors => 选中复选框Virtualize Intel VT-x/EPT or AMD-V/RVI

注意:只能在VM停下来的时候才能设定

BIOS的设定请根据机器型号自行google

启动:VirtualBox版本提示错误

# minikube start
Starting local Kubernetes cluster...
E0727 06:41:54.512097    3933 start.go:78] Error starting host:  Error creating. Error with pre-create check: "We support Virtualbox starting with version 5. Your VirtualBox install is \"WARNING: The vboxdrv kernel module is not loaded. Either there is no module\\n         available for the current kernel (3.10.0-327.22.2.el7.x86_64) or it failed to\\n         load. Please recompile the kernel module and install it by\\n\\n           sudo /sbin/vboxconfig\\n\\n         You will not be able to start VMs until this problem is fixed.\\n5.1.2r108956\". Please upgrade at https://www.virtualbox.org"
#
  • 1
  • 2
  • 3
  • 4

被提示The vboxdrv kernel module is not loaded, 启动一下Virtualbox的Service吧

# /usr/lib/virtualbox/vboxdrv.sh setup
vboxdrv.sh: Starting VirtualBox services.
  • 1
  • 2

启动:成功

# minikube start
Starting local Kubernetes cluster...
Kubernetes is available at https://192.168.99.100:8443.
Kubectl is now configured to use the cluster.
#
  • 1
  • 2
  • 3
  • 4
  • 5

总结

看起来很美好,目前用起来不是太方便。没有防火墙和内网限制的可以自由的使用非常方便。

安装脚本

#!/bin/bash

MINI_VERSION="0.8.0"
KUBE_VERSION="1.3.0"
MACHINE_VERSION="0.8.1"

curl -L https://github.com/docker/machine/releases/download/v${MACHINE_VERSION}/docker-machine-`uname -s`-`uname -m` >/usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine
which docker-machine
docker-machine version
curl -Lo minikube https://storage.googleapis.com/minikube/releases/v${MINI_VERSION}/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
which minikube
minikube version
curl -Lo kubectl http://storage.googleapis.com/kubernetes-release/release/v${KUBE_VERSION}/bin/linux/amd64/kubectl && chmod +x kubectl && sudo mv kubectl /usr/local/bin/
kubectl version
cd /etc/yum.repos.d/
wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo
yum update -y
yum install -y binutils qt gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms
DIR=`ls -lrt /usr/src/kernels/|tail -n1 |awk ‘{print $NF}‘`
export KERN_DIR="/usr/src/kernels/${DIR}"
yum install VirtualBox-5.1
/usr/lib/virtualbox/vboxdrv.sh setup
minikube start
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!希望你也加入到我们人工智能的队伍中来!http://www.captainbed.net

原文地址:https://www.cnblogs.com/firsttry/p/10100380.html

时间: 2024-11-02 01:59:32

Kubernetes 1 3 从入门到进阶 安装篇(1)的相关文章

Kubernetes 1 3 从入门到进阶 安装篇(2)

Kubernetes 1.3 从入门到进阶 安装篇: kubernetes-ansible 上一篇文章我们介绍了使用minikube快速部署kubernetes1.3到单机上. 多台机器构成的集群,本次介绍kubernetes-ansible来进行安装.ansible是自动化部署一大神器,接下来就让我们来看看使用神器的效果吧. 构成说明 master和etcd共用一台机器,只有一个minion的超级mini构成,只是为演示只用. No type IP OS 1 master 192.168.32

Kubernetes(k8s)入门、单机版安装、kuberctl指令、k8s服务实例

https://blog.csdn.net/qq_34701586/article/details/78732470 原文地址:https://www.cnblogs.com/hongdada/p/9255182.html

在线培训 | Kubernetes部署与使用入门

容器技术凭借其轻量化和快速部署的特性,被越来越多企业开发者赞誉,近两年来发展态势可谓炙手可热. 去年一年,Kubernetes的流行度持续快速上升,我们有理由相信在不远的未来,Kubernetes将成为通用的基础设施标准. 开源的全栈化企业级容器管理平台Rancher,凭借优异的基础设施服务管理能力和强大的容器协调能力,让用户在生产环境中的容器部署.运行与管理工作变得更加简单.加上Rancher创造性的纳管来自不同基础架构的Kubernetes集群的能力,为企业在生产环境落地Docker与Kub

iptables入门到进阶

Iptables入门到进阶 一.前言 Firewall(防火墙): 隔离工具:Packets Filter Firewall(包过滤防火墙):工作于主机或网络的边缘,对经由的报文根据预先定义的规则(匹配条件)进行检测,对于能够被规则匹配到的报文实行某预定义的处理机制的一套组件: 防火墙类型 从防火墙的实现形式来分的话,防火墙可以分为软件防火墙和硬件防火墙 硬件防火墙:在硬件级别实现部分功能的防火墙:另一个部分功能基于软件实现: 软件防火墙:应用软件处理逻辑运行于通用硬件平台之上的防火墙: 从防火

System.Web.Routing入门及进阶 上篇

System.Web.Routing已经作为一个程序集包含在.net3.5sp1中发布了.虽然我们并没有在3.5sp1中发现Asp.net Mvc的踪迹,但是亦以感觉到它离我们不远了. System.Web.Routing用于在Asp.net的Web应用程序中进行URLRouting. 所谓UrlRouting就是将一个地址映射为另一个地址,比如我访问/chsword/2008/08/27.html其实是访问了/chsword/article.aspx?y=2008&m=08&d=27这个

SQL Server AlwaysON从入门到进阶(1)——何为AlwaysON?

本文属于SQL Server AlwaysON从入门到进阶系列文章 本文原文出自Stairway to AlwaysOn系列文章.根据工作需要在学习过程中顺带翻译以供参考.系列文章包含: SQL Server AlwaysON从入门到进阶(1)--何为AlwaysON? SQL Server AlwaysON从入门到进阶(2)--存储 SQL Server AlwaysON从入门到进阶(3)--基础架构 SQL Server AlwaysON从入门到进阶(4)--分析和部署Windows Ser

服务端工程师入门与进阶 Java 版

前言 欢迎加入我们.这是一份针对实习生/毕业生的服务端开发入门与进阶指南.遇到问题及时问你的 mentor 或者直接问我. 建议: 尽量用google查找技术资料. 有问题在stackoverflow找找,大部分都已经有人回答. 多看官方的技术文档. ibm developerworkers的文章质量整体上有保障. 平时花一些时间在github上阅读优秀项目源码. 入门(1-2 个月) 目标:参与简单的项目开发. 技能: 掌握 Java.经典的<Java 核心技术:卷1 基础知识>(或者<

k8s入门系列之扩展组件(一)DNS安装篇

DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统中各服务之间发现与调用. 组件: ?SkyDNS 提供DNS解析服务 ?Etcd 存储DNS信息 ?Kube2sky 监听kubernetes,当有Service创建时,生成相应的记录到SkyDNS. 本文章的实验环境与<k8s入门系列之集群安装篇>介绍中一致.master(1) + node(4

Linux运维高薪入门及进阶全新经典视频-老男孩Linux(免费)

2015年5月21日最新发布,老男孩老师亲讲,全新Linux运维入门经典! 超级难得的linux经典企业级入门实战课程 价格:免费 数量:138节 本linux高薪运维入门及进阶,为入门教学中的基础部分,以简单.易用.高效的方式为初学者讲解如何学好LINUX的核心学习思想,讲解计算机硬件知识,基础命令,Linux基础知识及企业应用场景如何利用硬件优化服务,清晰透彻,超细讲解,适合0基础朋友学习或者相关岗位例如和It打交道的销售,编辑等做为了解linux的入口,也将十分有益!全民互联网时代开始了,