前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ingress实现HTTPS访问(二)

Ingress实现HTTPS访问(二)

原创
作者头像
玖叁叁
发布2023-05-05 09:44:00
2960
发布2023-05-05 09:44:00
举报
文章被收录于专栏:玖叁叁

创建Secret资源

存储证书和密钥的Secret资源需要与Ingress资源关联。创建Secret资源的命令如下:

代码语言:javascript
复制
apiVersion: v1
kind: Secret
metadata:
  name: tls-secret
type: kubernetes.io/tls
data:
  tls.crt: BASE64_ENCODED_CERTIFICATE
  tls.key: BASE64_ENCODED_PRIVATE_KEY

在上述配置中,metadata字段下的name字段指定了Secret资源的名称,type字段指定了Secret资源的类型,即kubernetes.io/tlsdata字段包含了证书和密钥的Base64编码。

注意,在实际使用时,需要将BASE64_ENCODED_CERTIFICATE和BASE64_ENCODED_PRIVATE_KEY替换为实际的证书和密钥的Base64编码

部署服务

创建Ingress资源和Secret资源后,需要部署服务并将其暴露为ClusterIP类型的Service资源。在这里,我们将使用一个名为web的示例服务作为示例。

示例服务的部署配置如下:

代码语言:javascript
复制
apiVersion: apps/v1
kind: Deployment
metadata:
  name: web
spec:
  selector:
    matchLabels:
      app: web
  replicas: 1
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
      - name: web
        image: nginx:latest
        ports:
        - containerPort: 80

在上述配置中,metadata字段下的name字段指定了Deployment资源的名称,selector字段指定了部署的标签选择器,replicas字段指定了副本数。

template字段下的metadata字段和spec字段分别指定了Pod模板的标签和容器配置。在这里,我们使用了Nginx的镜像,并将容器暴露在80端口上。

创建完Deployment资源后,需要将其暴露为ClusterIP类型的Service资源。示例Service资源的部署配置如下:

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: web
spec:
  selector:
    app: web
  ports:
  - name: http
    port: 80
    targetPort: 80

在上述配置中,metadata字段下的name字段指定了Service资源的名称,selector字段指定了Service资源的标签选择器,ports字段指定了端口映射关系。

测试

部署完Ingress资源、服务和控制器后,可以使用curl命令测试HTTPS访问。假设域名为example.com,部署的服务名为web,测试命令如下:

代码语言:javascript
复制
$ curl -k https://example.com/web

在上述命令中,-k选项用于忽略证书验证。如果证书验证失败,将无法建立HTTPS连接。

如果一切正常,将看到服务的响应内容。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建Secret资源
  • 部署服务
  • 测试
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档