zoukankan      html  css  js  c++  java
  • Nacos安装和配置

    我们这里是在Centos7上进行的操作;首先在nacos的github 上下载安装包,直接选择最新的releases版本即可,如:nacos-server-1.4.1.tar.gz ;windows系统的话直接下载zip包安解压即可。

    配置jdk(如果没有的话)

    注意需要安装和配置Java环境(使用yum快速安装和配置jdk yum install java-1.8.0-openjdk.x86_64

    # 查看已有jdk版本
    yum list java*
    
    # 这里直接安装jdk8
    yum install java-1.8.0-openjdk.x86_64 -y
    yum install java-1.8.0-openjdk-devel.x86_64 -y
    

    单机版部署

    非常简单直接解压启动即可

    tar -xvf nacos-server-1.4.1.tar.gz
    cd nacos
    sh startup.sh -m standalone
    

    启动成功后访问http://你的服务器IP:8848/nacos/index.html 即可,默认是没有密码的,进去过后可以通过修改密码进行设置。

    如果开启了防火墙,要么通过如下命令停止防火墙

    systemctl disable firewalld
    systemctl stop firewalld
    

    或者设置防火墙开放端口

    firewall-cmd --zone=public --add-port=8848/tcp --permanent
    firewall-cmd --reload
    

    查看防火墙开放端口:firewall-cmd --list-port
    停止Nacos服务 sh bin/shutdown.sh

    集群版部署

    解压安装包

    tar -xvf nacos-server-1.4.1.tar.gz
    cd nacos
    # 拷贝集群配置文件
    cp conf/cluster.conf.example conf/cluster.conf
    vi conf/cluster.conf
    

    在cluster上添加服务节点

    192.168.0.113:8848
    192.168.0.114:8848
    192.168.0.115:8848
    

    修改conf目录下的application.properties中数据库配置

    ### If use MySQL as datasource:
    spring.datasource.platform=mysql
    
    ### Count of DB:
    db.num=1
    
    ### Connect URL of DB:
    db.url.0=jdbc:mysql://192.168.56.103:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
    db.user.0=root
    db.password.0=123456
    

    创建数据库

    下面是SQL语句(压缩包里面有)

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

    注意这里的密码是需要加密的;使用的是spring-boot-starter-security的new BCryptPasswordEncoder().encode("nacos")

    启动修改好配置后,依次启动每个nacos服务

    sh bin/startup.sh
    

    https://blog.vchar.top/dcs/1614258000.html

    关注微信订阅号‘起岸星辰’获取最新资讯

  • 相关阅读:
    [009]类型转换
    [008]new、delete及动态内存分配
    [007]操作符的求解顺序
    [010]转+修正---C++的贪吃蛇程序(未用面向对象封装)
    [006]为什么C++会被叫做是C++?
    [005]逗号表达式
    [JavaScript]转--如何让JS代码高大上
    [009]C---关于输出文本的打印问题
    [008]C---gcc环境下的一个编译器版本问题
    PlayMaker 状态机FSM重用
  • 原文地址:https://www.cnblogs.com/vchar/p/14451042.html
Copyright © 2011-2022 走看看