APISIX网关系列之Dashboard配置路由(二)

news2025/7/24 8:02:54

APISIX网关系列之Dashboard配置路由(二)

1.概述

APISIX作为系列介绍,将它所有的功能按照职责划分输出到每篇文章中。
上篇文章作为系列的开篇文章对APISIX进行了分析和安装介绍,查看详情地址:https://blog.csdn.net/m0_38039437/article/details/129175197

这篇文章主要介绍使用APISIX提供的Dashboard配置路由、服务、上游等内容。

2.Dashboard平台介绍

2.1.Dashboard面板

APISIX服务部署完成后,就可以通过http://127.0.0.1:9000/dashboard地址访问Dashboard平台,账号和密码都是admin

在这里插入图片描述

2.2.APISIX 菜单介绍

上图是Dashboard平台的一个全景,它的功能简单紧凑,下面介绍下每个菜单的功能。

仪表板:监测网关请求数据、ETCD数据等,同时还支持自定义监控对象的数据。

路由:路由(Route)是请求的入口点,它定义了客户端请求与服务之间的匹配规则。路由可以与服务(Service)、上游(Upstream)关联,一个服务可对应一组路由,一个路由可以对应一个上游对象(一组后端服务节点),因此,每个匹配到路由的请求将被网关代理到路由绑定的上游服务中。

服务:服务由路由中公共的插件配置、上游目标信息组合而成。服务与路由、上游关联,一个服务可对应一组上游节点、可被多条路由绑定。

上游:上游列表包含了已创建的上游服务(即后端服务),可以对上游服务的多个目标节点进行负载均衡和健康检查。

插件:APISIX内置了很多个插件,在这里可以为路由配置相应的插件实现高级功能。

证书:证书被网关用于处理加密请求,它将与 SNI 关联,并与路由中主机名绑定。

3.Dashboard配置路由

3.1.配置仪表板

在这里插入图片描述
首次配置Dashboard
第一次启动Dashboard仪表板为空,需要配置Grafana地址。该地址就是启动部署Grafana的地址,它的端口是3000。
例如,我在本机通过docker部署的APISIX,那么它的地址就是:http://127.0.0.1:3000

更改Dashboard
如果Dashboard地址改变了,可以到系统设置中修改。
在这里插入图片描述
查看APISIX数据
APISIX默认配置好了APISIX健康对象,点击它可以直接查看数据。
在这里插入图片描述
在这里插入图片描述

3.2.配置网关

下面通过一个真实的项目例子介绍如何配置网关,配置网关会涉及到 路由、服务、上游 组件,他们直接的关联关系这里先做个铺垫介绍。

路由route:通过路由定义规则来匹配客户端请求,根据匹配结果加载并执行相应的插件,最后把请求转发给到指定的上游应用。

服务Service:是某类 API 的抽象(也可以理解为一组 Route 的抽象)。它通常与上游服务抽象是一一对应的,但与路由之间,通常是 1:N 即一对多的关系。
Service作为router路由和Upstream中间层,它的作用就是减少路由重复配置工作量,它是可有可无的。
这么说有些官方不好理解,下面通过一个例子了解Service。
需要service场景
假如有三个路由ABC他们都要配置限流插件,而且他们访问同一个API微服务都部署在同一个Upstream上游节点主机。
1.首先创建一个Upstream,配置后端的API微服务。
2.创建一个Service,添加并配置限流插件策略和创建好的Upstream的ID
3.ABC三个路由配置时只要指定上面的Service即可,如果没有配置Service那么每个路由直接配置Upstream就要配置三遍,同时插件也要配置三次。有了Service作为路由和Upstream中间层,路由只需要配置一次就可以了。这个就是典型的路由与Service是 N:1关系,Service与Upstream是 1:1关系。

不需要service场景
三个路由ABC访问不同的API微服务,且他们部署在不同的Upstream上,就不能使用Service,路由直接配置Upstream,路由与上游绑定映射关系实现路由访问微服务API。

上游Upstream:上游的作用是按照配置规则对服务节点进行负载均衡,他的绑定对象可以是路由或者Service。
例如将多个提供相同服务的后端docker微服务地址配置到同一个Upstream,Upstream就能根据负载均衡策略将请求转发到不同地址的服务处理。

1.配置简单网关

项目资源

前端访问地址后端服务访问地址网关访问地址
192.168.1.100192.168.1.101:5000192.168.1.102:9080

上面是我们配置网关的资源,下面就来配置下他的网关。实现前端访问后端用户模块登录系统。

【配置上游】
在Dashboard首页点击上游菜单,点击创建,打开上游配置页面。

  • 名称:通常是机房+服务器命名
  • 目标节点:用户服务服务的地址和端口号
    其他的默认即可,点击下一步提交。

