krakend 部署最佳实践
内容来自官方文档,就是一个简单的整理:
- 使用蓝绿,或者类似的部署策略
- 使用容器基于不可变容器模式
FROM devopsfaith/krakend
COPY krakend.json /etc/krakend/krakend.json
- 在krakend服务之前使用一个负载均衡器(无状态)
- 使用http2 (性能)
- ssl 证书配置(安全)
- 开启metrics 以及日志(至少WARING 级别)
- 重定向输出到/dev/null
krakend run -c krakend.json >/dev/null 2>&1
- 命名配置(配置添加一个名字)
{
"version": 2,
"name": "Production Cluster rev-db6a182"
}
- 添加部署的元数据信息(比如公司信息)
krakend 忽略不支持的配置
{
"endpoint": "/cookies",
"headers_to_pass": ["Cookie" ],
"@comment": "At this early stage of the implementation, we still need to send cookies to the backend.",
"backend": [{
"url_pattern": "/srv/legacy"
}]
}