43 lines
16 KiB
HTML
43 lines
16 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en-US">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>在单机使用 kind 安装 Kubernetes | Kuboard</title>
|
||
<meta name="description" content="A cool Kubernetes Dashboard">
|
||
<meta name="keywords" content="Kubernetes, Docker, Dashboard, Kuboard, Linux, K8S, cluster, 分布式, 集群, 容器, 高可用">
|
||
<meta property="article:modified_time" content="Thu Jul 25 2019 06:22:52 GMT+0800 (GMT+08:00)"><meta property="og:site_name" content="Kuboard"><meta property="og:title" content="在单机使用 kind 安装 Kubernetes"><meta property="og:type" content="website"><meta property="og:url" content="/install/install-kind.html"><meta name="twitter:title" content="在单机使用 kind 安装 Kubernetes"><meta name="twitter:url" content="/install/install-kind.html"><meta name="twitter:card" content="summary_large_image">
|
||
<link rel="preload" href="/assets/css/0.styles.c0301a2f.css" as="style"><link rel="preload" href="/assets/js/app.469e521d.js" as="script"><link rel="preload" href="/assets/js/11.85cc1d1b.js" as="script"><link rel="preload" href="/assets/js/2.4586c502.js" as="script"><link rel="preload" href="/assets/js/18.c87c981a.js" as="script"><link rel="prefetch" href="/assets/js/10.f84e0625.js"><link rel="prefetch" href="/assets/js/12.d79ea216.js"><link rel="prefetch" href="/assets/js/13.d57917df.js"><link rel="prefetch" href="/assets/js/14.5bb6b838.js"><link rel="prefetch" href="/assets/js/15.c6f5df06.js"><link rel="prefetch" href="/assets/js/16.72005098.js"><link rel="prefetch" href="/assets/js/17.452295d5.js"><link rel="prefetch" href="/assets/js/19.dfd1a854.js"><link rel="prefetch" href="/assets/js/20.7658673b.js"><link rel="prefetch" href="/assets/js/21.d108e58c.js"><link rel="prefetch" href="/assets/js/22.17b851e0.js"><link rel="prefetch" href="/assets/js/23.55c72026.js"><link rel="prefetch" href="/assets/js/24.66a868af.js"><link rel="prefetch" href="/assets/js/25.890672df.js"><link rel="prefetch" href="/assets/js/26.959330a4.js"><link rel="prefetch" href="/assets/js/27.99a6e3a4.js"><link rel="prefetch" href="/assets/js/28.e716a025.js"><link rel="prefetch" href="/assets/js/29.4ff59e34.js"><link rel="prefetch" href="/assets/js/3.01058ecd.js"><link rel="prefetch" href="/assets/js/30.e89c0eee.js"><link rel="prefetch" href="/assets/js/31.fc5a4b53.js"><link rel="prefetch" href="/assets/js/32.4cf659a7.js"><link rel="prefetch" href="/assets/js/33.d10f420c.js"><link rel="prefetch" href="/assets/js/34.da1581ad.js"><link rel="prefetch" href="/assets/js/35.6d4bbc2f.js"><link rel="prefetch" href="/assets/js/36.40fcd0aa.js"><link rel="prefetch" href="/assets/js/37.a2236040.js"><link rel="prefetch" href="/assets/js/38.7fd741bc.js"><link rel="prefetch" href="/assets/js/4.5c8766b1.js"><link rel="prefetch" href="/assets/js/5.8a6d0bb9.js"><link rel="prefetch" href="/assets/js/6.8f8c4682.js"><link rel="prefetch" href="/assets/js/7.7adbafe6.js"><link rel="prefetch" href="/assets/js/8.05349e1e.js"><link rel="prefetch" href="/assets/js/9.b9de5eb9.js">
|
||
<link rel="stylesheet" href="/assets/css/0.styles.c0301a2f.css">
|
||
</head>
|
||
<body>
|
||
<div id="app" data-server-rendered="true"><div class="theme-container" data-v-79c95b4d><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><!----> <span class="site-name">Kuboard</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/overview/" class="nav-link">简介</a></div><div class="nav-item"><a href="/install/" class="nav-link router-link-active">安装</a></div><div class="nav-item"><a href="/guide/" class="nav-link">使用</a></div><div class="nav-item"><a href="/support/" class="nav-link">支持</a></div> <!----></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><div data-v-79c95b4d><div style="text-align:center;margin-top:20px;" data-v-79c95b4d><div class="side-nav-item" style="margin-left:0;" data-v-79c95b4d><a href="/overview/" class="nav-link" data-v-79c95b4d>简介</a></div> <div class="side-nav-item" style="border-bottom:2px solid #0b85ff;" data-v-79c95b4d><a href="/install/" class="nav-link router-link-exact-active router-link-active" data-v-79c95b4d>安装</a></div> <div class="side-nav-item" data-v-79c95b4d><a href="/guide/" class="nav-link" data-v-79c95b4d>使用</a></div> <div class="side-nav-item" data-v-79c95b4d><a href="/support/" class="nav-link" data-v-79c95b4d>支持</a></div></div></div> <ul class="sidebar-links"><li><section class="sidebar-group depth-0"><p class="sidebar-heading open"><span>概述</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/install/" class="sidebar-link">概述</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>安装 Kubernetes</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/install/install-k8s.html" class="sidebar-link">安装 Kubernetes 单Master节点</a></li><li><a href="/install/install-kubernetes.html" class="sidebar-link">安装 Kubernetes 高可用</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>安装 Kuboard</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/install/install-dashboard.html" class="sidebar-link">安装 Kuboard</a></li></ul></section></li></ul> <div style="text-align: center; margin-top: 5vh;"><strong>在线体验</strong> <div><a target="_blank" href="http://demo.eip.work/#/login?isReadOnly=true&token=eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJrdWJvYXJkLXZpZXdlci10b2tlbi02djZiZiIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJrdWJvYXJkLXZpZXdlciIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjhiYTU3YmI1LWFiMTctNDM1NS1hNTM0LTQ0Njk4NGY0NzFlZiIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlLXN5c3RlbTprdWJvYXJkLXZpZXdlciJ9.DcXNIp0RKha1zkV4ga_QlGfcvMLGx2LOyzX-0VeboC3FojKFhxnfBeoda-zTeh6ugJlSM4kQYrRcof1Kx8Mg3-UgofNmgRySbDEVKtJZyMUoHqLmySKUIn8sbX8q83RNcqwcvY-fM8-w8HSuzU7Td7WWNuZrlCL4q_LQDYIBet1nlQ83YsENKNE8rsZQFDw8YM0MH6BEZLdwyhaboy_jjYbsU7kv8gks3aIX4lh1Fs9ZFQpC_6B0_MZvb7rEeG2M8QWXoUkDoL5JCKu6Wot5GlWf0kDMxIsViggP0NmSDTKh6kIvCkT2FZ2I4guEcjE_EjBpdOS6Abta22tzLlPKhg"><p><img src="/assets/img/image-20190723104717575.f44900d3.png" style="width: 226px; height: 127px;"></p></a></div> <strong>在线提问</strong> <p><img src="/assets/img/kuboard_qq.45e78dbf.png"></p></div></aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="在单机使用-kind-安装-kubernetes"><a href="#在单机使用-kind-安装-kubernetes" aria-hidden="true" class="header-anchor">#</a> 在单机使用 kind 安装 Kubernetes</h1> <p>本文旨在通过使用 kind 搭建本地 k8s 集群环境,为技术爱好者提供快速上手 Kuboard 的基本实践方式。</p> <h2 id="环境简介"><a href="#环境简介" aria-hidden="true" class="header-anchor">#</a> 环境简介</h2> <p>本地搭建 k8s 集群需要 kind 工具及 docker 环境。</p> <p>建议硬件配置:2核 cpu,8G 内存</p> <p>ps: 以下均为在 Linux 平台实践,其他平台可参考文章中链接。</p> <h3 id="kind-简介与安装"><a href="#kind-简介与安装" aria-hidden="true" class="header-anchor">#</a> kind 简介与安装</h3> <p>kind:https://kind.sigs.k8s.io/ 是一个使用 Docker 容器运行本地 Kubernetes 集群的工具。
|
||
ps:本文使用kind V0.4.0</p> <p>安装:</p> <ul><li><p>linux:</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token function">curl</span> -Lo ./kind-linux-amd64 https://github.com/kubernetes-sigs/kind/releases/download/v0.4.0/kind-linux-amd64
|
||
<span class="token function">chmod</span> +x ./kind-linux-amd64
|
||
<span class="token function">mv</span> ./kind-linux-amd64 /usr/local/bin/kind
|
||
</code></pre></div></li> <li><p>win:</p> <div class="language-powershell extra-class"><pre class="language-powershell"><code>curl<span class="token punctuation">.</span>exe <span class="token operator">-</span>Lo kind<span class="token operator">-</span>windows<span class="token operator">-</span>amd64<span class="token punctuation">.</span>exe https:<span class="token operator">/</span><span class="token operator">/</span>github<span class="token punctuation">.</span>com<span class="token operator">/</span>kubernetes<span class="token operator">-</span>sigs<span class="token operator">/</span>kind<span class="token operator">/</span>releases<span class="token operator">/</span>download<span class="token operator">/</span>v0<span class="token punctuation">.</span>4<span class="token punctuation">.</span>0<span class="token operator">/</span>kind<span class="token operator">-</span>windows<span class="token operator">-</span>amd64
|
||
<span class="token function">Move-Item</span> <span class="token punctuation">.</span>\kind<span class="token operator">-</span>windows<span class="token operator">-</span>amd64<span class="token punctuation">.</span>exe c:\some<span class="token operator">-</span><span class="token function">dir</span><span class="token operator">-in</span><span class="token operator">-</span>your<span class="token operator">-</span>PATH\kind<span class="token punctuation">.</span>exe
|
||
</code></pre></div></li> <li><p>mac:</p> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token function">curl</span> -Lo ./kind-darwin-amd64 https://github.com/kubernetes-sigs/kind/releases/download/v0.4.0/kind-darwin-amd64
|
||
<span class="token function">chmod</span> +x ./kind-darwin-amd64
|
||
<span class="token function">mv</span> ./kind-darwin-amd64 /usr/local/bin/kind
|
||
</code></pre></div></li></ul> <h3 id="docker-环境"><a href="#docker-环境" aria-hidden="true" class="header-anchor">#</a> docker 环境</h3> <p>Kind 的主要功能目前需要有 Docker 环境的支持,可参考 Docker 官方文档:https://links.jianshu.com/go?to=https%3A%2F%2Fdocs.docker.com%2Finstall%2F 进行安装。</p> <h3 id="kubectl-安装"><a href="#kubectl-安装" aria-hidden="true" class="header-anchor">#</a> kubectl 安装</h3> <p>kubectl https://kubernetes.io/docs/tasks/tools/install-kubectl/ 是 Kubernetes 命令行工具,可以在 Kubernetes 上部署和管理应用程序</p> <p>Linux:</p> <div class="language- extra-class"><pre class="language-text"><code>curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.0/bin/linux/amd64/kubectl
|
||
chmod +x ./kubectl
|
||
sudo mv ./kubectl /usr/local/bin/kubectl
|
||
</code></pre></div><p>ps: 由于网络问题多次尝试可下载成功</p> <h2 id="k8s-集群搭建"><a href="#k8s-集群搭建" aria-hidden="true" class="header-anchor">#</a> k8s 集群搭建</h2> <h3 id="准备-kind-搭建集群配置文件-kind-config-yaml"><a href="#准备-kind-搭建集群配置文件-kind-config-yaml" aria-hidden="true" class="header-anchor">#</a> 准备 kind 搭建集群配置文件 kind-config.yaml</h3> <div class="language-yaml extra-class"><pre class="language-yaml"><code><span class="token key atrule">kind</span><span class="token punctuation">:</span> Cluster
|
||
<span class="token key atrule">apiVersion</span><span class="token punctuation">:</span> kind.sigs.k8s.io/v1alpha3
|
||
<span class="token key atrule">nodes</span><span class="token punctuation">:</span>
|
||
<span class="token punctuation">-</span> <span class="token key atrule">role</span><span class="token punctuation">:</span> control<span class="token punctuation">-</span>plane
|
||
<span class="token punctuation">-</span> <span class="token key atrule">role</span><span class="token punctuation">:</span> worker
|
||
</code></pre></div><h3 id="使用-kind-搭建集群"><a href="#使用-kind-搭建集群" aria-hidden="true" class="header-anchor">#</a> 使用 kind 搭建集群</h3> <div class="language- extra-class"><pre class="language-text"><code>kind create cluster --config kind-config.yaml
|
||
</code></pre></div><h3 id="创建成功"><a href="#创建成功" aria-hidden="true" class="header-anchor">#</a> 创建成功</h3> <p><img src="/assets/img/1563696697515.94512132.png" alt="1563696697515"></p> <p>按照提示配置环境变量</p> <div class="language- extra-class"><pre class="language-text"><code>export KUBECONFIG="$(kind get kubeconfig-path --name="kind")"
|
||
</code></pre></div><p>查看集群信息</p> <div class="language- extra-class"><pre class="language-text"><code>kubectl cluster-info
|
||
</code></pre></div><p><img src="/assets/img/1563697667480.8c846298.png" alt="1563697667480"></p> <h2 id="kuboard-安装"><a href="#kuboard-安装" aria-hidden="true" class="header-anchor">#</a> kuboard 安装</h2> <p>官方安装地址:http://kuboard.cn/#/install/install-dashboard</p> <h3 id="获取并修改-yaml-文件"><a href="#获取并修改-yaml-文件" aria-hidden="true" class="header-anchor">#</a> 获取并修改 yaml 文件</h3> <div class="language-bash extra-class"><pre class="language-bash"><code><span class="token function">wget</span> https://raw.githubusercontent.com/eip-work/eip-monitor-repository/master/dashboard/kuboard.yaml
|
||
</code></pre></div><p>修改文件 kuboard.yaml 中 Ingress 的 host 为空</p> <h3 id="执行安装"><a href="#执行安装" aria-hidden="true" class="header-anchor">#</a> 执行安装</h3> <div class="language-bash extra-class"><pre class="language-bash"><code>kubectl apply -f kuboard.yaml
|
||
</code></pre></div><h3 id="查看启动状态"><a href="#查看启动状态" aria-hidden="true" class="header-anchor">#</a> 查看启动状态</h3> <div class="language- extra-class"><pre class="language-text"><code>kubectl get pods -n kube-system --watch
|
||
</code></pre></div><p>等待 kuboard 启动成功</p> <h3 id="访问-kuboard-页面"><a href="#访问-kuboard-页面" aria-hidden="true" class="header-anchor">#</a> 访问 kuboard 页面</h3> <p>待启动成功后,需要做 80 端口转发,通过浏览器访问 kuboard</p> <div class="language- extra-class"><pre class="language-text"><code>kubectl port-forward service/kuboard 9080:80 -n kube-system
|
||
</code></pre></div><p>获取登录 token</p> <div class="language-bash extra-class"><pre class="language-bash"><code>kubectl -n kube-system describe secret <span class="token variable"><span class="token variable">$(</span>kubectl -n kube-system get secret <span class="token operator">|</span> <span class="token function">grep</span> kuboard-user <span class="token operator">|</span> <span class="token function">awk</span> <span class="token string">'{print <span class="token variable">$1</span>}'</span><span class="token variable">)</span></span>
|
||
</code></pre></div><p><img src="/assets/img/1563698644736.d67b2e09.png" alt="1563698644736"></p> <p>浏览器中访问 http://localhost:9080</p> <p><img src="/assets/img/1563698714557.fa1eeb1c.png" alt="1563698714557"></p> <p>将获取的 token 复制到浏览器中,访问成功</p> <p><img src="/assets/img/1563698865448.2cbaf53a.png" alt="1563698865448"></p></div> <footer class="page-edit"><!----> <div class="last-updated"><span class="prefix">更新时间: </span> <span class="time">2019-07-25 06:22:52</span></div></footer> <!----> <div class="bottom-description" data-v-79c95b4d>Copyright © 2019-present HuanQing Shao</div></main></div><div class="global-ui"><!----><div class="reading-progress top" data-v-7681808f><div class="progress" data-v-7681808f></div></div></div></div>
|
||
<script src="/assets/js/app.469e521d.js" defer></script><script src="/assets/js/11.85cc1d1b.js" defer></script><script src="/assets/js/2.4586c502.js" defer></script><script src="/assets/js/18.c87c981a.js" defer></script>
|
||
</body>
|
||
</html>
|