首页 > 其他分享 >test

test

时间:2023-04-21 21:15:41浏览次数:22  
标签:网关 created bookinfo v1 master test root

基础准备
已基于软件包chinaskills_cloud_paas_v2.0.iso部署完Kubernetes集群,并将提供的软件包ServiceMesh.tar.gz上传至master节点/root目录下。

案例实施

  1. 基础环境准备
    (1)导入软件包
    下载并解压软件包:
[root@master ~]# tar -xf ServiceMesh.tar.gz

导入所有镜像:

[root@master ~]# docker load -i ServiceMesh/images/image.tar

(2)启动Kubernetes集群
初始化Kubernetes集群:

[root@master ~]# init-cluster

查看集群状态:

[root@master ~]# kubectl cluster-info
Kubernetes control plane is running at https://apiserver.cluster.local:6443
CoreDNS is running at https://apiserver.cluster.local:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
  1. 部署Bookinfo应用
    (1)部署应用程序
    部署Bookinfo应用到Kubernetes集群:
root@master ~]# cd ServiceMesh/
[root@master ServiceMesh]# kubectl apply -f bookinfo/bookinfo.yaml
service/details created
serviceaccount/bookinfo-details created
deployment.apps/details-v1 created
service/ratings created
serviceaccount/bookinfo-ratings created
deployment.apps/ratings-v1 created
service/reviews created
serviceaccount/bookinfo-reviews created
deployment.apps/reviews-v1 created
service/productpage created
serviceaccount/bookinfo-productpage created
deployment.apps/productpage-v1 created

查看Pod状态:

[root@master ServiceMesh]# kubectl get pods
NAME                             READY  STATUS  RESTARTS  AGE
details-v1-79f774bdb9-m98sl      1/1    Running   0      46s
productpage-v1-6b746f74dc-snpf9  1/1    Running   0      46s
ratings-v1-b6994bb9-nmws8        1/1    Running   0      46s
reviews-v1-545db77b95-4rtn4      1/1    Running   0      46s

(2)启用对应用程序的外部访问
现在Bookinfo应用程序已成功运行,需要使应用程序可以从外部访问,可以用Istio Gateway来实现这个目标。

使用网关为网格来管理入站和出站流量,可以指定要进入或流出网格的流量。网关配置被用于运行在网格边界的独立Envoy代理,而不是服务工作负载的sidecar代理。

与Kubernetes Ingress API这种控制进入系统流量的其他机制不同,Istio网关充分利用了流量路由的强大能力和灵活性。Istio的网关资源可以配置4-6层的负载均衡属性,如对外暴露的端口、TLS设置等。作为替代应用层流量路由(L7)到相同的API资源,绑定一个常规的Istio虚拟服务到网关,这样就可以像管理网格中其他数据平面的流量一样去管理网关流量。

网关主要用于管理进入的流量,也可以配置出口网关。出口网关为流出网格的流量配置一个专用的出口节点,这可以限制哪些服务可以或应该访问外部网络,或者启用出口流量安全控制为网格添加安全性。

Gateway配置文件如下:

[root@master ServiceMesh]# cat bookinfo-gateway.yaml
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: bookinfo-gateway
spec:
  selector:
    istio: ingressgateway # use istio default controller
  servers:
  - port:
      number: 80
      name: http
      protocol: HTTP
    hosts:
    - "*"
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: bookinfo
spec:
  hosts:
  - "*"
  gateways:
  - bookinfo-gateway
  http:
  - match:
    - uri:
        exact: /productpage
    - uri:
        prefix: /static
    - uri:
        exact: /login
    - uri:
        exact: /logout
    - uri:
        prefix: /api/v1/products
    route:
    - destination:
        host: productpage
        port:
          number: 9080

这个网关指定所有HTTP流量通过80端口流入网格,然后把网关绑定到虚拟服务上。

为应用程序定义Ingress网关:

[root@master ServiceMesh]# kubectl apply -f bookinfo-gateway.yaml
gateway.networking.istio.io/bookinfo-gateway created
virtualservice.networking.istio.io/bookinfo created

确认网关创建完成:

[root@master ServiceMesh]# kubectl get gateway
NAME               AGE
bookinfo-gateway       32s

查看Ingress Gateway:

[root@master ServiceMesh]# kubectl get svc -n istio-system
NAME                   TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)         AGE
istio-egressgateway    ClusterIP      10.101.130.107   <none>        80/TCP,443/TCP  30m
istio-ingressgateway   LoadBalancer   10.102.250.102   <pending>     15021:32634/TCP,80:22092/TCP,443:30119/TCP,31400:30282/TCP,15443:32486/TCP           30m

