ingress实现https代理访问

这篇具有很好参考价值的文章主要介绍了ingress实现https代理访问。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

证书

密钥

创建证书 钥

secrets 保存密钥信息,部署pod时把secrets挂载到pod

openssl reg -x509 -sha256 -nodes -days 365 -newkey ras:2048 -keyout tls.key -out tls.crt -subi "/CN=nginxsvc/0=nginxsvc"

req: 生成证书文件的情趣

x509: 生成x.509自签名的证书

sha256:表示使用sha-256的散列算法

-nodes:表示生成的密钥不加密

days 365: 证书有效期是365天

-newkey rsa:2048: RSA的密钥对,长度2048位

keyout tls.key -out tls.crt: 密钥文件 key 证书文件

crt-subj"/CN=nginxsvc/0=nginxsvc": 主题,CN common name o: organization 组织

nginx的登录账户认证:

nginx的重写,nginx的重定向

nginx-ingress-controller

traefik ingress controller:

traefik是一个为了让部署微服务更加快捷而诞生的一个http方向代理,负载均衡

traefik设计时就能够实时的和k8s API交互,感知后端service以及pod的变化,可以自动更新配置和重载

pod内 nginx 80 8081

traefik的部署方式:

daemonset

特点

优点: 每个节点都会部署一个traefik,节点感知,可以自动发现,更新容器的配置。不需要手动重载。

缺点: 资源占用,大型集群中,deamonset可能会运行多个traefik的实力,尤其是节点上不需要大量容器运行的情况下。没有办法扩缩容

部署对外集群:对外的业务会经常变更,deamonset可以更好的,自动的发现服务配置变更

deployment

优点:集中办公控制,可以使用少量的实例来运行处理整个集群的流量。更容易升级和维护

缺点: deployment的负载均衡不会均分到每个节点。手动更新,无法感知容器内部配置的变化

部署对内集群:对内的相对稳定,更新和变化也比较少,适合deployment

traffic-tye: internal  对内服务

traffic-type: external  对外服务

nginx-ingress:

工作原理都一样,都是7层代理,都可以动态的更新配置,都可以自动发现服务

traefik-ingress: 白动更新的重载更快,更方便

traefik的并发能力只有nginx-ingress的6成 60%

nginx-ingress-controller

traefik

wget  https://gitee.com/mirrors/traefik/raw/v1.7/examples/k8s/traefik-deployment.yaml

wget  https://gitee.com/mirrors/traefik/raw/v1.7/examples/k8s/traefik-rbac.yaml

wget  https://gitee.com/mirrors/traefik/raw/v1.7/examples/k8s/traefik-ds.yaml

wget  https://gitee.com/mirrors/traefik/raw/v1.7/examples/k8s/ui.yaml

ingress:

nginx-ingresscontroller

deployment+loadbalancer: 公有云提供负载均衡的公网地址

daemonset+hostbnetworktnodeseletor: 和节点服务共享网络,一个节点一个cntroller pod.使用宿主机的端口性能每好,适合大并发

deployment+NodePort: 最常见,最常用,最简单的方法。但是性能不太好,多了一成nat也址转发。

traefik-ingress-controller

daemonset 对外 可以自动更新容器的配置 host 节点网络

deployment 对内 无法自动自动更新配置 NodePort

https:

1.生成证书密

2.创建secret,保存证书和密钥

3.创建ingress把secret导入

加密认证:

1、htpasswd -c auth 认证文件只能是auth

2、创建ingress:

nginx.ingress .kubernetes .io/auth-type: basic

#声明认证类型

nginx,ingress .kubernetes ,io/auth-secret: basic-auth

#导入认证的密钥文件

ingress实现https代理访问,https,网络协议,http,kubernetes,容器文章来源地址https://www.toymoban.com/news/detail-806394.html