在这里插入图片描述
【配置服务】
Dashboard首页点击服务菜单,点击创建,打开服务配置页面。

  • 名称:通常以后端一个微服务为单位,一个微服务对应一个服务配置。名称也建议与后端服务名称相同。
  • 上游节点:选择配置好的上游节点
    在这里插入图片描述

【配置路由】
Dashboard首页点击路由菜单,点击创建,打开路由配置页面。

  • 名称:路由名称
  • 标签:将同一个服务下的多个路由分为一组,方便管理。
  • 绑定服务:选择上面创建的用户模块服务,路由和服务是N:1关系,因此只要是用户模块下所有路由都可以选择这个服务。
  • 路径:路由转发到服务的规则

在这里插入图片描述【配置前端路由】
当前面的网关都配置好了,一定要记住修改前端代码中配置的axios请求后端地址,将它修改为请求网关地址192.168.1.102:9080

打开浏览器访问前端的项目,点击登录。此时前端将请求发送到网关192.168.1.102:9080
网关根据配置路由规则将请求转发到后端服务192.168.1.101:5000

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/368479.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【经典数据结构OJ讲解】你知道如何用两个队列实现一个栈,如何用两个栈实现一个队列吗?

目录 0.前言 1.回顾什么是队列和栈 2.如何用两个队列实现一个栈 2.1思路讲解 2.2按照思路实现仿生栈的各接口 2.2.1栈的初始化 2.2.2栈的销毁 2.2.3栈的插入 2.2.4栈的删除 2.2.5 栈的栈顶数据 2.2.6 判断当前栈是否为空 3.如何用两个栈实现一个队列 3.1 思路分析…

梯度下降优化器:SGD -> SGDM -> NAG ->AdaGrad -> AdaDelta -> Adam -> Nadam -> AdamW

