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 ...
随机推荐
- 内存参数kernel.shmmax和kernel.shmall的含义
安装oracle数据库的时候,都要设置这个内核参数 vi /etc/sysctl.conf kernel.panic_on_oops = 1 1:程序出错,不继续运行 0:程序出错,继续运行 kern ...
- Android拍照程序适配
public void takePic(){ String forderPath = getExternalFilesDir("") + "/pic"; Fil ...
- ES相关问题
取消写入保护 参考:https://blog.csdn.net/xudailong_blog/article/details/80850159
- awk引用外部变量
test]# cat tmp.tmp120.4987 12.717858119.801948 13.38588119.424529 14.024871119.337438 15.070484119.2 ...
- 【stm32】的PWM外设|学习笔记
PWM简单理解就是生成PWM方波,主要可控的参数有周期,占空比,极性. stm32内置PWM生成器,我想应该是用TIM加比较器来实现的吧,那么如何实现stm32输出PWM波呢? 一.得知道那些IO可以 ...
- windows下rabbitmq启动报错--distribution port 25672 in use by another node: rabbit@DESKTOP-LLPGVVE
最近公司有需求需要用到rabbitmq,因为之前习惯用的都是activemq,所以要临时学习一下,捣鼓这个rabbitmq.想着先在本地捣鼓测试一下,然后按照这个博主分享的安装方式进行安装. http ...
- uniapp 图片文件流
uni.request({ url: '*****', //仅为示例,并非真实接口地址. method: 'GET', responseType: 'arraybuffer', data: {}, h ...
- C# snaps
C# 启用 禁用 本地连接 1 static void Enable(string interfaceName) 2 { 3 System.Diagnostics.ProcessStartInfo p ...
- postgresql 之修改psql log信息级别
1.修改当前使用的postgresql.conf文件vim /var/lib/pgsql/10/data/postgresql.conf 2.vim 下使用\notice 找到待修改项 client_ ...
- 访问不了github解决方案
1.首先通过网址https://github.com.ipaddress.com/www.github.com查看当前github.com对应的IP地址,查到的信息如下图所示 修改hosts文件,wi ...