使用Nginx代理实现gRPC负载均衡

2018-11-20  本文已影响45人  平仄_pingze

官方博客指出,Nginx v1.13.10及以上支持对gRPC负载均衡。

安装

对Debian和Ubuntu系统来说,直接使用apt-get install nginx无法安装最新的nginx,需要增加源后再安装。

参照这篇文章,需要:

  1. 创建一个文件nginx_signing.key,内容为key
  2. 增加key。
sudo apt-key add nginx_signing.key
  1. /etc/apt/sources.list中增加:
deb http://nginx.org/packages/debian/ codename nginx
deb-src http://nginx.org/packages/debian/ codename nginx
  1. 更新软件库并安装nginx:
apt-get update
apt-get install nginx -y
  1. 安装后,如果报错无法启动,可以cat cat /var/log/nginx/error.log查看错误日志。通常是因为没有建立好日志文件等原因。

配置

/etc/nginx/conf.d/中增加一个.conf文件,内容类似:

upstream grpctest {
    server 127.0.0.1:50051 weight=5;
    server 127.0.0.1:50052 weight=5;
}

server {
    listen 5005 http2;

    access_log /var/webos/logs/nginx/grpctest.log main;

    location / {
        grpc_pass grpc://grpctest;
    }
}

再执行nginx -s reload更新配置。

此时,可以访问服务器的5005端口来连接50051和50052端口的gRPC服务了

上一篇 下一篇

猜你喜欢

热点阅读