目录 1 前言 2 梯度概念 3 一般梯度下降法 4 BGD 5 SGD 6 MBGD 7 Momentum 8 SGDM(SGD with momentum) 9 NAG(Nesterov Accelerated Gradient) 10 AdaGrad 11 RMSProp 12 Adadelta 13 Adam 13 Nadam 14 AdamW 15 Lion(EvoLve…

js 实现 Logo(图片)根据图片后面的图片颜色而变化成相反的颜色【解决logo固定后 会出现与不同板块的颜色相同导致于看不清logo的情况】

效果展示&#xff1a; <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <meta http-equiv"X-UA-Compatible" content"ieedge"><style type"text/css…

进程概念(二)

文章目录进程概念&#xff08;二&#xff09;1. 进程状态1.1 阻塞和挂起状态1.2 进程状态1.2.1 进程查看S状态R状态1.2.2 D状态1.2.3 T状态1.2.4 t状态1.2.5 Z状态(僵尸状态)1.3 孤儿进程2. 环境变量2.1 背景2.2 认识环境变量2.3 获取环境变量2.4 环境变量是什么2.5 认识命令行…

vue:pdf.js使用细节/隐藏按钮/设置、获取当前页码/记录阅读进度/切换语言(国际化)

需求描述 在网页中预览pdf时&#xff0c;希望实现3点需求&#xff1a;1、隐藏一些功能按钮&#xff08;比如下载&#xff09;&#xff1b;2、打开pdf时自动定位到最后浏览的页&#xff08;记录阅读进度&#xff09;&#xff1b;3、实现国际化&#xff08;在代码中更改pdf插件使…

Java面试题-Spring框架

Spring框架 1. BeanFactory和ApplicationContext有何区别 BeanFactory是Spring最底层的接口&#xff0c;是IoC的核心&#xff0c;定义IoC的基本功能。 ​ BeanFactory具有&#xff1a;延迟实例化的特性。在启动的时候&#xff0c;不会实例化Bean&#xff0c;只有有需要从容器…

ESMM的理解和高频面试问题

ESMM的理解首先&#xff0c;理解部分主要是ESMM要解决什么问题&#xff0c;以及解决方案。弱未度过原文的可以查阅原论文。论文地址&#xff1a;https://arxiv.org/pdf/1804.07931.pdf实现代码&#xff1a;https://github.com/PaddlePaddle/PaddleRec/tree/master/models/multi…

2023最新谷粒商城笔记之购物车篇(全文总共13万字,超详细)

购物车 环境搭建 创建购物车项目 第一步、创建gulimall-cart服务&#xff0c;并进行降版本处理 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.1.8.RELEASE<…

angular框架表格自定义导出,ui组件库为【devExpress by devExtreme】导出插件为exceljs、file-saver

前言 使用的ui组件库为devExtreme注意&#xff1a;如果你没有使用这个组件库&#xff0c;那后续的代码可能对你不适用&#xff01;&#xff01;&#xff01;&#xff0c;因为devExtreme和exceljs是结合着来的 其地址如下&#xff1a; devexpress https://js.devexpress.com/ …

一文速学-Pandas查询索引操作详解+实例代码展示

目录 前言 一、按列表索引查询 查询单值 1.at(单值查询-loc) 2.iat(单值查询-iloc) 3. loc(行/列名索引查询) 4. iloc(行/列索引查询) 二、按条件查询 单条件查询 多条件查询 嵌套筛选 总结 前言 关于一文速学Pandas系列已经将基础部分内容更完&#xff0c;基础部分的…

ASEMI高压MOS管ASE65R330参数,ASE65R330图片

编辑-Z ASEMI高压MOS管ASE65R330参数&#xff1a; 型号&#xff1a;ASE65R330 漏极-源极电压&#xff08;VDS&#xff09;&#xff1a;650V 栅源电压&#xff08;VGS&#xff09;&#xff1a;20V 漏极电流&#xff08;ID&#xff09;&#xff1a;12.5A 功耗&#xff08;P…

[数据结构]:03-栈(C语言实现)

目录 前言 已完成内容 单链表实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-StackCommon.cpp 04-StackFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容&#xff0c;除其中使用到C引用外&#xff0c;全为C语言代码。使用C引用主要是为了简…

跨境卖家必看的沃尔玛Walmart商家入驻教程

沃尔玛Walmart作为作为全球连锁超市的鼻祖&#xff0c;有不可比拟的知名度。当沃尔玛从线下延伸到线上后&#xff0c;就成为一个自带IP与流量的线上平台&#xff0c;在全世界都拥有数量庞大的消费者群体。所以龙哥就结合自己注册Walmart的过程给大家详细讲解一下。 Walmart卖家…

365智能云打印怎么样?365小票无线订单打印机好用吗?

365智能云打印怎么样&#xff1f;365智能云打印是有赞官方首推的订单小票打印机&#xff0c;荣获2016年有赞最佳硬件服务商。可以实现远程云打印&#xff0c;无需连接电脑&#xff0c;只需通过GPRS流量或者WIFI即可连接&#xff0c;不受地理位置和距离限制。365小票无线订单打印…

1W+企业都在用的数字化管理秘籍,快收藏!

企业数字化&#xff0c;绕不开的话题。 随着国家相继出台各种举措助力中小企业数字化转型&#xff0c;积极推动产业数字化转型&#xff0c;培育数字经济新生态&#xff0c;企业想要谋生存&#xff0c;求发展&#xff0c;必然需要做好数字化转型和管理。 本篇文章想跟大家一起…

【STM32MP157应用编程】2.GPIO输入、输出、中断

目录 GPIO文件 指令操作GPIO 程序操作GPIO 程序说明 程序代码 2_GPIO_4.c 启动交叉编译工具 编译 拷贝到开发板 测试 GPIO文件 在/sys/class/gpio目录下&#xff0c;存放了GPIO的文件。 gpiochipX&#xff1a;当前SoC所包含的GPIO控制器&#xff0c;STM32MP157一共包…

新型开源C2框架:浩劫

研究人员发现了一次针对政府实体的新攻击&#xff0c;攻击者在此期间使用了一种名为浩劫&#xff08;Havoc &#xff09;的新型 C2 框架。 尽管 C2 框架广泛可用&#xff0c;但 Havoc 作为一种先进的后开发框架脱颖而出&#xff0c;可以躲避最新版本的 Windows 11 Defender。 …

一文带你快速初步了解云计算与大数据

目录 &#x1f50d;一、云计算基础 1、云计算的概念、特点、关键技术 2、云计算的分类 3、云计算的部署模式 4、云计算的服务模式&#xff1a;IaaS、PaaS、SaaS分别是什么&#xff0c;具体含义要清楚 5、物联网的概念 6、物联网和云计算、大数据的关系 7、了解云计算的…

Python-生成元组和字典

1.生成元组元组是元素按顺序组合后的产物&#xff0c;元组对象的类型是tuple型含有两个元素的元组成为数据对元组可以包含任意数量和任意类型的元素&#xff0c;其元素总数可以为0、1、2等&#xff0c;并且元素的先后顺序是由意义的。另外&#xff0c;元组中的元素类型没有必要…

open3d最大平面检测,平面分割

1.点云读入 读入文件&#xff08;配套点云下载链接&#xff09; # 读取点云 pcd o3d.io.read_point_cloud("point_cloud_00000.ply")配套点云颜色为白色&#xff0c;open3d的点云显示默认背景为白色&#xff0c;所以将点云颜色更改为黑色 pcd.colors o3d.utilit…