Docker
k8s部署nginx入门
k8s部署nginx入门
最近一周都很忙,更新速度也有所缓慢,上回介绍了在自己的服务器上搭建k8s,在此基础上介绍如何在k8s上部署nginx,这里只做简单的部署说明,更加详细说明,在后面会跟大家介绍。
本文使用的是deployment用来部署应用的方式部署nginx,我们直接贴出deployment的配置
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: selector: matchLabels: app: nginx replicas: 2 template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:alpine ports: - containerPort: 80
下面这个是Service的配置
apiVersion: v1 kind: Service metadata: name: nginx-service labels: app: nginx spec: type: NodePort selector: app: nginx ports: - port: 80 targetPort: 80 nodePort: 30080
简单介绍说明
Kind:类型,有Deployment、Service、Pod、Ingress等,非常丰富; metadata:用于定义一些组件信息,如名字、标签等; labels:标签功能,非常有用,用于选择关联;但label不提供唯一性,可以使用组合来选择; nodePort:对于需要给外部暴露的服务,有三种方式:NodePorts、LoadBalancer、Ingress,这里使用NodePorts;需要注意的是,默认它的端口范围是[3000-32767],需要其它范围则需要修改相关参数
我们创建一个命名为nginx-deployment-scale.yaml的文件,将上面两部分的配置放在一起,详细如下
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: selector: matchLabels: app: nginx replicas: 2 template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:alpine ports: - containerPort: 80 --- apiVersion: v1 kind: Service metadata: name: nginx-service labels: app: nginx spec: type: NodePort selector: app: nginx ports: - port: 80 targetPort: 80 nodePort: 30080
保存之后,我们直接运行以下命令运行
kubectl apply -f nginx-deployment-scale.yaml
创建成功,我们可以直接访问访问->IP:30080,浏览器出现如下效果
这样就成功部署了nginx,如果想卸载不想部署了,直接输入以下命令
kubectl delete -f nginx-deployment-scale.yaml
以上就是简单的说明如何在k8s上部署nginx。
0条评论