APISIX的安装与测试(springboot服务测试)

安装:

1.1安装依赖:

curl https://raw.githubusercontent.com/apache/apisix/master/utils/install-dependencies.sh -sL | bash -

1.2 安装 OpenResty

yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo

sudo yum install  openresty 

验证安装

/usr/local/openresty/nginx/sbin/nginx -v

在这里插入图片描述

安装必须的库

yum install git gcc luarocks lua-devel

1.3 安装docker和docker compose

vi install_docker.sh

粘贴以下内容

#!/usr/bin/env bash

set -ex

# 移除旧版本的 Docker
sudo yum remove -y docker \
                 docker-client \
                 docker-client-latest \
                 docker-common \
                 docker-latest \
                 docker-latest-logrotate \
                 docker-logrotate \
                 docker-engine

# 安装依赖包
sudo yum install -y yum-utils

# 设置 Docker 的稳定仓库
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

# 安装 Docker Engine
sudo yum install -y docker-ce docker-ce-cli containerd.io

# 启动 Docker
sudo systemctl start docker
sudo systemctl enable docker


# 安装 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 为 Docker Compose 二进制文件添加执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 创建符号链接到 /usr/bin 目录(可选)
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose || true

# 验证 Docker Compose 是否安装成功
docker-compose --version
chmod +x install_docker.sh
sudo ./install_docker.sh

如果docker-compose拉取失败,再次执行以下命令获取

sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

1.4 安装etcd 和 APISIX

如果你在安装 APISIX 时选择了 Docker 或 Helm 安装,那么 etcd 将会自动安装;

git clone https://github.com/apache/apisix-docker.git
cd apisix-docker/example

修改配置文件:apisix-docker/example/apisix_conf/config.yaml

在这里插入图片描述

拉取并启动容器

cd apisix-docker/example
docker-compose -p docker-apisix up -d

在这里插入图片描述

安装完成并启动

在这里插入图片描述

查看是否全部启动:

在这里插入图片描述

1.5 测试

1.5.1搭建一个java服务

在这里插入图片描述

服务启动访问http://127.0.0.1:8883返回字符串:

Hello 我是apisix222

1.5.2将服务放到服务器上运行。

1.5.2.1打包java服务

在这里插入图片描述

1.5.2.2在服务器上安装jdk
cd /usr/local
mkdir java

tar -zvxf "jdk-8u411-linux-x64 (1).tar.gz" -C /usr/local/java/

vi /etc/profile

# 放入以下命令
export JAVA_HOME=/usr/local/java/jdk1.8.0_411
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

#退出文件并执行
source /etc/profile
java -version
1.5.2.2运行

将打包好的jar包上传到服务器上并执行

java -jar <java服务jar包>

1.5.3 测试网关转发

1.5.3.1 发布API

注意点:1.92.107.128 这个IP地址是你的服务器地址, 如果 APISIX 运行在 Docker 容器中,而你的服务直接运行在主机上,可能存在网络隔离问题。方法一,将你的服务放在同一个docker网络中(舍弃)。方法二直接使用服务器地址。

curl -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1"  -i "http://127.0.0.1:9180/apisix/admin/routes" -X PUT -d '
{
  "id": "getting-started-hello",
  "uri": "/hello",
  "upstream": {
    "type": "roundrobin",
    "nodes": {
      "1.92.107.128:8883": 1
    }
  }
}'
1.5.3.2 访问
http://1.92.107.128:9080/hello

则网关会将请求转发到 http://1.92.107.128:8883/hello 去。就会接收到内容 “Hello 我是apisix222”

1.6 其他

#查询发布的所有API
curl -i -X GET "http://127.0.0.1:9180/apisix/admin/routes" -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1"

# 删除发布的APi 根据ID
curl -i -X DELETE "http://127.0.0.1:9180//apisix/admin/routes/3" -H "X-API-KEY: edd1c9f034335f136f87ad84b625c8f1"
上一篇:【ArcGIS For JS】前端geojson渲染行政区划图层并加标签


下一篇:职场思考-在行业坚守中实现个人增值(13)