开发者

Nacos快速安装部署教程

目录
  • 一、Nacos简介
  • 二、Nacos单机模式部署
    • 1、下载编译后压缩包
    • 2、修改配置文件application.properties
    • 3、执行数据库脚本
    • 4、启动服务器
    • 5、查看启动日志
  • 三、登录Nacos控制台
    • 总结

      一、Nacos简介

      Nacos是阿里巴巴开源的组件,致力于帮助发现、配置和管理微服务,帮助我们快速实现动态服务发现、服务配置、服务元数据及流量管理。

      二、Nacos单机模式部署

      1、下载编译后压缩包

      我们直接从github上下载Nacos稳定版本即可,我这里下载的是1.4.3版本。

      下载完直接解压即可:
      tar -xzf nacos-server-1.4.3.tar.gz
      

      2、修改配置文件application.properties

      进入到nacos-server-1.4.3/conf目录下,修改application.properties文件,这里我们主要修改mysql的数据库相关配置。

      ### If use MySQL as datasource:
      spring.datasource.platform=mysql
      
      ### Count of DB:
      db.num=1
      
      ### Connect URL of DB:
      db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
      db.user.0=nacos
      db.password.0=nacos
      
      ### Connection pool configuration: hikariCP
      db.pool.config.connectionTimeout=30000
      db.pool.config.validationTimeout=10000
      db.pool.config.maximumPoolSize=20
      db.pool.config.minimumIdle=2
      

      备注:如果不修改spring.datasource.platform配置,则Nacos会使用内置derby数据库。

      3、执行数据库脚本

      进入nacos-server-1.4.3/conf目录下,执行nacos-mysql.sql文件的数据库脚本。

      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = config_info   */
      /******************************************/
      CREATE TABLE `config_info` (
        `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
        `data_id` varchar(255) NOT NULL COMMENT 'data_id',
        `group_id` varchar(255) DEFAULT NULL,
        `content` longtext NOT NULL COMMENT 'content',
        `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
        `gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
        `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
        `src_user` text COMMENT 'source user',
        `src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
        `app_name` varchar(128) DEFAULT NphpULL,
        `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
        `c_desc` varchar(256) DEFAULT NULL,
        `c_use` varchar(64) DEFAULT NULL,
        `effect` varchar(64) DEFAULT NULL,
        `type` varchar(64) DEFAULT NULL,
        `c_schema` text,
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info';
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = config_info_aggr   */
      /******************************************/
      CREATE TABLE `config_info_aggr` (
        `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
        `data_id` varchar(255) NOT NULL COMMENT 'data_id',
        `group_id` varchar(255) NOT NULL COMMENT 'group_id',
        `datum_id` varchar(255) NOT NULL COMMENT 'datum_id',
        `content` longtext NOT NULL COMMENT '内容',
        `gmt_modified` datetime NOT NULL COMMENT '修改时间',
        `app_name` varchar(128) DEFAULT NULL,
        `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_configinfoaggr_datagrouptenantdatum` (`data_id`,`group_id`,`tenant_id`,`datum_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='增加租户字段';
      
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = config_info_beta   */
      /******************************************/
      CREATE TABLE `config_info_beta` (
        `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
        `data_id` varchar(255) NOT NULL COMMENT 'data_id',
        `group_id` varchar(128) NOT NULL COMMENT 'group_id',
        `app_name` varchar编程客栈(128) DEFAULT NULL COMMENT 'app_name',
        `content` longtext NOT NULL COMMENT 'content',
        `beta_ips` varchar(1024) DEFAULT NULL COMMENT 'betaIps',
        `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
        `gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
        `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
        `src_user` text COMMENT 'source user',
        `src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
        `tenant_id` varchar(128) DEFAULT '' COMMENT '租户字段',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_configinfobeta_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_beta';
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = config_info_tag   */
      /******************************************/
      CREATE TABLE `config_info_tag` (
        `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
        `data_id` varchar(255) NOT NULL COMMENT 'data_id',
        `group_id` varchar(128) NOT NULL COMMENT 'group_id',
        `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
        `tag_id` varchar(128) NOT NULL COMMENT 'tag_id',
        `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
        `content` longtext NOT NULL COMMENT 'content',
        `md5` varchar(32) DEFAULT NULL COMMENT 'md5',
        `gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
        `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
        `src_user` text COMMENT 'source user',
        `src_ip` varchar(50) DEFAULT NULL COMMENT 'source ip',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_configinfotag_datagrouptenanttag` (`data_id`,`group_id`,`tenant_id`,`tag_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_info_tag';
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = config_tags_relation   */
      /******************************************/
      CREATE TABLE `config_tags_relation` (
        `id` bigint(20) NOT NULL COMMENT 'id',
        `tag_name` varchar(128) NOT NULL COMMENT 'tag_name',
        `tag_type` varchar(64) DEFAULT NULL COMMENT 'tag_type',
        `data_id` varchar(255) NOT NULL COMMENT 'data_id',
        `group_id` varchar(128) NOT NULL COMMENT 'group_id',
        `tenant_id` varchar(128) DEFAULT '' COMMENT 'tenant_id',
        `nid` bigint(20) NOT NULL AUTO_INCREMENT,
        PRIMARY KEY (`nid`),
        UNIQUE KEY `uk_configtagrelation_configidtag` (`id`,`tag_name`,`tag_type`),
        KEY `idx_tenant_id` (`tenant_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='config_tag_relation';
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = group_capacity   */
      /******************************************/
      CREATE TABLE `group_capacity` (
        `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
        `group_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Group ID,空字符表示整个集群',
        `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额,0表示使用默认值',
        `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
        `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限,单位为字节,0表示使用默认值',
        `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '聚合子配置最大个数,,0表示使用默认值',
        `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',
        `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '最大变更历史数量',
        `gmt_create` datetime NOT NULL DEFAULT CURRENT_TIandroidMESTAMP COMMENT '创建时间',
        `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_group_id` (`group_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='集群、各Group容量信息表';
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = his_config_info   */
      /******************************************/
      CREATE TABLE `his_config_info` (
        `id` bigint(64) unsigned NOT NULL,
        `nid` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
        `data_id` varchar(255) NOT NULL,
        `group_id` varchar(1php28) NOT NULL,
        `app_name` varchar(128) DEFAULT NULL COMMENT 'app_name',
        `content` longtext NOT NULL,
        `md5` varchar(32) DEFAULT NULL,
        `gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
        `src_user` text,
        `src_ip` varchar(50) DEFAULT NULL,
        `op_type` char(10) DEFAULT NULL,
        `tenant_id` varchar(128) DEFAULT '' COMMENT '租http://www.devze.com户字段',
        PRIMARY KEY (`nid`),
        KEY `idx_gmt_create` (`gmt_create`),
        KEY `idx_gmt_modified` (`gmt_modified`),
        KEY `idx_did` (`data_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='多租户改造';
      
      
      /******************************************/
      /*   数据库全名 = nacos_config   */
      /*   表名称 = tenant_capacity   */
      /******************************************/
      CREATE TABLE `tenant_capacity` (
        `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键ID',
        `tenant_id` varchar(128) NOT NULL DEFAULT '' COMMENT 'Tenant ID',
        `quota` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '配额,0表示使用默认值',
        `usage` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '使用量',
        `max_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个配置大小上限,单位为字节,0表示使用默认值',
        `max_aggr_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '聚合子配置最大个数',
        `max_aggr_size` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '单个聚合数据的子配置大小上限,单位为字节,0表示使用默认值',
        `max_history_count` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '最大变更历史数量',
        `gmt_create` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
        `gmt_modified` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_tenant_id` (`tenant_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='租户容量信息表';
      
      
      CREATE TABLE `tenant_info` (
        `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
        `kp` varchar(128) NOT NULL COMMENT 'kp',
        `tenant_id` varchar(128) default '' COMMENT 'tenant_id',
        `tenant_name` varchar(128) default '' COMMENT 'tenant_name',
        `tenant_desc` varchar(256) DEFAULT NULL COMMENT 'tenant_desc',
        `create_source` varchar(32) DEFAULT NULL COMMENT 'create_source',
        `gmt_create` bigint(20) NOT NULL COMMENT '创建时间',
        `gmt_modified` bigint(20) NOT NULL COMMENT '修改时间',
        PRIMARY KEY (`id`),
        UNIQUE KEY `uk_tenant_info_kptenantid` (`kp`,`tenant_id`),
        KEY `idx_tenant_id` (`tenant_id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='tenant_info';
      
      CREATE TABLE `users` (
      	`username` varchar(50) NOT NULL PRIMARY KEY,
      	`password` varchar(500) NOT NULL,
      	`enabled` boolean NOT NULL
      );
      
      CREATE TABLE `roles` (
      	`username` varchar(50) NOT NULL,
      	`role` varchar(50) NOT NULL,
      	UNIQUE INDEX `idx_user_role` (`username` ASC, `role` ASC) USING BTREE
      );
      
      CREATE TABLE `permissions` (
          `role` varchar(50) NOT NULL,
          `resource` varchar(255) NOT NULL,
          `action` varchar(8) NOT NULL,
          UNIQUE INDEX `uk_role_permission` (`role`,`resource`,`action`) USING BTREE
      );
      
      INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuwpZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
      
      INSERT INTO roles (username, role) VALUES ('nacos', 'ROLE_ADMIN');
      
      

      4、启动服务器

      运行如下命令启动服务器即可:

      sh startup.sh -m standalone
      

      5、查看启动日志

      进入nacos-server-1.4.3/logs目录下,查看start.out文件。

      Nacos快速安装部署教程

      三、登录Nacos控制台

      访问http://127.0.0.1:8848/nacos,输入用户名/密码:nacos/nacos,进入主界面。

      Nacos快速安装部署教程

      总结

      以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

      0

      上一篇:

      下一篇:

      精彩评论

      暂无评论...
      验证码 换一张
      取 消

      最新开发

      开发排行榜