## 用K8S一套集群配置开发测试

欢迎来到Kubernetes(K8S)世界!K8S是目前最流行的容器编排工具之一,它能够帮助我们快速、便捷地部署、扩展和管理容器化应用程序。在本文中,我将教您如何配置开发测试环境,让您能够轻松地在K8S集群中进行开发和测试。

### 步骤概览

| 步骤 | 描述 |
|-----------------|------------------------------------------|
| 步骤一:安装Minikube | 在本地环境中安装Minikube,用于搭建本地单节点K8S集群 |
| 步骤二:创建应用 | 使用K8S配置文件创建您的应用程序 |
| 步骤三:部署应用 | 部署您的应用程序到Minikube集群中 |
| 步骤四:测试应用 | 运行测试来验证您的应用程序是否正常运行 |

### 指导步骤

#### 步骤一:安装Minikube

1. 安装Minikube
```bash
brew install minikube
```
这将在您的本地环境中安装Minikube。

2. 启动Minikube
```bash
minikube start
```
这将启动Minikube并创建一个本地单节点K8S集群。

#### 步骤二:创建应用

1. 创建Deployment配置文件(deployment.yaml)
```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app
image: nginx:latest
ports:
- containerPort: 80
```
这个配置文件描述了一个Deployment对象,用于部署3个NGINX容器。

2. 创建Service配置文件(service.yaml)
```yaml
apiVersion: v1
kind: Service
metadata:
name: my-app-svc
spec:
selector:
app: my-app
ports:
- protocol: TCP
port: 80
targetPort: 80
type: NodePort
```
这个配置文件描述了一个Service对象,用于将外部流量路由到Deployment中的Pod。

#### 步骤三:部署应用

1. 部署Deployment
```bash
kubectl apply -f deployment.yaml
```
运行此命令将创建并启动一个名为“my-app”的Deployment。

2. 部署Service
```bash
kubectl apply -f service.yaml
```
运行此命令将创建一个NodePort类型的Service,允许外部流量访问应用程序。

#### 步骤四:测试应用

1. 获取Service的访问端口
```bash
minikube service my-app-svc --url
```
运行此命令将输出应用程序的访问端口。

2. 测试应用
打开浏览器,并访问上一步中获取到的端口,您将看到NGINX欢迎页面。

恭喜!您已经成功配置了K8S集群,并在其中部署和测试了一个简单的应用程序。希望这篇文章对您有所帮助,让您更加了解K8S的开发和测试流程。如果您有任何疑问,请随时向我提问。祝您在K8S的世界中玩得开心!