使用 kind 和 Docker 启动本地的 Kubernetes环境

介绍

你曾经花过一整天时间尝试入门Kubernetes吗?多亏最近新出现的一些工具,你可以不用再为此大费周章了。

这篇文章中,我将向你展示使用 kind 在单个 Docker 容器中启动一个集群的步骤。

什么是 kind

因为 kind 是 go 语言实现的,请确保安装了最新版本的 golang。根据开发者文档,推荐使用 go1.11.5 及以上版本。为了安装 kind,请运行这些命令(可能需要运行一段时间)

kind(Kubernetes IN Docker) 是一个基于 docker 构建 Kubernetes 集群的工具,非常适合用来在本地搭建基于 Kubernetes 的开发/测试环境。

go get -u sigs.k8s.io/kind
kind create cluster

然后确认 “kind” 集群是可用的。

kind get clusters

设置 kubectl

同样的,使用 Homebrew 或者 Chocolatey 安装最新版本的 kubernetes-cli。最新版本的 Docker 包含了Kubernetes的功能,但使用的是老版本的 kubectl。

运行该命令检查它的版本号。

kubectl version

请确保显示 GitVersion: "v1.14.1" 或更高版本。

如果你发现通过 Docker 运行的 kubectl,试着使用 brew link 或对环境变量重新排序。

一旦 kubectl 和 kind 安装就绪,打开 bash 控制台运行这些命令。

export KUBECONFIG=”$(kind get kubeconfig-path)”
kubectl cluster-info

如果 kind 正确的配置了,会显示一些信息出来。现在你就可以继续开始下面的工作了。耶!

部署第一个应用程序

我们需要部署什么到集群上呢?一个很好的选择就是 Wordpress 因为它包括 MySQL 和 PHP 应用程序。

幸运的是,有一个官方的入门介绍并且描述的非常棒。我们可以尝试使用刚才创建的 kind 集群来操作里面的大多数步骤。

https://kubernetes.io/docs/tut ... lume/

首先,从这个页面上下载 mysql-deployment.yaml 和 wordpress-deployment.yaml。

运行两个 cat 命令创建 kustomization.yaml。一旦这些 yaml 文件准备好之后,将文件按照下面显示的那样放到相应的目录里面。

k8s-wp/
kustomization.yaml
mysql-deployment.yaml
wordpress-deployment.yaml

然后应用到你的集群当中。

cd k8s-wp
kubectl apply -k ./

如果命令成功执行你会看到如下的输出:

secret/mysql-pass-7tt4f27774 created
service/wordpress-mysql created
service/wordpress created
deployment.apps/wordpress-mysql created
deployment.apps/wordpress created
persistentvolumeclaim/mysql-pv-claim created
persistentvolumeclaim/wp-pv-claim created

让我们输入这些命令检查下集群的状态:

kubectl get secrets
kubectl get pvc
kubectl get pods
kubectl get services wordpress

等待所有的 pod 变成 Running 状态。

然后,运行这个命令来获取服务。

kubectl port-forward svc/wordpress 8080:80

然后打开http://localhost:8080/

瞧!如果你想查看数据库,检查你的pod,像这样运行一个命令,然后打开你的客户端应用。

kubectl port-forward wordpress-mysql-bc9864c58-ffh4c 3306:3306

结论

kind 对 minikube 来说是一个好的选择因为它只使用单个 Docker 容器。

通过跟集成到Kubernetes1.14 的 Kustomze 结合使用,在你本地的机器上尝试使用 Kubernetes 会更加简单。

