Skip to content

Releases: hellodudu/Ultimate

version v2.0.5

09 Nov 08:58
Compare
Choose a tag to compare

更新内容

  • 修复一个rpc调用引起fatal的bug

version v2.0.4

05 Nov 10:20
Compare
Choose a tag to compare

更新内容

  1. 增加log文件日志轮换功能,同时输出到文件和stdout
  2. 开goroutinue时捕获异常

配置文件修改

version v2.0.3

03 Aug 10:19
Compare
Choose a tag to compare

Ultimate Server v2.0.3

更新内容

  • 修复bug:

    center开启后没有同步鸿蒙霸主信息

  • 更新docker-compose配置:

    loki-url中配置的外网ip改为内网ip,这样线上服无需开启对外3100端口也能采集容器log

version v2.0.2

30 Jul 08:57
Compare
Choose a tag to compare

Ultimate Server v2.0.2

更新内容

  • 更新容器配置文件

更新步骤

  1. 拷贝docker-compose.yml文件到center主机app所在路径(即原Makefile所在目录).
  2. 拷贝grafana.ini文件到center主机app/config/grafana/路径下.
  3. 拷贝loki-local-config.yaml文件到center主机app/config/loki/路径下.
  4. 拷贝prometheus.yml文件到center主机app/config/prometheus/路径下.
  5. 拷贝Makefile文件到center主机app/路径下.
  6. 替换docker-compose.yml文件中的host.docker.internal为本机外网ip
  7. 修改data/consul目录权限,输入命令sudo chmod 777 data/consul,否则开启consul时会出现报错Failed to setup node ID: open /consul_data/node-id: permission denied
  8. 为防止维护时间过长,可以在关闭center前先下载好所需的镜像,依次运行命令
docker pull hellodudu86/ultimate-service-arena:v2.0.2
docker pull hellodudu86/ultimate-service-game:v2.0.2
docker pull consul
docker pull nsqio/nsq
docker pull grafana/loki:v1.3.0
docker pull grafana/promtail
docker pull grafana/grafana
docker pull prom/prometheus
docker pull quay.io/prometheus/node-exporter
  1. 关闭center后可以运行make docker_run v=2.0.2来运行新版本center,如果提示找不到loki plugin,则需要安装docker 插件,输入命令
docker plugin install  grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
  1. 如果出现报错failed to setup ip tables,则需要重启一下docker服务
service docker restart

version 2.0.1

09 May 03:17
Compare
Choose a tag to compare

Ultimate Server v2.0.1

更新内容

  • 升级loki/grafana镜像版本
  • 更新loki配置文件
  • center同步消息给world时使用单独goroutine

更新步骤

  1. 拷贝docker-compose.yml文件到center主机app所在路径(即原Makefile所在目录).
  2. 拷贝loki-local-config.yaml文件到center主机app/config/loki/路径下.

version 2.0.0

13 Nov 08:23
Compare
Choose a tag to compare

Ultimate Server v2.0.0

更新内容

  • 增加rpc接口
  • 使用nsq作为message queue
  • 使用consul作为service discovery

更新步骤

  1. 拷贝Makefiledocker-compose.yml文件到center主机app所在路径(即原Makefile所在目录).
  2. 在center主机中创建consul persist路径:app/data/consul/,没有consul目录则mkdir一个.
  3. 在center主机中创建nsq persist路径:app/data/nsq/,没有nsq目录则mkdir一个.
  4. 执行命令make docker_run v=2.0.0来启动center服务,鉴于之前出现过启动服务时版本号输错的问题,2.0之后的center用三位版本号来标识.
  5. 关闭center服务时执行命令make stop

在consul中查看发现的服务

consul使用了8500端口映射,需在云服中开启8500端口的入口权限,之后访问http://localhost:8500 即可查看所有连接到consul的服务

在nsq中查看生产和消费的消息

nsq使用4171端口映射,需在云服中开启4171端口的入口权限,之后访问http://localhost:4171 即可查看所有通过nsq转发的消息