标签:网关,created,bookinfo,v1,master,test,root
From: https://www.cnblogs.com/hoyeong/p/17341795.html

相关文章

  • zk-test
    curl-H"Authorization:BearereyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsaWNlbnNlIjoibWFkZSBieSBwaWciLCJ1c2VyX25hbWUiOiJhZG1pbiIsInNjb3BlIjpbInNlcnZlciJdLCJleHAiOjE1NDU0ODE5OTAsInVzZXJJZCI6MSwiYXV0aG9yaXRpZXMiOlsiUk9MRV9BRE1JTiIsIlJPTEVfVVNFUiJdLCJqdGk......
  • 【THM】Python for Pentesters(使用Python辅助渗透测试)-学习
    本文相关的TryHackMe实验房间链接:https://tryhackme.com/room/pythonforcybersecurity本文相关内容:Python可能是网络安全领域使用最广泛、最方便的脚本语言,本文涵盖了一些Python脚本示例,包括哈希破解、键盘记录、枚举和扫描等。简介Python可以成为你的武器库中的强大工具,因为......
  • 火山引擎 DataTester 3 大功能升级:聚焦敏捷、智能与易用,帮助企业降本增效
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群近日,火山引擎数智平台(VeDI)全面升级旗下A/B测试产品DataTester,发布全新功能“MAB智能调优实验”、升级“智能发布平台FeatureFlag”,同时还推出“可视化数据集成”及“集成工作台”方案。D......
  • 火山引擎 DataTester 3 大功能升级:聚焦敏捷、智能与易用,帮助企业降本增效
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群近日,火山引擎数智平台(VeDI)全面升级旗下A/B测试产品DataTester,发布全新功能“MAB智能调优实验”、升级“智能发布平台FeatureFlag”,同时还推出“可视化数据集成”及“集成工作台”方案。......
  • GE RTT Desktop Test Set
    通用电气RTT桌面测试集是一个工具,帮助测试继电器,仪表和PLC的能力,提供单相电压和电流,驱动数字输入,并控制RTD。  海拔最大2000米控制权标称6va;最大14伏安规模长7.5英寸×宽5.75英寸×深3.25英寸干式数字输入接触电阻<10mΩ脉冲磁场抗扰度标准上午1000点......
  • 模拟赛 & VP & Contest 记录
    CatOJC140(初中)\(100+93+100+10=303\),Rank1。是个dp场,A题期望dp,B题神奇猜结论,C题换根dp,D题树上博弈dp。A题设\(f_u\)为填满子树\(u\)的期望次数,\(s_u\)为\(u\)子树大小,容易得到\(f_u=f_v+\frac{1}{s_u}\)。B题若\(n\)是偶数,考虑数列里随便取一个数将其......
  • 02-pytest运行报错
    #运行时提示:pytest-Windowsfatalexception:code0x8001010d#解决方法:pytest.ini中加上no:faulthandleraddopts=-vs-pno:faulthandler--html../report/re.html#运行时警告:     DeprecationWarning:invalidescapesequence\d#解决方......
  • Atcoder Beginner Contest 298---E
    题目:E-UnfairSugoroku(atcoder.jp)分析:这题状态转移方程挺好推的,但是用dp解是我没想到的dp[i][j][0]表示T在i点,A在j点且轮到T走时赢的概率dp[i][j][1]表示T在i点,A在j点且轮到A走时赢的概率代码:#include<bits/stdc++.h>usingnamespacestd;#definelllonglong#def......
  • AtCoder Regular Contest 109 F 1D Kingdom Builder
    洛谷传送门AtCoder传送门考虑判断一个终止态是否可达。如果只有一个棋子连续段那一定可达;否则就存在\(\ge2\)个连续段。此时把放棋子看成删除,那么限制就是如果删除一个孤立的棋子(两边没有棋子)且还有别的格子有棋子,这个棋子的颜色异于其他连续段的两边棋子的颜色。设第一......
  • python+playwright 学习-49 pytest-xdist 多进程执行用例
    前言在实际工作中项目下的web自动化用例非常多,单进程执行会消耗很长的运行时间,可能运行一次用例得几个小时。为了加快用例的运行速度,可以使用pytest-xdist多进程执行用例。但并不是说你写的用例,直接安装插件就能使用,实际使用的过程中还会遇到很多的问题。pytest-xdist多进程执行......