envoy网络部署笔记
16lz
2021-04-11
架构示意图
envoy
需要使用到CONTOUR
,所以我们先部署CONTOUR,官网
1)使用快速部署
kubectl apply -f https://projectcontour.io/quickstart/contour.yaml
2)创建一个简单的demo范例
我这里使用的httpproxy高级路由管理,比较强大,可以自定义很多的规则。
apiVersion: projectcontour.io/v1kind: HTTPProxymetadata: name: httpproxy-demo namespace: defaultspec: virtualhost: fqdn: www.ik8s.io #定义虚拟主机名,一般设置你的域名 tls: #设置https访问协议 secretName: ik8s-tls #这个secret需要你提前创建好的,tls这一块如果不需要可以注释掉。 minimumProtocolVersion: "tlsv1.1" #这是兼容的tls最低版本 routes: - conditions: - prefix: / services: - name: demoapp-deploy port: 80 permitInsecure: true #是否重定向到https协议,你也可以理解为是否强制https,true是不强制https,就是你访问http也可以https也可以,如果是false到话你访问http到话会强制跳转到https#注意如果直接采用访问IP地址的话可能会访问不同,建议通过域名访问。
3)测试
#部署kubectl apply -f httpproxy-demo.yaml#查看envoy映射的端口,下面会用到kubectl get svc -n projectcontourNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEcontour ClusterIP 10.107.197.123 <none> 8001/TCP 103menvoy LoadBalancer 10.102.101.40 <pending> 80:30651/TCP,443:32481/TCP 103m#访问[root@master1 chapter13]# curl http://www.ik8s.io:30651iKubernetes demoapp v1.0 !! ClientIP: 10.244.135.57, ServerName: deployment-demo-fb544c5d8-s8wh8, ServerIP: 10.244.135.53![root@master1 chapter13]# curl -k https://www.ik8s.io:32481iKubernetes demoapp v1.0 !! ClientIP: 10.244.104.15, ServerName: deployment-demo-fb544c5d8-2242p, ServerIP: 10.244.166.184!
注意⚠️:以上所使用的demo采用的是马哥的教学demo,如有需要我已经放在我的公众号上了。可前往公众号「自在拉基」回复envoy获取demo pod。
4)问题
上面所使用的域名需要你们自行配置dns或者修改测试机上的host文件,如果通过ip访问的话会有可能访问不了,域名是没问题的。
©著作权归作者所有:来自51CTO博客作者自在拉基的原创作品,如需转载,请注明出处,否则将追究法律责任更多相关文章
- js2 解构,访问器属性
- JS中的值传递,模板字面量,数组、对象、传参解构,访问器属性
- centos 配置DNS
- 优盘提示位置不可用无法访问,磁盘结构损坏且无法读取咋办???
- Nginx反向代理Tomcat访问时浏览器加载失败,出现 ERR_CONTENT_LENG
- 【DB宝36】使用Docker分分钟搭建漂亮的prometheus+grafana监控
- 数组,对象,传参解构; 访问器属性的get,set操作
- 宝塔面板非https站点使用https访问跳转其他网站内容的处理办法
- 闪存出现“位置不可用无法访问函数不正确”的解决方法