序言
现有的微服务模式需要再业务代码中集成大量基础设施模块,比如注册中心,服务发现,服务调用链路追踪,请求熔断,重试限流等等,使得系统过于臃肿重量级。
Dapr作为新一代微服务模式,使用sidecar模式,简化了现有微服务系统代码,将基础设施层以sidecar模式分离,使得开发人员更集中于业务逻辑编写。
本文以net6和dapr1.5为基础,搭建一个dapr的简单使用示例。
1、安装Docker
Dapr的运行依赖于Docker环境。
作为学习环境,使用Centos 7系统安装Docker。
安装Docker推荐使用daocloud一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh
安装完成后运行命令:
- [root@localhost ~]# docker -v
- Docker version 20.10.11, build dea9396
显示对应的Docker版本即安装成功。
2、安装Dapr CLI
官方解释:Dapr CLI 是您用于各种 Dapr 相关任务的主要工具。 您可以使用它来运行一个带有Dapr sidecar的应用程序, 以及查看sidecar日志、列出运行中的服务、运行 Dapr 仪表板。
下载Dapr CLI
wget -q https://raw.githubusercontent.com/dapr/cli/master/install/install.sh -O - | /bin/bash
验证安装情况
dapr -v
输出以下内容即安装成功。
- CLI version: 1.5.0
- Runtime version: 1.5.0
由于国内网络问题,使用官方的Dapr安装方法一般会遇到各种问题,因此把dapr下载下来,通过脚本进行安装。
修改hosts文件
vi /etc/hosts
- 140.82.114.4 github.com
- 199.232.69.194 github.global.ssl.fastly.net
- 140.82.114.9 codeload.github.com
刷新缓存
- yum install -y nscd
- service nscd restart
首先需要安装Git,然后执行以下命令:
- git clone -v https://gitee.com/Two-Twoone/dapr-installer.git
- cd dapr-installer/
- ./install.sh
虽然还是很慢,但是总比下不了好多了。
上面命令启动了几个容器,运行下列操作来验证:
- [root@localhost dapr-installer]# docker ps --format "table {
- {.ID}}\t{
- {.Names}}\t{
- {.Ports}}"
- CONTAINER ID