Files
kuboard-press/docs/assets/js/29.34e51a57.js
huanqing.shao 0914281f6b token
2019-07-30 07:02:29 +08:00

1 line
13 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

(window.webpackJsonp=window.webpackJsonp||[]).push([[29],{106:function(t,e,a){t.exports=a.p+"assets/img/kuboard_qq.45e78dbf.png"},391:function(t,e,a){"use strict";a.r(e);var s=a(0),r=Object(s.a)({},function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"安装-kuboard"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#安装-kuboard","aria-hidden":"true"}},[t._v("#")]),t._v(" 安装 Kuboard")]),t._v(" "),s("h2",{attrs:{id:"前提"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#前提","aria-hidden":"true"}},[t._v("#")]),t._v(" 前提")]),t._v(" "),s("p",[t._v("安装 Kuboard 时,假设您已经有一个 Kubernetes 集群")]),t._v(" "),s("p",[t._v("如果没有 Kubernetes 集群:")]),t._v(" "),s("ul",[s("li",[t._v("初学者, 请参考 "),s("a",{attrs:{href:"install-k8s"}},[t._v("安装 Kubernetes 单Master节点")])]),t._v(" "),s("li",[t._v("用于生产,请参考 "),s("a",{attrs:{href:"install-kubernetes"}},[t._v("安装 Kubernetes 高可用")])])]),t._v(" "),s("p",[t._v("碰到问题? "),s("strong",[t._v("在线提问")])]),t._v(" "),s("p",[s("img",{attrs:{src:a(106),alt:"Kuboard 兴趣群二维码"}})]),t._v(" "),s("h2",{attrs:{id:"兼容性"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#兼容性","aria-hidden":"true"}},[t._v("#")]),t._v(" 兼容性")]),t._v(" "),s("table",[s("thead",[s("tr",[s("th",[t._v("Kubernetes 版本")]),t._v(" "),s("th",[t._v("Kuboard 版本")]),t._v(" "),s("th",[t._v("兼容性")]),t._v(" "),s("th",[t._v("说明")])])]),t._v(" "),s("tbody",[s("tr",[s("td",[t._v("v1.15")]),t._v(" "),s("td",[t._v("v1.0.0-beta.13")]),t._v(" "),s("td",[s("span",{staticStyle:{"font-size":"24px"}},[t._v("😄")])]),t._v(" "),s("td",[t._v("已验证")])]),t._v(" "),s("tr",[s("td",[t._v("v1.14")]),t._v(" "),s("td",[t._v("v1.0.0-beta.13")]),t._v(" "),s("td",[s("span",{staticStyle:{"font-size":"24px"}},[t._v("😄")])]),t._v(" "),s("td",[t._v("已验证")])]),t._v(" "),s("tr",[s("td",[t._v("v1.13")]),t._v(" "),s("td",[t._v("v1.0.0-beta.13")]),t._v(" "),s("td",[s("span",{staticStyle:{"font-size":"24px"}},[t._v("😄")])]),t._v(" "),s("td",[t._v("已验证")])]),t._v(" "),s("tr",[s("td",[t._v("v1.12")]),t._v(" "),s("td",[t._v("v1.0.0-beta.13")]),t._v(" "),s("td",[s("span",{staticStyle:{"font-size":"24px"}},[t._v("😐")])]),t._v(" "),s("td",[t._v("Kubernetes Api v1.12 尚不支持 dryRun"),s("br"),t._v("忽略Kuboard在执行命令时的参数校验错误可正常工作")])]),t._v(" "),s("tr",[s("td",[t._v("v1.11")]),t._v(" "),s("td",[t._v("v1.0.0-beta.13")]),t._v(" "),s("td",[s("span",{staticStyle:{"font-size":"24px"}},[t._v("😐")])]),t._v(" "),s("td",[t._v("同上")])])])]),t._v(" "),s("h2",{attrs:{id:"安装"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#安装","aria-hidden":"true"}},[t._v("#")]),t._v(" 安装")]),t._v(" "),s("p",[s("strong",[t._v("获取并修改yaml文件")])]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[s("span",{pre:!0,attrs:{class:"token function"}},[t._v("wget")]),t._v(" https://raw.githubusercontent.com/eip-work/eip-monitor-repository/master/dashboard/kuboard.yaml\n")])])]),s("p",[t._v("修改文件 Kuboard.yaml 中 Ingress 的 host 为 kuboard.yourclustername.yourdomain.com")]),t._v(" "),s("p",[s("strong",[t._v("执行安装")])]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("kubectl apply -f kuboard.yaml \n")])])]),s("h2",{attrs:{id:"获取-token"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#获取-token","aria-hidden":"true"}},[t._v("#")]),t._v(" 获取 Token")]),t._v(" "),s("p",[t._v("您可以获得管理员用户、只读用户的Token")]),t._v(" "),s("Tabs",{attrs:{type:"border-card"}},[s("Tab",{attrs:{label:"管理员用户",lazy:""}},[s("p",[s("strong",[t._v("拥有的权限")])]),t._v(" "),s("ul",[s("li",[t._v("此Token拥有 ClusterAdmin 的权限,可以执行所有操作")])]),t._v(" "),s("p",[s("strong",[t._v("执行命令")])]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("kubectl -n kube-system describe secret "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),t._v("kubectl -n kube-system get secret "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("grep")]),t._v(" kuboard-user "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("awk")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'{print "),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$1")]),t._v("}'")]),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v(" \n")])])]),s("p",[s("strong",[t._v("输出")])]),t._v(" "),s("p",[t._v("取输出信息中 token 字段")]),t._v(" "),s("div",{staticClass:"language- extra-class"},[s("div",{staticClass:"highlight-lines"},[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("div",{staticClass:"highlighted"},[t._v(" ")]),s("br")]),s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("Name: admin-user-token-g8hxb\nNamespace: kube-system\nLabels: <none>\nAnnotations: [kubernetes.io/service-account.name](http://kubernetes.io/service-account.name): Kuboard-user\n[kubernetes.io/service-account.uid](http://kubernetes.io/service-account.uid): 948bb5e6-8cdc-11e9-b67e-fa163e5f7a0f\n\nType: [kubernetes.io/service-account-token](http://kubernetes.io/service-account-token)\n\nData\n====\nca.crt: 1025 bytes\nnamespace: 11 bytes\ntoken: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWc4aHhiIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI5NDhiYjVlNi04Y2RjLTExZTktYjY3ZS1mYTE2M2U1ZjdhMGYiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06YWRtaW4tdXNlciJ9.DZ6dMTr8GExo5IH_vCWdB_MDfQaNognjfZKl0E5VW8vUFMVvALwo0BS-6Qsqpfxrlz87oE9yGVCpBYV0D00811bLhHIg-IR_MiBneadcqdQ_TGm_a0Pz0RbIzqJlRPiyMSxk1eXhmayfPn01upPdVCQj6D3vAY77dpcGplu3p5wE6vsNWAvrQ2d_V1KhR03IB1jJZkYwrI8FHCq_5YuzkPfHsgZ9MBQgH-jqqNXs6r8aoUZIbLsYcMHkin2vzRsMy_tjMCI9yXGiOqI-E5efTb-_KbDVwV5cbdqEIegdtYZ2J3mlrFQlmPGYTwFI8Ba9LleSYbCi4o0k74568KcN_w\n")])])])]),t._v(" "),s("Tab",{attrs:{label:"只读用户",lazy:""}},[s("p",[s("strong",[t._v("拥有的权限")])]),t._v(" "),s("ul",[s("li",[t._v("view 可查看名称空间的内容")]),t._v(" "),s("li",[t._v("system:node 可查看节点信息")]),t._v(" "),s("li",[t._v("system:persistent-volume-provisioner 可查看存储类和存储卷声明的信息")])]),t._v(" "),s("p",[s("strong",[t._v("适用场景")])]),t._v(" "),s("p",[t._v("只读用户不能对集群的配置执行修改操作,非常适用于将开发环境中的 Kuboard 只读权限分发给开发者,以便开发者可以便捷地诊断问题")]),t._v(" "),s("p",[s("strong",[t._v("执行命令")])]),t._v(" "),s("p",[t._v("执行如下命令可以获得 "),s("span",{staticStyle:{color:"#F56C6C","font-weight":"500"}},[t._v("只读用户")]),t._v(" 的 Token")]),t._v(" "),s("div",{staticClass:"language-bash extra-class"},[s("pre",{pre:!0,attrs:{class:"language-bash"}},[s("code",[t._v("kubectl -n kube-system describe secret "),s("span",{pre:!0,attrs:{class:"token variable"}},[s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$(")]),t._v("kubectl -n kube-system get secret "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("grep")]),t._v(" kuboard-viewer "),s("span",{pre:!0,attrs:{class:"token operator"}},[t._v("|")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token function"}},[t._v("awk")]),t._v(" "),s("span",{pre:!0,attrs:{class:"token string"}},[t._v("'{print "),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v("$1")]),t._v("}'")]),s("span",{pre:!0,attrs:{class:"token variable"}},[t._v(")")])]),t._v(" \n")])])]),s("p",[s("strong",[t._v("输出")])]),t._v(" "),s("p",[t._v("取输出信息中 token 字段")]),t._v(" "),s("div",{staticClass:"language- extra-class"},[s("div",{staticClass:"highlight-lines"},[s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("br"),s("div",{staticClass:"highlighted"},[t._v(" ")]),s("br")]),s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("Name: admin-user-token-g8hxb\nNamespace: kube-system\nLabels: <none>\nAnnotations: [kubernetes.io/service-account.name](http://kubernetes.io/service-account.name): Kuboard-viewer\n[kubernetes.io/service-account.uid](http://kubernetes.io/service-account.uid): 948bb5e6-8cdc-11e9-b67e-fa163e5f7a0f\n\nType: [kubernetes.io/service-account-token](http://kubernetes.io/service-account-token)\n\nData\n====\nca.crt: 1025 bytes\nnamespace: 11 bytes\ntoken: eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJhZG1pbi11c2VyLXRva2VuLWc4aHhiIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImFkbWluLXVzZXIiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiI5NDhiYjVlNi04Y2RjLTExZTktYjY3ZS1mYTE2M2U1ZjdhMGYiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06YWRtaW4tdXNlciJ9.DZ6dMTr8GExo5IH_vCWdB_MDfQaNognjfZKl0E5VW8vUFMVvALwo0BS-6Qsqpfxrlz87oE9yGVCpBYV0D00811bLhHIg-IR_MiBneadcqdQ_TGm_a0Pz0RbIzqJlRPiyMSxk1eXhmayfPn01upPdVCQj6D3vAY77dpcGplu3p5wE6vsNWAvrQ2d_V1KhR03IB1jJZkYwrI8FHCq_5YuzkPfHsgZ9MBQgH-jqqNXs6r8aoUZIbLsYcMHkin2vzRsMy_tjMCI9yXGiOqI-E5efTb-_KbDVwV5cbdqEIegdtYZ2J3mlrFQlmPGYTwFI8Ba9LleSYbCi4o0k74568KcN_w\n")])])])])],1),t._v(" "),s("h2",{attrs:{id:"访问-kuboard"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#访问-kuboard","aria-hidden":"true"}},[t._v("#")]),t._v(" 访问 Kuboard")]),t._v(" "),s("p",[t._v("您可以通过NodePort、port-forward、域名三种方式当中的任意一种访问 Kuboard")]),t._v(" "),s("Tabs",{attrs:{type:"border-card"}},[s("Tab",{attrs:{label:"通过NodePort访问",lazy:""}},[s("p",[t._v("Kuboard Service 使用了 NodePort 的方式暴露服务NodePort 为 32567您可以按如下方式访问 Kuboard。可以使用集群中任意节点的 IP 地址)")]),t._v(" "),s("p",[s("code",[t._v("http://any-of-your-node-ip:32567/")])]),t._v(" "),s("p",[t._v("输入前一步骤中获得的 token可进入 "),s("strong",[t._v("Kuboard 集群概览页")])]),t._v(" "),s("div",{staticClass:"tip custom-block"},[s("p",[t._v("您也可以修改 Kuboard.yaml 文件,使用自己定义的 NodePort 端口号")])])]),t._v(" "),s("Tab",{attrs:{label:"通过port-forward访问",lazy:""}},[s("p",[t._v("在您的客户端电脑中执行如下命令")]),t._v(" "),s("div",{staticClass:"language-sh extra-class"},[s("pre",{pre:!0,attrs:{class:"language-sh"}},[s("code",[t._v("kubectl port-forward service/Kuboard "),s("span",{pre:!0,attrs:{class:"token number"}},[t._v("8080")]),t._v(":80 -n kube-system\n")])])]),s("p",[t._v("在浏览器打开链接 (请使用 kubectl 所在机器的IP地址")]),t._v(" "),s("p",[s("code",[t._v("http://localhost:8080")])]),t._v(" "),s("p",[t._v("输入前一步骤中获得的 token可进入 "),s("strong",[t._v("Kuboard 集群概览页")])]),t._v(" "),s("div",{staticClass:"tip custom-block"},[s("p",[t._v("需要您先完成 "),s("a",{attrs:{href:"install-kubectl"}},[t._v("从客户端电脑远程管理 Kubernetes")]),t._v(" 的配置")])])]),t._v(" "),s("Tab",{attrs:{label:"通过域名访问",lazy:""}},[s("p",[t._v("在浏览器打开链接 (请使用前面安装 Kuboard 时已修改的域名)")]),t._v(" "),s("p",[s("code",[t._v("http://kuboard.yourclustername.yourdomain.com")])]),t._v(" "),s("p",[t._v("输入前一步骤中获得的 token可进入 "),s("strong",[t._v("Kuboard 集群概览页")])]),t._v(" "),s("div",{staticClass:"tip custom-block"},[s("p",[t._v("需要您")]),t._v(" "),s("ul",[s("li",[t._v("正确安装 Ingress Controller")]),t._v(" "),s("li",[t._v("将您所使用的域名指向 Kubernetes 中的一个 Worker 节点或者Ingress Controller所在机器的IP不同类型的Ingress Controller配置不同")])])])])],1),t._v(" "),s("p",[s("strong",[t._v("下一步")])]),t._v(" "),s("ul",[s("li",[s("p",[t._v("使用 Kuboard 工作负载编辑器 "),s("a",{attrs:{href:"/guide/example/busybox"}},[t._v("创建 busybox")]),t._v(" 10分钟")])]),t._v(" "),s("li",[s("p",[t._v("尝试 Kuboard 设计的其他 example "),s("a",{attrs:{href:"/guide/index"}},[t._v("使用 Kuboard")])])])])],1)},[],!1,null,null,null);e.default=r.exports}}]);