到了这里,关于ingress实现https代理访问的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s 对外服务之 ingress|ingress的对外暴露方式|ingress http,https代理|ingress nginx的认证,nginx重写

    service的作用体现在两个方面,对集群内部,它不断跟踪pod的变化,更新endpoint中对应pod的对象,提供了ip不断变化的pod的服务发现机制;对集群外部,他类似负载均衡器,可以在集群内外部对pod进行访问。 在Kubernetes中,Pod的IP地址和service的ClusterIP仅可以在集群网络内部使用,

    2024年02月10日
    浏览(50)
  • 通过nginx将https协议反向代理到http协议请求上

    目前一个系统仅支持https协议访问,因后端服务基于ssl协议,前端在请求是也需要支持ssl协议的https请求来访问。目前的代理服务器是nginx,现在想要 通过http访问系统 ,需通过nginx的 反向代理 或者 重定向方式 将https请求代理为http请求。可实现的做法有如下几种: 1、使后端

    2024年02月08日
    浏览(45)
  • nginx-反向代理是设置传输协议http/https

            X-Forwarded-Proto (XFP) 是一个事实上的标准首部,用来确定客户端与代理服务器或者负载均衡服务器之间的连接所采用的传输协议(HTTP 或 HTTPS)。在服务器的访问日志中记录的是负载均衡服务器与服务器之间的连接所使用的传输协议,而非客户端与负载均衡服务器

    2024年02月14日
    浏览(52)
  • HTTP与HTTPS协议的嵌套访问

            HTTP和HTTPS是两种不同的协议。HTTP使用80端口,而HTTPS使用443端口。HTTP是明文传输,而HTTPS为了保障数据传输的安全性,通过SSL证书实现加密传输。   问题1:HTTP和HTTPS可以互相访问吗?         可以互相访问,但存在安全问题。虽然HTTPS是一种加密协议,可以保护

    2023年04月22日
    浏览(67)
  • 网络原理 - HTTP / HTTPS(5)——https协议

    目录 一、HTTPS是什么 为什么要进行加密 二、“加密” 是什么 三、HTTPS的工作过程 (1)引入对称加密 对称密钥的特点: (2)引入非对称加密 非对称加密的特点: (3)中间人攻击 (4)引入证书 1、证书的介绍 2、证书验证过程 3、几个关键问题(黑客不能篡改证书的原因)

    2024年04月17日
    浏览(46)
  • 计算机网络 - http协议 与 https协议(2)

    本篇介绍了构造http请求的的五种方式,简单的使用postman构造http请求,进一步了解https, 学习https的加密过程,了解对称密钥与非对称密钥对于加密是如何进行的,如有错误,请在评论区指正,让我们一起交流,共同进步! 本文开始 1) 直接在浏览器中的地址栏中输入一个 u

    2024年02月13日
    浏览(64)
  • HTTP 和 HTTPS 协议原理【网络基础】

    友情链接: HTTP协议【网络基础/应用层】 简单:HTTP 是一种文本协议,易于理解和实现。HTTP 的请求和响应都由起始行、首部字段和可选的消息主体组成,每个部分都有明确的语法规则。HTTP 的方法、状态码和首部字段都有标准化的定义,方便开发者遵循。 灵活:HTTP 是一种无

    2024年02月09日
    浏览(59)
  • 网络协议分析-http/https/tcp/udp

    “三次握手”的目的是“为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生 错误”。主要目的防止 server 端一直等待,浪费资源。换句话说,即是为了保证服务端能收 接受到客户端的信息并能做出正确的应答而进行前两次(第一次和第二次)握手,为了保证客

    2024年02月11日
    浏览(50)
  • 【Linux网络】网络应用层的 http 和 https协议

    在之前学习序列化和反序列化的时候,认识到主机之间传输结构数据的时候,最好是通过某种约定将结构数据序列化成一串字符串,接收方再通过反序列化将字符串转换成结构数据。以上说的这种约定,其实可以看成是用户层通信的一种协议,是由程序猿自己定的。   实际

    2024年02月02日
    浏览(64)
  • 用Kubernetes(k8s)的ingress部署https应用

    我之前有一片文章写的是用ingress暴露应用,这篇文章接着上一片文章继续讲使用ingress暴露https的应用。请先参考上一片文章将ingress先在Kubernetes集群当中安装上: ingress暴露应用文章地址:https://blog.csdn.net/m0_51510236/article/details/132536519 因为是暴露https,所以需要域名证书。分以

    2024年02月10日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包