# TKE操作笔记04

本周讲述了在TKE上如何监控集群并发送告警，简单部署wordpress到集群中

## TKE监控使用和查看

良好的监控环境为腾讯云容器服务高可靠性、高可用性和高性能提供重要保证。您可以方便为不同资源收集不同维度的监控数据，能方便掌握资源的使用状况，轻松定位故障。 腾讯云容器服务提供集群、节点、工作负载、Pod、Container 5个层面的监控数据收集和展示功能。 收集监控数据有助于您建立容器集群性能的正常标准。通过在不同时间、不同负载条件下测量容集群的性能并收集历史监控数据，您可以较为清楚的了解容器集群和服务运行时的正常性能，并能快速根据当前监控数据判断服务运行时是否处于异常状态，及时找出解决问题的方法。例如，您可以监控服务的 CPU 利用率、内存使用率和磁盘 I/O

### 集群整体监控

![upload-image](/files/-MN2J7NdaTyMDd473BOD)

![upload-image](/files/-MN2J7NekjmDsUIWPsK8)

可以选择不同的时间段，时间间隔等选项来查看对应的指标数据

### 节点监控

![upload-image](/files/-MN2J7NjnmXQGHIVinLU)

![upload-image](/files/-MN2J7NkoiX4HY9brI8B)

我们可以查看某一个节点或者所有节点的监控指标，根据其他选项来选择数据的时间段和类型

### pod监控

![upload-image](/files/-MN2J7NlpE0OsMUEa675)

![upload-image](/files/-MN2J7NmQSNq_ynqmxo5)

我们要选择pod所在的节点，然后再进行其他选择来查看某个pod或者所有pod的监控指标数据

### deployment监控

![upload-image](/files/-MN2J7NnAvwS8_89XTiG)

![upload-image](/files/-MN2J7NoBpwzbWJcoolr)

可以选择所有负载或者某一个负载不同时间段的监控数据

### 查看某个deployment中具体pod的监控

![upload-image](/files/-MN2J7NpRz8lOfgRB5R2)

![upload-image](/files/-MN2J7Nq-o2uOx3yTBCP)

![upload-image](/files/-MN2J7NrqWZtYGws9uy2)

### 查看pod内某个容器的指标

![upload-image](/files/-MN2J7Nsg8Hl3JUC6riC)

单击【Container】，将【所属 Pod】选择为您想查看的 Pod，即可查看该 Pod 内 Container 的监控指标对比图

## helm的安装和使用

### helm的安装

#### helm服务端的安装

![upload-image](/files/-MN2J7Ntzh2Q5ysyn7Vu)

找到扩展插件，选择你的集群，选择helm，点击安装到你的集群中即可

#### helm客户端的安装

在你配置了集群的访问凭证下执行如下操作

```
curl -O https://storage.googleapis.com/kubernetes-helm/helm-v2.10.0-linux-amd64.tar.gz
tar xzvf helm-v2.10.0-linux-amd64.tar.gz
sudo cp linux-amd64/helm /usr/local/bin/helm
```

能够正确查询到版本则成功

```
[root@VM_0_13_centos ~]# helm version
Client: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
```

配置 Helm 为 Client-only

执行以下命令，将 Helm 配置为 Client-only。

```
helm init --client-only
```

### helm的使用

#### helm仓库

```
[root@VM_0_13_centos ~]# helm repo list
NAME    URL
stable  https://kubernetes-charts.storage.googleapis.com
local   http://127.0.0.1:8879/charts
```

一般默认的远程仓库为google的，下载应用比较慢，我们可以设置为阿里的。 客户端命令设置如下

```
[root@VM_0_13_centos ~]# helm repo remove stable
[root@VM_0_13_centos ~]# helm repo add stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
"stable" has been added to your repositories
[root@VM_0_13_centos ~]# helm repo list
NAME    URL
local   http://127.0.0.1:8879/charts
stable  https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
```

我们也可以在控制台安装应用的时候指定chart包地址进行下载

![upload-image](/files/-MN2J7NuylQCnIWGYy79)

![upload-image](/files/-MN2J7NvDJXV_Ddge2gu)

新建应用中填写指定的chart包地址进行安装即可

## 日志的采集

### 创建日志采集

![upload-image](/files/-MN2J7NwfIRbvXIyr9nJ)

首先要在集群中安装扩展插件才能进行日志采集

![upload-image](/files/-MN2J7Nxez_fC7FgqeOf)

![upload-image](/files/-MN2J7Nydgbn933-9qUR)

参数说明

