k8s配置ingress的https访问
一、部署步骤
二、安装nginx-ingress-controller
1、部署helm
[root@master ~]# wget https://get.helm.sh/helm-v3.7.2-linux-amd64.tar.gz
[root@master ~]# tar zxvf helm-v3.7.2-linux-amd64.tar.gz
[root@master ~]# cp linux-amd64/helm /usr/local/bin/
2、添加helm chat
[root@master ~]# helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
3、添加标签
[root@master ~]# kubectl label nodes nodename node=ingress
nodename修改为部署ingress-nginx-controller的节点名称
4、部署nginx-ingress-controller
helm install nginx-ingress ingress-nginx/ingress-nginx --namespace ingress-nginx --create-namespace --set controller.image.registry=willdockerhub --set controller.image.image=ingress-nginx-controller --set controller.image.tag=v1.0.0 --set controller.image.digest="" --set controller.hostNetwork=true --set controller.kind=DaemonSet --set controller.service.type=ClusterIP --set controller.hostPort.enable=true --set controller.admissionWebhooks.enabled=false --set controller.hostPort.http=80 --set controller.hostPort.https=443 --set controller.nodeSelector.node=ingress
5、查看80、443是否开放
[root@master ~]# kubectl get pod -n ingress-nginx -o wide

登录node显示的controller部署节点执行以下命令查看端口是否开放
[root@master ~]# ss -anp|grep :443

三、创建secret绑定证书
1、申请阿里云SSL证书
2、创建secret绑定证书
[root@master ~]# kubectl create secret tls ingress-secret --key=6839102_test.k8sstudy.online.key --cert=6839102_test.k8sstudy.online.pem -n kube-system
四、创建测试服务
1、准备yaml文件
[root@master ~]# cat >>hello-world.yaml<<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: helloworld-nodejs
name: helloworld-nodejs
namespace: kube-system
spec:
replicas: 1
selector:
matchLabels:
app: helloworld-nodejs
template:
metadata:
labels:
app: helloworld-nodejs
spec:
containers:
- image: docker.io/xzxiaoshan/helloworld-nodejs:latest
name: helloworld-nodejs
ports:
- containerPort: 8080
---
apiVersion: v1
kind: Service
metadata:
name: helloworld-nodejs
namespace: kube-system
spec:
selector:
app: helloworld-nodejs
ports:
- name: http
port: 80
protocol: TCP
targetPort: 8080
- name: https
port: 443
protocol: TCP
targetPort: 8080
EOF
2、创建测试服务
[root@master ~]# kubectl apply -f hello-world.yaml
五、创建ingress
1、准备yaml文件
[root@master ~]# cat >>ingress.yaml<<EOF
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: hello-world
namespace: kube-system
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
rules:
- host: test.k8sstudy.online
http:
paths:
- backend:
serviceName: helloworld-nodejs
servicePort: 80
path: /
tls:
- hosts:
- test.k8sstudy.online
secretName: hello-world-secret
EOF
2、创建ingress
[root@master ~]# kubectl apply -f ingress.yaml
六、测试https访问
1、配置hosts解析
Windows配置路径:C:\Windows\System32\drivers\etc\hosts
2、浏览器访问

k8s配置ingress的https访问的更多相关文章
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- 安装配置ingress-nginx支持https访问
说明: 1.k8s版本:v1.23: 2.内网测试环境1台master,2台node节点,使用 DaemonSet+HostNetwork+nodeSelector 方式部署 ingress- ...
- windows下配置svn的https访问
svn是一个功能强大的代码版本管理系统,可以将服务端安装在linux.unix以及windows下.svn通常采用http方式进行代码提交与下载.由于密码采用明文传输,因此存在泄密的风险.若采用htt ...
- 阿里云服务器在控制台配置网页强制https访问
最近接触到一个新的网站,网站的访问方式,是http, 因此在浏览器打开的时候老是显示不安全.因此要配置https访问. 首先,先说明服务器是在阿里云的,域名也是阿里云的. 方法一 1 首先在阿里云的c ...
- 配置apache使用https访问
准备 yum install mod_ssl openssl 生成一个自签名证书 cd /etc/pki/CA 1.生成2048位的加密私钥 openssl genrsa -out server.ke ...
- Nginx配置SSL实现HTTPS访问
nginx配置文件如下: server { listen 443 ssl; server_name www.domain.com; root /www/web; index index.html in ...
- Nginx和Tomcat配置SSL实现https访问
环境:CentOS 7 Nginx版本: nginx/1.18.0 1. 安装nginx 详细步骤可以参考如下官网:http://nginx.org/en/linux_packages.html#RH ...
- K8S配置多集群访问
中文官档: http://docs.kubernetes.org.cn/823.html 背景:我们通过会有多个k8s集群,例如集群(cn-k8s)和集群(jp-k8s),那个就需要有一台服务器可以同 ...
- Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)
准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...
- https----------如何在phpstudy环境下配置apache的https访问以及访问http自动跳转成https
1.首先在 httpd.conf里面修改几个地方 找到 #LoadModule ssl_module modules/mod_ssl.so 去掉前面的# Include conf/vhosts.con ...
随机推荐
- grep展示相邻行
grep搜索展示匹配行的上面或下面相邻的行: # grep -A 1 pattern file -A选项,是 After 的缩写,表示除了展示匹配行之外,还要展示出匹配行下面的若干行.而示例中的 -A ...
- 【笔记】Win7连接公司内网无法打开网页
win7尝试使用VPN连接公司内网发现无法打开单点登录网页 DNS解析没问题 服务器也能ping通 查了半天才发现是MTU的问题 win7的默认值1400 公司的华为设备设置的比这个值小 要根据具体的 ...
- 查找数组中某个元素出现的次数,例如数组arr=[1,2,3,4,3,4,5,3]中target=3出现的次数
1 function(arr,target) { 2 3 let num = 0 4 5 arr.forEach((item, index) => { 6 7 if (item===target ...
- js之new的原理和源码
new的原理即作用: function Student(name,age){ this.name=name; this.age=age; } var stu=new Student("小明& ...
- 【git】3.3 git分支-分支管理
资料来源 (1) https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%AE%A1%E7%90%86 ...
- vue页面点击按钮增加和删除标签
1.在data()里定义一个空数组: conditions:[], 2.给数组一个容器,并且遍历数组 <div v-for="item in conditions">& ...
- String和StringBuffer与StringBuilder的区别
1.String.StringBuffer.StringBuilder都不可以被继承,在JDK中它们都被定义为final类. 2.执行速度:StringBuilder > StringBuffe ...
- zabbix中文显示乱码解决
问题zabbix使用中文显示,"监测-->图形"查看资源使用情况时会有乱码 解决问题1.修改配置文件(文件位置:$zabbix_path/include/defines.in ...
- RPS网卡多队列
一体机上传1G文件导致服务器很卡,怀疑是网卡未开启多核多队列导致. 脚本如下 #!/bin/bash # Enable RPS (Receive Packet Steering) read -p &q ...
- 卡片式UI设计详细指南,先收好这8条!
今天为大家分享的是「卡片设计」. 卡片是产品中常见的设计组件之一.通过卡片,可以将不同的内容分层次组合在一起.卡片式设计自带简约和易用的属性,能让页面看起来更有秩序感. 卡片作为常用的UI组件,通常由 ...