version 1.22

08 Nov 07:31
Compare
Choose a tag to compare

Ultimate Server v1.22

更新内容

  • 修复赛季结束后鸿蒙挑战次数没有清空的bug,修复请求排名时可能出现的多线程bug

version 1.21

30 Oct 08:19
Compare
Choose a tag to compare

Ultimate Server v1.21

更新内容

  • 修复赛季结束后鸿蒙挑战次数没有清空的bug

version 1.20

23 Oct 11:12
Compare
Choose a tag to compare

Ultimate Server v1.20

更新内容

  • docker-compose增加loki_conn服务,以维持grafana中loki连接。
  • 增加http api接口

更新步骤

  1. 拷贝grafana.iniapp/config
  2. 拷贝promtail-docker-config.yaml文件到app/config/promtail/
  3. docker-compose.yml增加grafana配置
volumes:
        - ./config/grafana.ini:/etc/grafana/grafana.ini
  1. docker-compose.yml增加promtail配置
promtail:
    image: grafana/promtail
    container_name: promtail
    volumes:
        - ./config/promtail/:/etc/promtail
        - ./var/log:/var/log
    command:
        -config.file=/etc/promtail/promtail-docker-config.yaml
    ports:
        - "9080:9080"

  1. docker-compose.yml增加loki_conn配置
loki_conn:
    image: hellodudu86/loki_conn
    container_name: loki_conn
    command:
        -url="http://loki:3100/api/prom/push"
    depends_on:
        - loki

新增http api

测试广播新赛季消息

Reuqest

  • Method: POST
  • URL: /arena_test_sync_season
  • Headers: Content-Type:application/json
  • Body:
{
}

Response

  • Body
success

version 1.19

24 Sep 13:43
Compare
Choose a tag to compare

Ultimate Server v1.19

更新内容

  • 增加容器日志集中化方案,用grafana/loki统一收集容器日志,添加容器日志标签以及查询日志
  • 增加鸿蒙的赛季trace代码

更新步骤

  1. 拷贝docker-compose.yml文件到center主机app所在路径(即Makefile所在目录)
  2. 拷贝新的Makefile文件到center主机app所在路径(即Makefile所在目录)
  3. 拷贝local-config.yaml文件到center主机app/config/loki/所在路径,如果没有loki文件夹需要先mkdir一个
  4. 在center主机中创建grafana persist路径,app/data/grafana,如果没有grafana目录则mkdir一个,之后需要修改app/data/grafana目录的所有者,执行以下命令:
chown -R 472:472 data/grafana/
  1. 安装docker plugin,在center主机中执行以下命令安装:
docker plugin install  grafana/loki-docker-driver:latest --alias loki --grant-all-permissions

安装成功后可以使用命令docker plugin ls来查看,如果出现以下输出则安装成功:

ID NAME DESCRIPTION ENABLED
23ceaba2d1a1 loki:latest Loki Logging Driver true
  1. 安装docker-compose,输入以下命令安装:

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

安装完成后可以输入docker-compose version来检验是否安装成功

  1. 执行命令make run v=1.19来启动center服务,此后再有新版本可以修改命令v的值为新的版本号
  2. 关闭center服务时执行命令make stop

如何在grafana/loki中查看容器日志

  1. 由于grafana的日志集中化查询需要用到3000端口,所以center主机必须开启3000端口供外部访问,为安全性考虑可以将3000端口只开放给vpn,通过vpn才能访问center日志
  2. 在浏览器中访问http://{center_ip}:3000来访问grafana,center_ip替换为center主机对外ip。默认用户名和密码都是admin,第一次登陆是会要求修改密码。
  3. 第一次登陆后需要添加DataSource,点击add data source,然后选择Loki源,在url中输入center主机ip加3100端口http://{center_id}:3100,最后点击save and test。
  4. 添加完数据源后即可通过左侧explore选项来查看所有容器日志,在log label中选择container_name->ultimate

注,以上操作只需要进行一次