Kubernetes 编排系统
1.1 Kubernetes简介
1.1.1 什么是Kubernetes
1.1.2 Kubernetes发展史
1.1.3 Kubernetes 特点
1.1.4 Kubernetes规划组件
Pod
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;background: yellow;">标签和选择器
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;background: yellow;">控制器
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;background: yellow;">服务
1.1.5 Kubernetes核心组件
Kubernetes主要由以下几个核心组件组成:
<td style="width: 72.94%; border-top: 1pt solid #9bbb59; border-right: 1pt solid #9bbb59; border-bottom: 1pt solid #9bbb59; border-left: none; background: #9bbb59; padding: 0cm 5.4pt;" width="72%">
<p style="text-align: center;" align="center">
<strong><span style="font-family: '微软雅黑',sans-serif; courier new"4courier new";color: white;">说明</span></strong>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">保存了整个集群的状态;</span>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">提供了资源操作的唯一入口,并提供认证、授权、访问控制、</span>API<span style="font-family: '微软雅黑',sans-serif;">注册和发现等机制;</span>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">负责维护集群的状态,比如故障检测、自动扩展、滚动更新等;</span>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">负责资源的调度,按照预定的调度策略将</span>Pod<span style="font-family: '微软雅黑',sans-serif;">调度到相应的机器上;</span>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">负责维护容器的生命周期,同时也负责</span>Volume<span style="font-family: '微软雅黑',sans-serif;">(</span>CVI<span style="font-family: '微软雅黑',sans-serif;">)和网络(</span>CNI<span style="font-family: '微软雅黑',sans-serif;">)的管理;</span>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">负责镜像管理以及</span>Pod<span style="font-family: '微软雅黑',sans-serif;">和容器的真正运行(</span>CRI<span style="font-family: '微软雅黑',sans-serif;">);</span>
</p>
</td>
<td style="width: 72.94%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="72%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">负责为</span>Service<span style="font-family: '微软雅黑',sans-serif;">提供</span>cluster<span style="font-family: '微软雅黑',sans-serif;">内部的服务发现和负载均衡;</span>
</p>
</td>
核心组件结构图
除了核心组件,还有一些推荐的Add-ons:
<td style="width: 68.86%; border-top: 1pt solid #9bbb59; border-right: 1pt solid #9bbb59; border-bottom: 1pt solid #9bbb59; border-left: none; background: #9bbb59; padding: 0cm 5.4pt;" width="68%">
<p style="text-align: center;" align="center">
<strong><span style="font-family: '微软雅黑',sans-serif; courier new"4courier new";color: white;">说明</span></strong>
</p>
</td>
<td style="width: 68.86%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="68%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">负责为整个集群提供</span>DNS<span style="font-family: '微软雅黑',sans-serif;">服务</span>
</p>
</td>
<td style="width: 68.86%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="68%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">为服务提供外网入口</span>
</p>
</td>
<td style="width: 68.86%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="68%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">提供资源监控</span>
</p>
</td>
<td style="width: 68.86%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="68%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">提供</span>GUI
</p>
</td>
<td style="width: 68.86%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="68%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">提供跨可用区的集群</span>
</p>
</td>
<td style="width: 68.86%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="68%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">提供集群日志采集、存储与查询</span>
</p>
</td>
1.1.6 分层架构
分层说明:
<td style="width: 85.12%; border-top: 1pt solid #9bbb59; border-right: 1pt solid #9bbb59; border-bottom: 1pt solid #9bbb59; border-left: none; background: #9bbb59; padding: 0cm 5.4pt;" colspan="2" width="85%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<strong><span style="font-family: '微软雅黑',sans-serif; courier new"4courier new";color: white;">说明</span></strong>
</p>
</td>
<td style="width: 85.12%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" colspan="2" width="85%">
<p style="text-align: justify; text-justify: inter-ideograph;">
Kubernetes<span style="font-family: '微软雅黑',sans-serif;">最核心的功能,对外提供</span>API<span style="font-family: '微软雅黑',sans-serif;">构建高层的应用,对内提供插件式应用执行环境</span>
</p>
</td>
<td style="width: 85.12%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" colspan="2" width="85%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">部署(无状态应用、有状态应用、批处理任务、集群应用等)和路由(服务发现、</span>DNS<span style="font-family: '微软雅黑',sans-serif;">解析等)</span>
</p>
</td>
<td style="width: 85.12%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" colspan="2" width="85%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">系统度量(如基础设施、容器和网络的度量),自动化(如自动扩展、动态</span>Provision<span style="font-family: '微软雅黑',sans-serif;">等)以及策略管理(</span>RBAC<span style="font-family: '微软雅黑',sans-serif;">、</span>Quota<span style="font-family: '微软雅黑',sans-serif;">、</span>PSP<span style="font-family: '微软雅黑',sans-serif;">、</span>NetworkPolicy<span style="font-family: '微软雅黑',sans-serif;">等)</span>
</p>
</td>
<td style="width: 85.12%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" colspan="2" width="85%">
<p style="text-align: justify; text-justify: inter-ideograph;">
kubectl<span style="font-family: '微软雅黑',sans-serif;">命令行工具、客户端</span>SDK<span style="font-family: '微软雅黑',sans-serif;">以及集群联邦</span>
</p>
</td>
<td style="width: 85.12%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #92D050; padding: 0cm 5.4pt 0cm 5.4pt;" colspan="2" width="85%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">在接口层之上的庞大容器集群管理调度的生态系统,可以划分为两个范畴</span>
</p>
</td>
<td style="width: 62.08%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt; height: 17.7pt;" width="62%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">日志、监控、配置管理、</span>CI<span style="font-family: '微软雅黑',sans-serif;">、</span>CD<span style="font-family: '微软雅黑',sans-serif;">、</span>Workflow<span style="font-family: '微软雅黑',sans-serif;">、</span>FaaS<span style="font-family: '微软雅黑',sans-serif;">、</span>OTS<span style="font-family: '微软雅黑',sans-serif;">应用、</span>ChatOps<span style="font-family: '微软雅黑',sans-serif;">等</span>
</p>
</td>
<td style="width: 62.08%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt; height: 17.65pt;" width="62%">
<p style="text-align: justify; text-justify: inter-ideograph;">
CRI<span style="font-family: '微软雅黑',sans-serif;">、</span>CNI<span style="font-family: '微软雅黑',sans-serif;">、</span>CVI<span style="font-family: '微软雅黑',sans-serif;">、镜像仓库、</span>Cloud Provider<span style="font-family: '微软雅黑',sans-serif;">、集群自身的配置和管理等</span>
</p>
</td>
1.2 部署Kubernetes集群
1.2.1 主机环境说明
主机IP规划
<td style="width: 39.32%; border-top: solid #9BBB59 1.0pt; border-left: none; border-bottom: solid #9BBB59 1.0pt; border-right: none; background: #9BBB59; padding: 0cm 5.4pt 0cm 5.4pt;" width="39%">
<p style="text-align: center;" align="center">
<strong><span style="color: white;">IP</span></strong>
</p>
</td>
<td style="width: 37.68%; border-top: 1pt solid #9bbb59; border-right: 1pt solid #9bbb59; border-bottom: 1pt solid #9bbb59; border-left: none; background: #9bbb59; padding: 0cm 5.4pt;" width="37%">
<p style="text-align: center;" align="center">
<strong><span style="font-family: '微软雅黑',sans-serif; courier new"4courier new";color: white;">功能</span></strong>
</p>
</td>
<td style="width: 39.32%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="39%">
<p style="text-align: center;" align="center">
10.0.0.11/172.16.1.11
</p>
</td>
<td style="width: 37.68%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="37%">
<p style="text-align: center;" align="center">
Master<span style="font-family: '微软雅黑',sans-serif;">、</span>etcd<span style="font-family: '微软雅黑',sans-serif;">、</span>registry
</p>
</td>
<td style="width: 39.32%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="39%">
<p style="text-align: center;" align="center">
10.0.0.12/172.16.1.12
</p>
</td>
<td style="width: 37.68%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="37%">
<p style="text-align: center;" align="center">
node1
</p>
</td>
<td style="width: 39.32%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="39%">
<p style="text-align: center;" align="center">
10.0.0.13/172.16.1.13
</p>
</td>
<td style="width: 37.68%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="37%">
<p style="text-align: center;" align="center">
node2
</p>
</td>
设置hosts解析
1.2.2 安装软件包
在三个节点上分别操作
安装的软件版本说明
1.2.3 修改配置etcd
yum安装的etcd默认配置文件在/etc/etcd/etcd.conf。
最终配置文件
启动etcd
测试etcd
1.2.4 配置并启动kubernetes
/etc/kubernetes/apiserver配置文件内容
/etc/kubernetes/config配置文件
启动服务
1.2.5 部署配置node
/etc/kubernetes/config配置文件
/etc/kubernetes/config配置文件
启动
在master上查看集群中节点及节点状态
至此Kubernetes基础部署完成
1.2.6 Kubernetes其他安装方法
二进制安装
kubuadm 安装
minikube 安装
ansible部署:https://github.com/gjmzj/kubeasz
1.3 创建覆盖网络–Flannel
1.3.1 配置Flannel(所有节点操作)
安装软件包
修改配置文件
1.3.2 配置etcd中关于flannel的key
配置网络范围
master节点操作
node节点操作
修改配置文件
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”; color: red; background: yellow;">至此Flannel****<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”; color: red; background: yellow;">网络配置完成
1.4 创建一个简单的pod
1.4.1 写一个编排yaml格式
1.4.2 启动一个pod
查看默认namespace下的pods
查看pod的详细信息
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;color: red;">该错误的解决方法: yum install python-rhsm* -y
获取指定pods详细信息
获取已运行pod状态
下载pod-infrastructure镜像包
1.4.3 pod其他操作
删除pod,重新创建
查看状态
1.5 Replication Controller
RC是K8s集群中最早的保证Pod高可用的API对象。通过监控运行中的Pod来保证集群中运行指定数目的Pod副本。指定的数目可以是多个也可以是1个;少于指定数目,RC就会启动运行新的Pod副本;多于指定数目,RC就会杀死多余的Pod副本。
即使在指定数目为1的情况下,通过RC运行Pod也比直接运行Pod更明智,因为RC也可以发挥它高可用的能力,保证永远有1个Pod在运行。
1.5.1 简单rc配置
始终保证有一个在活着
更新rc文件
nginx.yml文件信息
对现有已创建资源直进行修改
可以调整数量即使生效
1.5.2 rs实现灰度发布
web-rc.yaml文件内容
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;background: yellow;">创建集群
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;background: yellow;">对集群进行升级操作
将集群内容器自动升级到新版本的容器
web-rc2.yaml配置文件内容
<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;background: yellow;">升级后的回滚
使用新的文件,进行升级操作可达到回滚的目的,参考:https://github.com/kubeguide/samplecode
1.5.3 rc小结
1.6 服务(Service)
1.6.1 Service作用
1.6.2 测试service
启动集群
浏览器访问测试
1.6.3 service原理图
1.6.4 K8S三种IP
<td style="width: 78.36%; border-top: 1pt solid #9bbb59; border-right: 1pt solid #9bbb59; border-bottom: 1pt solid #9bbb59; border-left: none; background: #9bbb59; padding: 0cm 5.4pt;" width="78%">
<p style="text-align: center;" align="center">
<strong><span style="font-family: '微软雅黑',sans-serif; courier new"4courier new";color: white;">说明</span></strong>
</p>
</td>
<td style="width: 78.36%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="78%">
<p style="text-align: justify; text-justify: inter-ideograph;">
<span style="font-family: '微软雅黑',sans-serif;">节点设备的</span>IP<span style="font-family: '微软雅黑',sans-serif;">,如物理机,虚拟机等容器宿主的实际</span>IP<span style="font-family: '微软雅黑',sans-serif;">。</span>
</p>
</td>
<td style="width: 78.36%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; padding: 0cm 5.4pt 0cm 5.4pt;" width="78%">
<p style="text-align: justify; text-justify: inter-ideograph;">
Pod <span style="font-family: '微软雅黑',sans-serif;">的</span>IP<span style="font-family: '微软雅黑',sans-serif;">地址,是根据</span>docker0<span style="font-family: '微软雅黑',sans-serif;">网格</span>IP<span style="font-family: '微软雅黑',sans-serif;">段进行分配的。</span>
</p>
</td>
<td style="width: 78.36%; border-top: none; border-left: none; border-bottom: solid #C2D69B 1.0pt; border-right: solid #C2D69B 1.0pt; background: #EAF1DD; padding: 0cm 5.4pt 0cm 5.4pt;" width="78%">
<p style="text-align: justify; text-justify: inter-ideograph;">
Service<span style="font-family: '微软雅黑',sans-serif;">的</span>IP<span style="font-family: '微软雅黑',sans-serif;">,是一个虚拟</span>IP<span style="font-family: '微软雅黑',sans-serif;">,仅作用于</span>service<span style="font-family: '微软雅黑',sans-serif;">对象,由</span>k8s<span style="font-family: '微软雅黑',sans-serif;">管理和分配,需要结合</span>service port<span style="font-family: '微软雅黑',sans-serif;">才能使用,单独的</span>IP<span style="font-family: '微软雅黑',sans-serif;">没有通信功能,集群外访问需要一些修改。</span>
</p>
</td>
1.7 部署DashBoard
1.7.1 修改配置文件
编辑dashboard.yaml,注意或更改以下部分:
1.7.2 镜像准备
在dashboard.yaml中定义了dashboard所用的镜像
gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.1(当然你可以选择其他的版本)
下载地址
1.7.3 启动dashboard
在master执行如下命令:
1.7.4 验证
命令验证,master上执行如下命令:
1.7.5 浏览器访问:http://10.0.0.11:8080/ui
1.7.6 销毁应用<span style=“font-family: ‘微软雅黑’,sans-serif; courier new"4courier new”;color: red; font-weight: normal;">(测试)
在master上执行:
1.8 参考文献
<li>
<a href="#12_Kubernetes">1.2 部署Kubernetes集群</a><ul>
<li>
<a href="#121">1.2.1 主机环境说明</a>
</li>
<li>
<a href="#122">1.2.2 安装软件包</a>
</li>
<li>
<a href="#123_etcd">1.2.3 修改配置etcd</a>
</li>
<li>
<a href="#124_kubernetes">1.2.4 配置并启动kubernetes</a>
</li>
<li>
<a href="#125_node">1.2.5 部署配置node</a>
</li>
<li>
<a href="#126_Kubernetes">1.2.6 Kubernetes其他安装方法</a>
</li>
</ul>
</li>
<li>
<a href="#13_--Flannel">1.3 创建覆盖网络--Flannel</a><ul>
<li>
<a href="#131_Flannel">1.3.1 配置Flannel(所有节点操作)</a>
</li>
<li>
<a href="#132_etcdflannelkey">1.3.2 配置etcd中关于flannel的key</a>
</li>
</ul>
</li>
<li>
<a href="#14_pod">1.4 创建一个简单的pod</a><ul>
<li>
<a href="#141_yaml">1.4.1 写一个编排yaml格式</a>
</li>
<li>
<a href="#142_pod">1.4.2 启动一个pod</a>
</li>
<li>
<a href="#143_pod">1.4.3 pod其他操作</a>
</li>
</ul>
</li>
<li>
<a href="#15_Replication_Controller">1.5 Replication Controller</a><ul>
<li>
<a href="#151_rc">1.5.1 简单rc配置</a>
</li>
<li>
<a href="#152_rs">1.5.2 rs实现灰度发布</a>
</li>
<li>
<a href="#153_rc">1.5.3 rc小结</a>
</li>
</ul>
</li>
<li>
<a href="#16_Service">1.6 服务(Service)</a><ul>
<li>
<a href="#161_Service">1.6.1 Service作用</a>
</li>
<li>
<a href="#162_service">1.6.2 测试service</a>
</li>
<li>
<a href="#163_service">1.6.3 service原理图</a>
</li>
<li>
<a href="#164_K8SIP">1.6.4 K8S三种IP</a>
</li>
</ul>
</li>
<li>
<a href="#17_DashBoard">1.7 部署DashBoard</a><ul>
<li>
<a href="#171">1.7.1 修改配置文件</a>
</li>
<li>
<a href="#172">1.7.2 镜像准备</a>
</li>
<li>
<a href="#173_dashboard">1.7.3 启动dashboard</a>
</li>
<li>
<a href="#174">1.7.4 验证</a>
</li>
<li>
<a href="#175_http1000118080ui">1.7.5 浏览器访问:http://10.0.0.11:8080/ui</a>
</li>
<li>
<a href="#176">1.7.6 销毁应用(测试)</a>
</li>
</ul>
</li>
<li>
<a href="#18">1.8 参考文献</a>
</li>
- 原文作者:惨绿少年
- 原文链接:https://clsn.io/clsn/lx8.html
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。