26 lines
18 KiB
HTML
26 lines
18 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en-US">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>工作负载 | 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="工作负载"><meta property="og:type" content="website"><meta property="og:url" content="/guide/namespace/workload.html"><meta name="twitter:title" content="工作负载"><meta name="twitter:url" content="/guide/namespace/workload.html"><meta name="twitter:card" content="summary_large_image">
|
||
<link rel="preload" href="/assets/css/0.styles.a88308ce.css" as="style"><link rel="preload" href="/assets/js/app.b49a6aca.js" as="script"><link rel="preload" href="/assets/js/11.42d7fd85.js" as="script"><link rel="preload" href="/assets/js/2.e1436c28.js" as="script"><link rel="preload" href="/assets/js/10.6e5cfa80.js" as="script"><link rel="prefetch" href="/assets/js/12.c2300662.js"><link rel="prefetch" href="/assets/js/13.b168d9e1.js"><link rel="prefetch" href="/assets/js/14.a39ad74c.js"><link rel="prefetch" href="/assets/js/15.6b271638.js"><link rel="prefetch" href="/assets/js/16.260235f6.js"><link rel="prefetch" href="/assets/js/17.6f1a899c.js"><link rel="prefetch" href="/assets/js/18.0a1c6c47.js"><link rel="prefetch" href="/assets/js/19.b5b3f0cd.js"><link rel="prefetch" href="/assets/js/20.7d69131f.js"><link rel="prefetch" href="/assets/js/21.c7e0ae47.js"><link rel="prefetch" href="/assets/js/22.64094046.js"><link rel="prefetch" href="/assets/js/23.2e227f24.js"><link rel="prefetch" href="/assets/js/24.a4157a61.js"><link rel="prefetch" href="/assets/js/25.5be30684.js"><link rel="prefetch" href="/assets/js/26.fd2ceefd.js"><link rel="prefetch" href="/assets/js/27.bd1065a5.js"><link rel="prefetch" href="/assets/js/28.7af5748a.js"><link rel="prefetch" href="/assets/js/29.be522832.js"><link rel="prefetch" href="/assets/js/3.b1841a1e.js"><link rel="prefetch" href="/assets/js/30.43922425.js"><link rel="prefetch" href="/assets/js/31.bccaa107.js"><link rel="prefetch" href="/assets/js/32.8ced6c07.js"><link rel="prefetch" href="/assets/js/33.e55aadef.js"><link rel="prefetch" href="/assets/js/34.3b10d5bb.js"><link rel="prefetch" href="/assets/js/35.1ac88b63.js"><link rel="prefetch" href="/assets/js/36.ef7200f8.js"><link rel="prefetch" href="/assets/js/37.854d1062.js"><link rel="prefetch" href="/assets/js/38.4c345435.js"><link rel="prefetch" href="/assets/js/39.17a44c18.js"><link rel="prefetch" href="/assets/js/4.f8d362a5.js"><link rel="prefetch" href="/assets/js/40.ce489113.js"><link rel="prefetch" href="/assets/js/41.d8b05b79.js"><link rel="prefetch" href="/assets/js/42.b63f5407.js"><link rel="prefetch" href="/assets/js/43.aae640f3.js"><link rel="prefetch" href="/assets/js/44.06b497f8.js"><link rel="prefetch" href="/assets/js/45.e2dd4006.js"><link rel="prefetch" href="/assets/js/46.36adf3ab.js"><link rel="prefetch" href="/assets/js/47.42aa7d35.js"><link rel="prefetch" href="/assets/js/5.23287995.js"><link rel="prefetch" href="/assets/js/6.509a0793.js"><link rel="prefetch" href="/assets/js/7.0d44a01e.js"><link rel="prefetch" href="/assets/js/8.9c3c2e00.js"><link rel="prefetch" href="/assets/js/9.43112bea.js">
|
||
<link rel="stylesheet" href="/assets/css/0.styles.a88308ce.css">
|
||
</head>
|
||
<body>
|
||
<div id="app" data-server-rendered="true"><div class="theme-container" data-v-61e379b0><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/install-dashboard.html" class="nav-link">安装</a></div><div class="nav-item"><a href="/guide/" class="nav-link router-link-active">使用</a></div><div class="nav-item"><a href="/micro-service/spring-cloud/" class="nav-link">微服务</a></div> <!----></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><div data-v-61e379b0><div style="text-align:center;margin-top:20px;" data-v-61e379b0><div class="side-nav-item" style="margin-left:0;" data-v-61e379b0><a href="/overview/" class="nav-link" data-v-61e379b0>简介</a></div> <div class="side-nav-item" data-v-61e379b0><a href="/install/install-dashboard" class="nav-link router-link-exact-active router-link-active" data-v-61e379b0>安装</a></div> <div class="side-nav-item" style="border-bottom:2px solid #0b85ff;" data-v-61e379b0><a href="/guide/" class="nav-link" data-v-61e379b0>使用</a></div> <div class="side-nav-item" data-v-61e379b0><a href="/micro-service/spring-cloud/" class="nav-link" data-v-61e379b0>微服务</a></div></div></div> <ul class="sidebar-links"><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>概述</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/guide/" class="sidebar-link">概述</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Example</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/guide/example/busybox.html" class="sidebar-link">部署 busybox</a></li><li><a href="/guide/example/import.html" class="sidebar-link">导入 example 微服务</a></li><li><a href="/guide/example/monitor.html" class="sidebar-link">监控 example</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>集群管理</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/guide/cluster/computing.html" class="sidebar-link">计算资源管理</a></li><li><a href="/guide/cluster/storage.html" class="sidebar-link">存储空间管理</a></li><li><a href="/guide/cluster/namespace.html" class="sidebar-link">名称空间管理</a></li></ul></section></li><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="/guide/namespace/workload.html" class="active sidebar-link">工作负载</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#创建-查看-编辑工作负载" class="sidebar-link">创建/查看/编辑工作负载</a></li><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#伸缩" class="sidebar-link">伸缩</a></li><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#删除容器组" class="sidebar-link">删除容器组</a></li><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#诊断问题" class="sidebar-link">诊断问题</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#事件:-kubernetes-部署相关问题" class="sidebar-link">事件: Kubernetes 部署相关问题</a></li><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#日志:-容器运行时产生的错误" class="sidebar-link">日志: 容器运行时产生的错误</a></li><li class="sidebar-sub-header"><a href="/guide/namespace/workload.html#终端:-通过交互式命令,在容器内诊断问题" class="sidebar-link">终端: 通过交互式命令,在容器内诊断问题</a></li></ul></li></ul></li><li><a href="/guide/namespace/secrets.html" class="sidebar-link">Secrets</a></li><li><a href="/guide/namespace/configMap.html" class="sidebar-link">配置</a></li><li><a href="/guide/namespace/pvc.html" class="sidebar-link">存储卷声明</a></li><li><a href="/guide/namespace/adjustion.html" class="sidebar-link">日常调整</a></li><li><a href="/guide/namespace/multi-env.html" class="sidebar-link">多环境</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>问题诊断</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/guide/diagonize/events.html" class="sidebar-link">集群事件</a></li><li><a href="/guide/diagonize/logs.html" class="sidebar-link">日志及终端</a></li><li><a href="/guide/diagonize/port-forward.html" class="sidebar-link">端口转发</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>监控套件</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/guide/monitor/" class="sidebar-link">监控套件</a></li><li><a href="/guide/monitor/apis.html" class="sidebar-link">自定义监控套件</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.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJrdWJvYXJkLXZpZXdlci10b2tlbi1mdGw0diIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJrdWJvYXJkLXZpZXdlciIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6ImE1YWFiMmQxLTQxMjYtNDU5Yi1hZmNhLTkyYzMwZDk0NTQzNSIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprdWJlLXN5c3RlbTprdWJvYXJkLXZpZXdlciJ9.eYqN3FLIT6xs0-lm8AidZtaiuHeX70QTn9FhJglhEyh5dlyMU5lo8UtR-h1OY8sTSeYdYKJAS83-9SUObKQhp6XNmRgOYAfZblKUy4mvbGVQ3dn_qnzxYxt6zdGCwIY7E34eNNd9IjMF7G_Y4eJLWE7NvkSB1O8zbdn8En9rQXv_xJ9-ugCyr4CYB1lDGuZl3CIXgQ1FWcQdUBrxTT95tzcNTB0l6OUOGhRxOfw-RyIOST83GV5U0iVzxnD4sjgSaJefvCU-BmwXgpxAwRVhFyHEziXXa0CuZfBfJbmnQW308B4wocr4QDm6Nvmli1P3B6Yo9-HNF__d2hCwZEr7eg"><p><img src="/assets/img/image-20190723104717575.f44900d3.png" style="width: 226px; height: 127px;"></p></a></div> <p><strong><a href="https://github.com/shaohq/kuboard-issues/issues" target="_blank">提交 BUG</a></strong></p> <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="工作负载"><a href="#工作负载" aria-hidden="true" class="header-anchor">#</a> 工作负载</h1> <h2 id="创建-查看-编辑工作负载"><a href="#创建-查看-编辑工作负载" aria-hidden="true" class="header-anchor">#</a> 创建/查看/编辑工作负载</h2> <p>请参考 <a href="/guide/example/busybox">创建 busybox</a></p> <h2 id="伸缩"><a href="#伸缩" aria-hidden="true" class="header-anchor">#</a> 伸缩</h2> <p>伸缩操作,通过调整工作负载的 replicas 大小,来控制该工作负载运行容器组的数量。</p> <ul><li>假设您已进入工作负载查看界面,如下图所示:</li></ul> <p><img src="/assets/img/image-20190722223454676.b545b43f.png" alt="image-20190722223454676"></p> <ul><li><p>点击 <em><strong>伸缩</strong></em> 按钮</p> <p>填写表单</p> <p>副本数: 目标容器组数量</p></li></ul> <p><img src="/assets/img/image-20190722223551308.ed106a2a.png" alt="image-20190722223551308"></p> <ul><li><p>点击 <em><strong>确定</strong></em> 按钮</p> <p>等待,知道伸缩操作执行完毕。</p></li></ul> <p><img src="/assets/img/image-20190722223605920.3e762b29.png" alt="image-20190722223605920"></p> <h2 id="删除容器组"><a href="#删除容器组" aria-hidden="true" class="header-anchor">#</a> 删除容器组</h2> <ul><li><p>点击 <em><strong>删除容器组</strong></em> 按钮</p> <p>可删除该容器组。</p> <ul><li><p>容器组被删除之后,Kubernetes Workload Controller 将要重新创建一个容器组,用于替代被删除的容器组;被删除容器组原有的状态将丢失,新容器组重新从 镜像中加载启动;</p></li> <li><p>Kuboard 的工作负载编辑器,默认将容器组的 imagePullPolicy 设置为 Alwarys,因此,每次在容器组启动的时候,Kubenetes 都会尝试从镜像仓库中抓取最新镜像;</p></li></ul></li></ul> <p><img src="/assets/img/image-20190722231246540.ebf13194.png" alt="image-20190722231246540"></p> <h2 id="诊断问题"><a href="#诊断问题" aria-hidden="true" class="header-anchor">#</a> 诊断问题</h2> <p>在诊断工作负载的问题时,Kuboard主要提供三种手段:</p> <h3 id="事件:-kubernetes-部署相关问题"><a href="#事件:-kubernetes-部署相关问题" aria-hidden="true" class="header-anchor">#</a> 事件: Kubernetes 部署相关问题</h3> <p>如下图所示,图中提示</p> <blockquote><p>错误内容:Error: ErrImagePull 该容器组抓取镜像失败</p> <p>失败原因:pull access denied for busy-box, repository does not exist or may require 'docker login'</p></blockquote> <p>对于这样的错误,需要技术人员检查:</p> <ul><li>容器所在节点与镜像仓库之间的网络连通性</li> <li>容器镜像拼写是否正确</li> <li>如果为私有仓库,是否在工作负载编辑器中正确配置了 docker 仓库用户名密码</li></ul> <p>!> Kuboard 监听了 Kubernetes 集群的事件变化,您无需刷新页面,即可在工作负载编辑器的容器组界面区域看到该容器相关的最新事件。</p> <p>通过 Kubernetes 事件所指示出来的问题,通常是集群本身配置的问题,或者是创建工作负载时的参数填写问题,解决这样的问题需要的是 Kubernetes 集群相关的知识和背景,<strong>通常运维人员可以独立解决此类问题</strong>。</p> <p><img src="/assets/img/image-20190722224029397.abc44209.png" alt="image-20190722224029397"></p> <h3 id="日志:-容器运行时产生的错误"><a href="#日志:-容器运行时产生的错误" aria-hidden="true" class="header-anchor">#</a> 日志: 容器运行时产生的错误</h3> <p>如下图所示,假设您已进入工作负载查看界面:</p> <p><img src="/assets/img/image-20190722225347491.984fabae.png" alt="image-20190722225347491"></p> <ul><li>点击其中的 <em><strong>日志</strong></em> 按钮</li></ul> <p>可查看该容器的运行时日志,如下图所示:</p> <p><img src="/assets/img/image-20190722225454029.73400267.png" alt="image-20190722225454029"></p> <p><strong>容器运行时问题定位及解决</strong></p> <p>日志所指示出来的错误,可能有两类原因:</p> <ul><li>将其容器部署到 Kubernetes 时,参数配置填写错误</li> <li>容器内应用程序自身的 BUG</li></ul> <p>无论是上述何种原因,运维人员如果请开发人员介入,一起排查这里问题,效果会好很多。</p> <h3 id="终端:-通过交互式命令,在容器内诊断问题"><a href="#终端:-通过交互式命令,在容器内诊断问题" aria-hidden="true" class="header-anchor">#</a> 终端: 通过交互式命令,在容器内诊断问题</h3> <ul><li><p>点击 <em><strong>终端</strong></em> 按钮</p> <p>可进入该容器的交互式命令界面</p></li></ul> <p><img src="/assets/img/image-20190722230511430.ed459354.png" alt="image-20190722230511430"></p> <p><strong>适用场景</strong></p> <p>在交互式终端里,<strong>运维人员</strong>可以:</p> <ul><li>通过 ping / curl 等命令,测试网络连通性,测试 Kubernetes 的服务 DNS 解析是否正确</li> <li>通过 export 命令检查该容器的环境变量的设置是否正确</li></ul> <p><strong>开发人员</strong> 可以:</p> <ul><li>通过 ls / cat / vi 等命令,查看该容器是否包含了最新的代码变更</li> <li>通过 vi 等命令,临时对容器中的配置文件进行修改,并在验证这种修改有效之后,才将其正式更新到代码库</li></ul></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/eip-work/kuboard-press/edit/master/guide/namespace/workload.md" target="_blank" rel="noopener noreferrer">帮助我们改善此页面!</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">更新时间: </span> <span class="time">2019-07-25 06:22:52</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
|
||
←
|
||
<a href="/guide/cluster/namespace.html" class="prev">
|
||
名称空间管理
|
||
</a></span> <span class="next"><a href="/guide/namespace/secrets.html">
|
||
Secrets
|
||
</a>
|
||
→
|
||
</span></p></div> <div class="bottom-description" data-v-61e379b0>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.b49a6aca.js" defer></script><script src="/assets/js/11.42d7fd85.js" defer></script><script src="/assets/js/2.e1436c28.js" defer></script><script src="/assets/js/10.6e5cfa80.js" defer></script>
|
||
</body>
|
||
</html>
|