
# 手动搭建E3+
#### E3+资源需求
E3+应用需要使用到EVS、ECS、VPC、ELB、DCS、GaussDB、DMS、LTS、SMN、DRS、DWS、OBS等这些华为云产品，某客户的后端资源汇总统计信息：
图1资源汇总统计信息   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001913151709.png)
#### 部署GaussDB集群
通过华为云官网购买GaussDB数据库集群，选择相关的配置，购买完成后给出可以访问的连接信息用于后续的E3+的部署：
图2部署GaussDB集群1   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001867352288.png)
图3部署GaussDB集群2   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001913232073.png)
图4部署GaussDB集群3   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001867192448.png)
#### 部署redis集群
通过华为云官网购买分布式缓存服务Redis版，选择相关的配置，购买完成后给出可以访问的连接信息用于后续的E3+的部署：
图5部署redis集群1   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001913151713.png)
图6部署redis集群2   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001867352292.png)
图7部署redis集群3   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001913232077.png)
#### 部署RabbitMQ集群
通过华为云官网购买分布式消息服务RabbitMQ版，选择相关的配置，购买完成后给出可以访问的连接信息用于后续的E3+的部署：
图8部署RabbitMQ集群1   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001867192452.png)
图9部署RabbitMQ集群2   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001913151717.png)
#### 部署E3+服务
1. 创建e3plus的命名空间 
   kubectl create namespace e3plus
   
   
2. 确认需要安装的E3+版本信息 
   从公司内部git拉取对应版本的配置信息及数据库脚本
   
   
3. k8s部署nacos(kubectl apply -n e3plus nacos.yaml) 
   - 上传nacos.yaml文件
   
   - kubectl apply -f nacos.yaml
   
   - 上传nacos配置文件，所有文件在上面第2步复制的e3plus-config文件夹下，此文件夹目录类似如下
     ```
     .
     |-- DEFAULT_GROUP
     |   |-- application.yaml
     |   |-- e-erp-app-finance-dev.yaml
     |   |-- e-erp-app-gateway-dev.yaml
     |   |-- e-erp-app-integration-dev.yaml
     |   |-- e-erp-app-oms-dev.yaml
     |   |-- e-erp-app-pos-dev.yaml
     |   |-- e-erp-basebiz-credit-dev.yaml
     |   |-- e-erp-basebiz-goods-dev.yaml
     |   |-- e-erp-basebiz-order-dev.yaml
     |   |-- e-erp-basebiz-price-dev.yaml
     |   |-- e-erp-basebiz-system-dev.yaml
     |   |-- e-erp-biz-drp-dev.yaml
     |   |-- e-erp-biz-market-dev.yaml
     |   |-- e-erp-biz-member-dev.yaml
     |   |-- e-erp-biz-monitor
     |   |-- e-erp-biz-settlement-dev.yaml
     |   |-- e-erp-biz-stock-dev.yaml
     |   |-- e-erp-biz-support-dev.yaml
     |   `-- e-erp-component-gateway-dev.yaml
     |-- E3PLUS-OMS
     |   `-- e3plus-oms.json
     |-- SEATA_GROUP
     |   |-- store.db.branchTable
     |   |-- store.db.datasource
     |   |-- store.db.dbType
     |   |-- store.db.driverClassName
     |   |-- store.db.globalTable
     |   |-- store.db.lockTable
     |   |-- store.db.maxConn
     |   |-- store.db.minConn
     |   |-- store.db.password
     |   |-- store.db.queryLimit
     |   |-- store.db.url
     |   |-- store.db.user
     |   `-- store.mode
     `-- images.yml
     ```
     其中：DEFAULT_GROUP、E3PLUS-OMS、SEATA都是nacos的命名空间下的分组，直接压缩成zip文件后，上传到nacos。
     
   
   
   
   
4. 部署E3+的引导服务e3plus-guide 
   kubectl apply -f e3plus-guide.yaml
   
   
5. 启动引导服务，填写redis，rabbitmq，mysql的配置信息 
   图10配置信息   
   ![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001477894104.png)
   
   
6. 检查引导服务状态 
   图11检查   
   ![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001528654045.png)
   
   
7. 在bseip集群部署E3+所有应用 
   - E3+应用的deployment文件：[示例](http://bsconfluence.baison.net:40506/download/attachments/84116202/k8s-e3plus.zip?api=v2&modificationDate=1611826962000&version=1)
   
   - 修改示例中的yaml文件的镜像以符合自己的需求
   
   - kubectl -f \*.yaml
   
   
   
   
 
#### 部署服务负载均衡服务
通过华为云官网购买负载均衡服务
图12购买   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001867352296.png)
配置主机和端口的监听服务
图13配置   
![](https://support.huaweicloud.com/baisonoms-dgm/zh-cn_image_0000001913232081.png)