到此这篇关于使用 kind 和 Docker 启动本地的 Kubernetes环境的文章就介绍到这了,更多相关kind 和 Docker 启动本地 Kubernetes内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Docker实践—CentOS7上部署Kubernetes详解

    Kubernetes架构 Kubernetes的整体架构如下: Master为主控节点,上面运行apiserver,scheduler,controller-manager等组件.Minion相当于工作节点,上面运行kubelet,proxy,cAdvisor以及最重要的docker等组件.下面来实际部署一下这套集群管理工具. 环境 yy1  10.193.6.35 yy2  10.193.6.36 yy1作为master,yy2作为minion. # cat /etc/centos-relea

  • docker kubernetes dashboard安装部署详细介绍

    docker之kubernetes dashboard部署 1. 环境说明: 1). 架构: 注: 本次实验服务器环境均采用centos 7. 服务安装均采用yum install. 192.168.3.7 master 192.168.3.16 node 2).使用的软件包: master: docker kubernetes-master etcd flannel nodes: docker kubernetes-node flannel 3). 软件版本: docker: 1.10.3 k

  • centos7搭建docker私人仓库的方法(kubernetes)

    我们平时镜像都是习惯于放在公共仓库的,比如Dockerhub, Daocloud.但在企业里,我们经常会需要搭建公司自己的镜像仓库. 这篇文章讲解如何用docker提供的registry镜像来搭建自己的镜像仓库. 不添加ssl认证的仓库 下面用registry:2.6.2镜像创建docker仓库. 将宿主机的5000端口映射到容器的5000端口. 将宿主机/mnt/registry挂在到容器的/var/lib/registry目录,容器里的这个目录就是存放镜像的地方.这样可以将数据持久化,当容器

  • 使用 kind 和 Docker 启动本地的 Kubernetes环境

    介绍 你曾经花过一整天时间尝试入门Kubernetes吗?多亏最近新出现的一些工具,你可以不用再为此大费周章了. 这篇文章中,我将向你展示使用 kind 在单个 Docker 容器中启动一个集群的步骤. 什么是 kind 因为 kind 是 go 语言实现的,请确保安装了最新版本的 golang.根据开发者文档,推荐使用 go1.11.5 及以上版本.为了安装 kind,请运行这些命令(可能需要运行一段时间) kind(Kubernetes IN Docker) 是一个基于 docker 构建

  • Docker搭建本地私有仓库的详细步骤

    和Mavan的管理一样,Dockers不仅提供了一个中央仓库,同时也允许我们使用registry搭建本地私有仓库.使用私有仓库有许多优点: 一.节省网络带宽,针对于每个镜像不用每个人都去中央仓库上面去下载,只需要从私有仓库中下载即可: 二.提供镜像资源利用,针对于公司内部使用的镜像,推送到本地的私有仓库中,以供公司内部相关人员使用. 接下来我们就大致说一下如何在本地搭建私有仓库. 环境准备 环境:两个装有Docker的Ubuntu虚拟机 虚拟机一:192.168.112.132 用户开发机 虚拟

  • 详解Docker挂载本地目录及实现文件共享的方法

    docker挂载本地目录的方法总结: Docker容器启动的时候,如果要挂载宿主机的一个目录,可以用-v参数指定. 譬如我要启动一个centos容器,宿主机的/test目录挂载到容器的/soft目录,可通过以下方式指定: # docker run -it -v /test:/soft centos /bin/bash 这样在容器启动后,容器内会自动创建/soft的目录.通过这种方式,我们可以明确一点,即-v参数中,冒号":"前面的目录是宿主机目录,后面的目录是容器内目录. 貌似简单,其

  • docker启动Java程序的方法步骤

    创建一个简单的Spring boot web项目 idea工具创建Spring boot web项目,因为是测试,一直next就行. 写一个test API,用来访问,服务端口号可以不用改,我本地改成8701. 程序启动,发现程序不是默认的8080端口了,访问:http://localhost:8701/v1/hello 以上一个简单web项目建好了,下面我们通过docker来运行这个demo项目 第一步,你需要安装docker(这里不做详细步骤). 第二步,我们需要一个有java环境docke

  • docker挂载本地目录和数据卷容器操作

    1.docker挂载本地目录 docker可以支持把一个宿主机上的目录挂载到镜像里. 交互模式运行 docker run -it -v /home/dock/Downloads:/usr/Downloads ubuntu64 /bin/bash 后台运行 docker run -d -v /home/dock/Downloads:/usr/Downloads --name ubuntu1 ubuntu64 通过-v参数,冒号前为宿主机目录,必须为绝对路径,冒号后为镜像内挂载的路径. 现在镜像内就

  • Docker配置本地镜像与容器的存储位置

    使用find命令找到大于指定大小的文件: find / -type f -size +10G 排除某个目录 find / -path "/media/xww" -type f -size +10G 修改Docker本地镜像与容器的存储位置的方法 方法一.软链接 默认情况下Docker的存放位置为:/var/lib/docker 可以通过下面命令查看具体位置: sudo docker info | grep "Docker Root Dir" 解决这个问题,最直接的方

  • Docker启动mysql配置实现过程

    目录 实战过程 前言 可以通过官网查询其mysql如何启动 以及对mysql中的一些解读 附上官网地址 启动另一个mysql容器实例并运行mysql命令mysql是世界上最流行的开源数据库. 由于其经过验证的性能,可靠性和易用性,MySQL已经成为基于web的应用程序的领先数据库选择,涵盖了从个人项目和网站,通过电子商务和信息服务,一路到高知名度的web属性,包括Facebook, Twitter, YouTube, Yahoo! 和许多更多. 实战过程 通过查询官网具体白皮书 可得知使用这条命

  • vue-cli启动本地服务局域网不能访问的原因分析

    1.问题描述: 本地vue-cli启动了一个项目只能通过localhost:8080访问到,同一局域网下其他的手机和电脑并不能通过ip地址访问调试, 2.原因:vue-cli项目是通过命令行一键生成的,配置文件中默认生成的是本地调试模式,默认访问地址是localhost:端口号 3.改正的方式 找到config文件夹下的index.js文件,修改host:"localhost"为 host:"0.0.0.0",此时同一局域网下的手机和其他电脑能通过ip查看到页面 P

  • 安装Node.js并启动本地服务的操作教程

    1.下载安装包: 下载地址:https://nodejs.org/en/download/,根据自己电脑的配置下载相应的windows64位安装包,下载完成后,进行安装. 2.检查是否安装成功 安装完成后,打开命令行窗口,检查是否安装成功,如下图所示,键入node -v出现node.js的版本,键入npm -v出现npm的版本,说明两者均已安装成功. 3.配置环境变量 由于我的电脑之前安装过node.js,所以需要检测一下是否配置了环境变量,打开命令行,输入命令"path",输出结果中

  • docker启动elasticsearch时内存不足问题及解决方法

    问题 docker安装并启动elasticsearch时内存不足 系统centos8(阿里云ecs服务器) [root@iZ2zeczvvb79boy368xppwZ ~]# cat /etc/redhat-release CentOS Linux release 8.1.1911 (Core) 安装过程 docker pull elasticsearch:6.4.0 修改虚拟机内存(貌似没有效果) sysctl -w vm.max_map_count=262144 使用docker run命令

随机推荐