* 名称：填写你日志采集器的名称
* 类型：收集说明类型的日志
* 日志源：可以指定某个容器，也可以选择全部容器（我们这里选择全部）
* 消费端：消费端也就是日志存储的地方，我们选择CLS（没有创建CLS，要先创建）

### 创建CLS日志采集服务

![upload-image](/files/-MN2J7NziFUgcwT-q1wg)

![upload-image](/files/-MN2J7O-7sLoxlyji8v5)

![upload-image](/files/-MN2J7O0aPc1IvDLAmuJ)

可以根据需要选择你日志保存的天数

![upload-image](/files/-MN2J7O11C_yC1kNR8cF)

参数说明：

日志主题名称：采集日志名称

主题分区数量：通过合并或分裂操作可以自由划分区间，从而控制服务的整体吞吐性能，最多为50个

### 收集日志

![upload-image](/files/-MN2J7O2yzw-l9Ax8ZIG)

引用创建的日志主题，点击完成

![upload-image](/files/-MN2J7O3wFl4LD8wtQhd)

日志采集创建完成

### 检索日志

![upload-image](/files/-MN2J7O4ID4p99Rg907d)

日志服务中找到【检索分析】，然后选择你的主题，设置你的日志时间，可以搜索你想要查看的日志内容

## 告警设置

![upload-image](/files/-MN2J7O54WtfFoRV-yJP)

![upload-image](/files/-MN2J7O6mPxUPZq_pRpa)

可以设置不同的告警指标条件，然后将告警通过不同的方式来给不同的用户组

## 事件持久化

Kubernetes Events 包括了 Kuberntes 集群的运行和各类资源的调度情况，对维护人员日常观察资源的变更以及定位问题均有帮助。TKE 支持为您的所有集群配置事件持久化功能，开启本功能后，会将您的集群事件实时导出到配置的存储端。TKE 还支持使用腾讯云提供的 PAAS 服务或开源软件对事件流水进行检索

![upload-image](/files/-MN2J7O77EjCH0R9-PXq)

![upload-image](/files/-MN2J7O8FeLSu_5eFEXg)

可以将持久化日志存储到ES或者CLS中

## 健康检查

![upload-image](/files/-MN2J7O95tKowWd7wJCr)

点击健康检查，选择你的集群，可以选择立即手动检查，也可以设置某个时间定时检查。

![upload-image](/files/-MN2J7OAmAn3rNRFKsk_)

点击健康检查，选择你的集群，可以选择立即手动检查，也可以设置某个时间定时检查。

![upload-image](/files/-MN2J7OBsLlu3EsF0mEm)

根据报告可以适当的调整集群，修复告警项

## TecentDB部署WordPress

### 创建mysql数据库

![upload-image](/files/-MN2J7OCv8UrGDKsh5BQ)

![upload-image](/files/-MN2J7OD4Bb5loJXt4i-)

![upload-image](/files/-MN2J7OET9wMV1M2_5Wb)

![upload-image](/files/-MN2J7OFi7sNbv8CuOOQ)

初始化完成后mysql数据库即创建完成

### 部署WordPress服务

![upload-image](/files/-MN2J7OGSdZfnhMF2fPR)

![upload-image](/files/-MN2J7OHAlaYfGcduMUW)

![upload-image](/files/-MN2J7OIGAV8CaFmdzjR)

主要参数信息如下，其余选项保持默认设置：

* 名称：输入自定义容器名称，本文以 my-wordpress为例。
* 镜像：输入 wordpress。
* 镜像版本（Tag）：输入 latest。
* 镜像拉取策略：提供以下3种策略，请按需选择，本文以不进行设置使用默认策略为例。若不设置镜像拉取策略，当镜像版本为空或 latest 时，使用 Always 策略，否则使用 IfNotPresent 策略。
  * Always：总是从远程拉取该镜像。
  * IfNotPresent：默认使用本地镜像，若本地无该镜像则远程拉取该镜像。
  * Never：只使用本地镜像，若本地没有该镜像将报异常。
* 环境变量：依次输入以下配置信息：
  * WORDPRESS\_DB\_HOST = 云数据库 MySQL 的内网 IP
  * WORDPRESS\_DB\_PASSWORD = 初始化时填写的密码
* Service：勾选“启用”。
* 服务访问方式：选择“提供公网访问”。
* 负载均衡器：根据实际需求进行选择。
* 端口映射：选择 TCP 协议，将容器端口和服务端口都设置为80 。

### 访问wordpress服务

![upload-image](/files/-MN2J7OJ_6ZYe_Lz-Kyv)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.niewx.cn/20200605tke-cao-zuo-bi-ji-04.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
