IT俱乐部 Nginx 如何使用k8s部署nginx服务

如何使用k8s部署nginx服务

前言

首先我们要先理解k8s中的几个比较核心的概念
他们分别是Deployment、POD、Service

简单理解
deployment: 控制Pod副本数量
pod:管理容器
service:对外发布服务

详细解释
pod(容器组)
是 Kubernetes 中最小的调度单元,它可以包含一个或多个容器,并共享相同的网络命名空间和存储卷。Pod 提供了部署应用程序所需的环境,并且可以被创建、删除或替换。

Deployment
是用来定义和管理 Pod 的高级控制器。它描述了应用程序的期望状态,例如需要运行的 Pod 数量、使用的镜像版本等信息。Deployment 会负责根据这些描述来创建、删除或更新 Pod,以确保实际运行的 Pod 符合期望状态。

Service
是用来暴露 Pod 提供的服务给其他应用程序或用户的方式。Service 定义了一组 Pod 的访问策略,通过标签选择器将请求路由到匹配的 Pod 上。Service 可以提供负载均衡、服务发现、内部集群通信等功能。

应用

环境

Ip 主机名 cpu 内存 硬盘
192.168.10.11 master01 2cpu双核 4G 100G
192.168.10.12 worker01 2cpu双核 4G 100G
192.168.10.13 worker02 2cpu双核 4G 100G

已部署k8s-1.27

步骤

创建资源控制器deployment(created就是创建好了)
注:deployment会自动创建pod

kubectl create deployment nginx --image=nginx:1.20

查看

kubectl get pod -o wide

-o wide 查看详细信息
可以看到pod在worker01上成功运行

可以在集群内进行ip访问

curl 10.244.5.2

可以看到访问到了

而外界是访问不到的
让外界访问则需要service
创建service

kubectl expose deployment nginx --name=nginx-svc --port=80 --type=NodePort

–name 服务名称
–port 容器内暴露的端口
type=BodePort 表示对外暴露端口,端口号随机,外部主机通过这个端口可以访问

查看

kubectl get service nginx-svc 

可以看到对外暴露的端口为32639
访问

访问到了

实验完成

到此这篇关于如何使用k8s部署nginx服务的文章就介绍到这了,更多相关k8s部署nginx服务内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/server/nginx/12115.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部