首先,让我们来看一下整个实现“k8s常用组件介绍”的流程:
| 步骤 | 操作 |
| ---- | ---- |
| 1 | 创建一个 Kubernetes 集群 |
| 2 | 部署一个示例应用程序 |
| 3 | 使用常用组件来管理和监控应用程序 |
接下来,我们逐步介绍每个步骤的具体操作及相应的代码示例。
### 步骤一:创建一个 Kubernetes 集群
在本地环境或云服务商上创建一个 Kubernetes 集群。
### 步骤二:部署一个示例应用程序
这里我们以一个简单的 NGINX 应用程序作为示例,部署一个 ReplicaSet。
```yaml
# nginx-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
```
使用以下命令创建部署:
```bash
kubectl apply -f nginx-deployment.yaml
```
### 步骤三:使用常用组件来管理和监控应用程序
#### 1. Kubernetes Dashboard
Kubernetes Dashboard 是一个管理 Kubernetes 集群的 Web UI 工具。部署 Dashboard:
```bash
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml
```
通过以下命令创建 Dashboard 用户:
```bash
kubectl apply -f dashboard-adminuser.yaml
```
获取登录 Token:
```bash
kubectl -n kubernetes-dashboard describe secret $(kubectl -n kubernetes-dashboard get secret | grep admin-user-token | awk '{print $1}')
```
启动 Dashboard 代理:
```bash
kubectl proxy
```
访问 http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ 登录 Dashboard。
#### 2. Prometheus
Prometheus 是一个开源的监控和警报工具。部署 Prometheus:
```bash
kubectl apply -f https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/setup
kubectl apply -f https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests
```
访问 Prometheus Dashboard:
```bash
kubectl --namespace monitoring port-forward svc/prometheus-k8s 9090
```
访问 http://localhost:9090/ 查看监控指标。
通过以上步骤,我们成功地介绍了如何使用常用组件来管理和监控 Kubernetes 应用程序。希望这篇文章可以帮助到正在学习 Kubernetes 的小白们!