• Nacos -- 集群部署


    目录

    搭建集群

    1.初始化数据库

    2.下载nacos

     3.配置Nacos

    3.启动

    4.nginx反向代理

     5.项目注册


    官方给出的Nacos集群图:

    这里负载均衡器可以使用nginx。

    因为机器性能限制,本地就启动2个nacos节点,作为测试

    二个nacos节点的地址:

    节点 ip port
    nacos1 192.168.56.1 8845
    nacos2 192.168.56.1 8847

    注意在搭建过程中发现如果集群的端口连续则会启动失败,则nacos集群的 端口不要连续

    搭建集群

    搭建集群的基本步骤:

    1.初始化数据库

    Nacos默认数据存储在内嵌数据库Derby中,不属于生产可用的数据库。

    官方推荐的最佳实践是使用带有主从的高可用数据库集群,主从模式的高可用数据库可以参考Mysql - 主从复制_naki_bb的博客-CSDN博客

    这里我们以单个数据库为例

    1.创建一个nacos数据库

    2.导入sql

    注意Mysql 5.7之前和之后sql有稍许差别

    Mysql 5.7之前:

    1. CREATE TABLE `config_info` (
    2. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    3. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    4. `group_id` varchar(255) DEFAULT NULL,
    5. `content` longtext NOT NULL COMMENT 'content',
    6. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
    7. `gmt_create` datetime NOT NULL COMMENT '创建时间',
    8. `gmt_modified` datetime NOT NULL COMMENT '修改时间',
    9. `src_user` text COMMENT 'source user',
    10. `src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
    11. `app_name` varchar(128) DEFAULT NULL,
    12. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    13. `c_desc` varchar(256) DEFAULT NULL,
    14. `c_use` varchar(64) DEFAULT NULL,
    15. `effect` varchar(64) DEFAULT NULL,
    16. `type` varchar(64) DEFAULT NULL,
    17. `c_schema` text,
    18. PRIMARY KEY (`id`),
    19. UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
    20. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info';
    21. /******************************************/
    22. /* 数据库全名 = nacos_config */
    23. /* 表名称 = config_info_aggr */
    24. /******************************************/
    25. CREATE TABLE `config_info_aggr` (
    26. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    27. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    28. `group_id` varchar(255) NOT NULL COMMENT 'group_id',
    29. `datum_id` varchar(255) NOT NULL COMMENT 'datum_id',
    30. `content` longtext NOT NULL COMMENT '内容',
    31. `gmt_modified` datetime NOT NULL COMMENT '修改时间',
    32. `app_name` varchar(128) DEFAULT NULL,
    33. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    34. PRIMARY KEY (`id`),
    35. UNIQUE KEY `uk_configinfoaggr_datagrouptenantdatum` (`data_id`,`group_id`,`tenant_id`,`datum_id`)
    36. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='增加租户字段';
    37. /******************************************/
    38. /* 数据库全名 = nacos_config */
    39. /* 表名称 = config_info_beta */
    40. /******************************************/
    41. CREATE TABLE `config_info_beta` (
    42. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    43. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    44. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
    45. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
    46. `content` longtext NOT NULL COMMENT 'content',
    47. `beta_ips` varchar(1024) DEFAULT NULL COMMENT 'betaIps',
    48. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
    49. `gmt_create` datetime NOT NULL COMMENT '创建时间',
    50. `gmt_modified` datetime NOT NULL COMMENT '修改时间',
    51. `src_user` text COMMENT 'source user',
    52. `src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
    53. `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
    54. PRIMARY KEY (`id`),
    55. UNIQUE KEY `uk_configinfobeta_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
    56. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_beta';
    57. /******************************************/
    58. /* 数据库全名 = nacos_config */
    59. /* 表名称 = config_info_tag */
    60. /******************************************/
    61. CREATE TABLE `config_info_tag` (
    62. `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
    63. `data_id` varchar(255) NOT NULL COMMENT 'data_id',
    64. `group_id` varchar(128) NOT NULL COMMENT 'group_id',
    65. `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
    66. `tag_id` varchar(128) NOT NULL COMMENT 'tag_id',
    67. `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
    68. `content` longtext NOT NULL COMMENT 'content',
    69. `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
    70. `gmt_create` datetime NOT NULL COMMENT '创建时间',
    71. `gmt_modified` datetime NOT NULL COMMENT '修改时间',
    72. `src_user` text COMMENT 'source user',
    73. `src_ip` varchar(50) DEFAULT
  • 相关阅读:
    Spark集群安装
    第4章 8088/8086指令系统
    JavaScript第三讲:解锁JavaScript的数据世界:基本数据类型与类型转换的奥秘
    基于Micropython的桌面信息小摆件
    python 之运算符
    在线系统运行慢,对其进行性能分析以及处置的方法【总结】
    《第三期(先导课)》之《Python 开发环境搭建》
    selenium元素定位 —— 提高篇 CSS定位元素
    UE5 发射物目标追踪
    我们离成为C++、C#、MySQL之父有多远?
  • 原文地址:https://blog.csdn.net/qq_33753147/article/details/127120709