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

 更新时间:2020年05月08日 14:31:21   作者:灵雀云  
这篇文章主要介绍了使用 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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • CentOS7 Docker防火墙的简单配置教程

    CentOS7 Docker防火墙的简单配置教程

    这篇文章主要给大家介绍了关于CentOS7 Docker防火墙的简单配置方法,以及总结了docker在centos7下的一些坑,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2017-12-12
  • docker服务关停的实现步骤

    docker服务关停的实现步骤

    在我看来所谓的优雅关闭,就是在系统关闭时,预留一些时间,让你有机会来善后一些事情,本文就来介绍一下docker服务如何正确关停,感兴趣的可以了解一下
    2023-10-10
  • docker-compose:未找到命令的检查步骤和修复

    docker-compose:未找到命令的检查步骤和修复

    最近在使用docker时,有不少人遇到了一个问题,在容器中找不到docker命令,这个问题可能会导致一些困惑和疑惑,这篇文章主要介绍了docker-compose:未找到命令的检查步骤和修复的相关资料,需要的朋友可以参考下
    2024-08-08
  • Docker如何搭建私有仓库

    Docker如何搭建私有仓库

    文章介绍了如何搭建私有仓库并使用Docker进行镜像的管理和推送,首先,搭建私有仓库并配置非HTTPS访问(适用于Ubuntu、Debian和CentOS),然后,使用Docker命令标记、推送和拉取镜像,最后,通过curl命令查看仓库中的镜像列表
    2025-03-03
  • 详解如何使用Docker部署Django+MySQL8开发环境

    详解如何使用Docker部署Django+MySQL8开发环境

    这篇文章主要介绍了详解如何使用Docker部署Django+MySQL8开发环境,文中通过示例代码以及图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-07-07
  • Docker终端无法输入中文问题及解决

    Docker终端无法输入中文问题及解决

    Docker终端输入中文问题可通过修改语言环境解决,系统默认POSIX字符集不支持中文,将环境变量LANG设置为C.UTF-8即可解决,方法包括启动容器时添加环境变量和进入容器后修改
    2024-11-11
  • 详解基于Docker的服务部署流程

    详解基于Docker的服务部署流程

    这篇文章主要介绍了详解基于Docker的服务部署流程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • docker 中的–mount 和-v 参数区别解析

    docker 中的–mount 和-v 参数区别解析

    这篇文章主要介绍了docker 中的–mount 和-v 参数区别解析,--mount 更为灵活,适用于更复杂的挂载需求,使用哪种方式主要取决于个人或团队的偏好和具体的使用场景,需要的朋友可以参考下
    2023-12-12
  • docker部署MySQL时无法启动问题的解决方法

    docker部署MySQL时无法启动问题的解决方法

    最近做项目,遇到这样问题,docker中的mysql不能启动,下面这篇文章主要给大家介绍了关于docker部署MySQL时无法启动问题的解决方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • docker中使用mysql数据库实现局域网访问

    docker中使用mysql数据库实现局域网访问

    在本篇内容里小编给大家整理了关于docker中使用mysql数据库实现局域网访问相关内容,有需要的朋友们可以学习下。
    2020-03-03

最新评论