当前位置: 首页 > wzjs >正文

mc建筑网站小程序制作

mc建筑网站,小程序制作,音乐 版权 做视频网站,加强文明网站建设引言:从“内部通讯”到“对外开放” 想象Kubernetes集群是一座繁忙的办公楼,每个Pod(容器)是楼内的员工。 Service 就像前台的接待员,负责将外部电话(请求)转接到正确的员工(Pod&am…

引言:从“内部通讯”到“对外开放”

想象Kubernetes集群是一座繁忙的办公楼,每个Pod(容器)是楼内的员工。

  • Service 就像前台的接待员,负责将外部电话(请求)转接到正确的员工(Pod)。

  • Ingress 则是整栋楼的门卫,管理所有入口通道,支持复杂的访客规则(如VIP通道、安全检查)。

本文将教你如何通过 ServiceIngress 让外部用户安全访问你的应用!


一、Service:内部服务的交通枢纽

1.1 为什么需要Service?

  • Pod是动态的:Pod可能随时被销毁或重建,IP地址不固定。

  • 负载均衡需求:多个Pod副本需要共享流量。

Service的作用:为Pod提供稳定的虚拟IP(VIP)和DNS名称,实现服务发现与负载均衡。


1.2 Service的三种类型

1. ClusterIP(默认)
  • 用途:仅供集群内部访问(如微服务间通信)。

  • 示例配置

    
    apiVersion: v1kind: Servicemetadata:name: internal-servicespec:selector:app: my-appports:- protocol: TCPport: 80 # Service端口targetPort: 8080 # Pod端口type: ClusterIP
2. NodePort
  • 用途:通过节点IP(master节点的对外ip)+固定端口暴露服务,适合开发测试。

  • 端口范围:30000-32767。

  • 示例访问http://<节点IP>:30080

    
    spec:type: NodePortports:- port: 80targetPort: 8080nodePort: 30080 # 手动指定端口(可选)
3. LoadBalancer
  • 用途:在云平台上自动创建外部负载均衡器(如AWS ELB)。

  • 示例

    
    spec:type: LoadBalancer

1.3 动手实验:暴露一个NodePort服务

步骤1:创建Deployment(若尚未存在)

kubectl create deployment web-app --image=nginx:1.25 --replicas=3
步骤2:创建NodePort Service

# web-service.yamlapiVersion: v1kind: Servicemetadata:name: web-servicespec:selector:app: web-appports:- protocol: TCPport: 80targetPort: 80type: NodePort

kubectl apply -f web-service.yaml
步骤3:访问服务

kubectl get svc web-service

输出示例:

NAME          TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
web-service   NodePort   10.99.62.165   <none>        80:31362/TCP   55s

通过浏览器访问:http://<你的节点IP>:31555(如 http://localhost:31555)。

在这里插入图片描述


二、Ingress:高级流量路由管家

2.1 为什么需要Ingress?

  • Service的限制

    • 每个Service需独立端口,难以管理。

    • 不支持基于域名或路径的路由。

  • Ingress的功能

    • 通过域名和路径将流量分发到不同Service。

    • 支持HTTPS、SSL终止、身份验证等。


2.2 安装Ingress控制器

Ingress需要配合控制器(如Nginx、Traefik)使用,以Nginx为例:


# 使用Helm安装(需提前安装Helm)helm upgrade --install ingress-nginx ingress-nginx \--repo https://kubernetes.github.io/ingress-nginx \--namespace ingress-nginx --create-namespace# 验证安装kubectl get pods -n ingress-nginx

2.3 配置Ingress规则

场景:通过不同域名访问两个应用
  • blog.example.com → 博客服务(Service: blog-service)

  • shop.example.com → 商城服务(Service: shop-service)


# example-ingress.yamlapiVersion: networking.k8s.io/v1kind: Ingressmetadata:name: example-ingressspec:rules:- host: blog.example.com # 域名1http:paths:- path: /pathType: Prefixbackend:service:name: blog-serviceport:number: 80- host: shop.example.com # 域名2http:paths:- path: /pathType: Prefixbackend:service:name: shop-serviceport:number: 80
应用配置

kubectl apply -f example-ingress.yaml

2.4 配置HTTPS(可选)

步骤1:准备证书(以自签名证书为例)

openssl req -x509 -nodes -days 365 -newkey rsa:2048 \-keyout tls.key -out tls.crt -subj "/CN=example.com"
步骤2:创建Secret

kubectl create secret tls example-tls --cert=tls.crt --key=tls.key
步骤3:更新Ingress配置

spec:tls:- hosts:- blog.example.com- shop.example.comsecretName: example-tls

三、常见问题与解决

  1. Service无法访问

    • 检查Service的selector是否与Pod标签匹配。

    • 确认防火墙开放了NodePort或LoadBalancer端口。

  2. Ingress返回404错误

    • 检查Ingress控制器的Pod是否正常运行。

    • 查看Ingress日志:

      
      kubectl logs -n ingress-nginx <ingress-controller-pod>
  3. HTTPS证书不生效

    • 确认Secret的名称与Ingress中secretName一致。

    • 检查证书域名是否与Ingress规则中的host匹配。


四、总结与下一步

通过本文,你学会了:

  • Service:为Pod提供稳定的内部/外部访问入口。

  • Ingress:通过域名和路径实现高级路由与HTTPS支持。



资源推荐

  • Ingress-Nginx官方文档

  • Kubernetes Service类型详解


现在,你的应用已经可以向全世界say hello了!🎉 无论是内部微服务还是面向用户的Web应用,Service和Ingress都是不可或缺的桥梁。

http://www.dtcms.com/wzjs/467579.html

相关文章:

  • 养殖业网站模板品牌营销理论
  • 牡丹江地区做网站的公司市场推广方案怎么写
  • 公司网站要多大空间惠州seo计费管理
  • 山东川畅信息技术有限公司网站建设企业如何做网络推广
  • 源码制作网站站长之家爱站网
  • 网站开发电脑配置要求一件代发48个货源网站
  • 安阳市网站建设的公司公司网站免费建站
  • php wordpress 开源班级优化大师使用心得
  • 网站建设新手教程视频seo权重优化软件
  • 石嘴山网站seo十大经典广告营销案例
  • dede手机wap网站模板百度查重工具
  • 做企业云网站的企业江门网站开发多少钱
  • 网站后台找不到了怎么办推广seo是什么意思
  • 阿里巴巴国际站网站建设打开2345网址大全
  • 长治哪家公司做网站好自己做网站设计制作
  • 手机公司网站建设比较好的产品推广文案100字
  • 网站开发公对公转账合同模板火爆产品的推广文案
  • 陕西天和建设有限公司网站站长工具综合查询官网
  • 国外做二手服装网站宁波正规站内优化seo
  • 天津网站建设外包国外b站视频推广网站
  • 企业信息公示系统全国官网洛阳搜索引擎优化
  • 东莞专业网站推广方式搜索引擎推广培训
  • 家具网站建设规划房地产网站建设
  • 樟木头镇做网站舆情网站
  • 沧州网站优化公司软文广告代理平台
  • 怎样做网站搜索推广电话成都重庆关键词优化平台
  • 企业网站版面设计技巧什么建站程序最利于seo
  • 门户网站和微网站的区别网络营销的手段有哪些
  • 交互设计网站案例品牌关键词优化哪家便宜
  • 网站后续建设可以免费打广告的网站