当前位置:首页 > 综合资讯 > 正文
黑狐家游戏

nacos2.0部署,Nacos 2.0 部署教程,轻松实现云服务器上的服务注册与配置中心

nacos2.0部署,Nacos 2.0 部署教程,轻松实现云服务器上的服务注册与配置中心

Nacos 2.0部署教程,助您轻松在云服务器上搭建服务注册与配置中心,详细步骤,快速上手,实现高效的服务管理。...

Nacos 2.0部署教程,助您轻松在云服务器上搭建服务注册与配置中心,详细步骤,快速上手,实现高效的服务管理。

Nacos 是阿里巴巴开源的动态服务发现、配置管理和服务管理平台,支持多种编程语言和框架,本文将详细介绍如何将 Nacos 2.0 部署到云服务器上,实现服务注册与配置中心的功能。

准备工作

  1. 云服务器一台(本文以阿里云为例)
  2. Java 开发环境
  3. Maven 或 Gradle 构建工具
  4. Git 版本控制工具

Nacos 2.0 部署步骤

下载 Nacos 2.0 服务器端安装包

访问 Nacos 官方网站(https://github.com/alibaba/nacos/releases)下载 Nacos 2.0 服务器端安装包,这里以 2.0.3 版本为例,下载 nacos-server-2.0.3.tar.gz。

nacos2.0部署,Nacos 2.0 部署教程,轻松实现云服务器上的服务注册与配置中心

图片来源于网络,如有侵权联系删除

解压安装包

将下载的 nacos-server-2.0.3.tar.gz 解压到云服务器上的合适目录,/usr/local/nacos。

配置 Nacos

进入解压后的 nacos 目录,编辑 /usr/local/nacos/nacos-server-2.0.3/conf/application.properties 文件。

(1)配置 Nacos 数据存储方式

Nacos 支持多种数据存储方式,包括嵌入式数据库(如 H2)、MySQL、Redis 等,这里以 MySQL 为例,配置如下:

# MySQL 数据源配置
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user.0=root
db.password.0=root

(2)配置 MySQL 数据库连接信息

在 nacos 目录下创建一个名为 db.sql 的文件,将以下 SQL 语句复制到该文件中:

CREATE DATABASE IF NOT EXISTS `nacos` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
USE `nacos`;
CREATE TABLE `config_info` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `content` longtext NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `app_name` varchar(255)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_info_aggr` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `content` longtext NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `app_name` varchar(255),
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `op_type` int,
  `time_span` int
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_info_beta` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `content` longtext NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `app_name` varchar(255),
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `op_type` int,
  `time_span` int
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_info_tag` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `tag_id` varchar(255),
  `app_name` varchar(255),
  `content` longtext NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `op_type` int,
  `time_span` int
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_info_history` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `content` longtext NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `app_name` varchar(255),
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `op_type` int,
  `time_span` int
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_blob_info` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `content` longblob NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `app_name` varchar(255),
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `op_type` int,
  `time_span` int
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_meta` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255),
  `content` longtext NOT NULL,
  `md5` varchar(32),
  `gmt_create` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `gmt_modified` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `app_name` varchar(255),
  `src_user` varchar(255),
  `src_ip` varchar(255),
  `op_type` int,
  `time_span` int
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `config_tags_relation` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `tag_name` varchar(100) NOT NULL,
  `tag_type` varchar(100) NOT NULL,
  `data_id` varchar(255) NOT NULL,
  `group_id` varchar(255) NOT NULL,
  `tenant_id` varchar(255) DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `group关系的表` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `group_id` varchar(255) NOT NULL,
  `tenant_id` varchar(255) DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `tenant` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `tenant_id` varchar(255) NOT NULL DEFAULT '' COMMENT '租户ID',
  `tenant_name` varchar(255) DEFAULT '' COMMENT '租户名',
  `tenant_desc` varchar(255) DEFAULT NULL COMMENT '租户描述',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `use_status` int(1) NOT NULL,
  `remark` varchar(255) DEFAULT NULL COMMENT '备注'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `users` (
  `username` varchar(50) NOT NULL,
  `password` varchar(50) NOT NULL,
  `Enabled` tinyint(1) NOT NULL,
  PRIMARY KEY (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `roles` (
  `username` varchar(50) NOT NULL,
  `role` varchar(50) NOT NULL,
  PRIMARY KEY (`username`,`role`),
  KEY `UK_user_role` (`role`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `permissions` (
  `role` varchar(50) NOT NULL,
  `resource` varchar(255) NOT NULL,
  `action` varchar(8) NOT NULL,
  PRIMARY KEY (`role`,`resource`,`action`),
  KEY `UK_resource_action` (`resource`,`action`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `resources` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `resource` varchar(255) NOT NULL,
  `type` varchar(255) NOT NULL,
  `url` varchar(255) NOT NULL,
  `descript` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
INSERT INTO `users`(`username`, `password`, `Enabled`) VALUES ('nacos', 'nacos', 1);
INSERT INTO `roles`(`username`, `role`) VALUES ('nacos', 'ROLE_ADMIN');

执行以下命令,创建数据库和表:

mysql -u root -p < db.sql

(3)配置 Nacos 集群

nacos2.0部署,Nacos 2.0 部署教程,轻松实现云服务器上的服务注册与配置中心

图片来源于网络,如有侵权联系删除

在 application.properties 文件中,配置 Nacos 集群信息:

# Nacos 集群配置
nacos.cluster.name=exampleCluster
nacos.serverAddr=127.0.0.1:8848

这里以单机模式为例,将 serverAddr 设置为本地 IP 地址和端口。

启动 Nacos

进入 nacos 目录,执行以下命令启动 Nacos:

sh bin/startup.sh

等待启动完成,Nacos 服务器将默认监听 8848 端口。

访问 Nacos 管理控制台

在浏览器中输入 http://your_server_ip:8848/nacos/,使用默认用户名和密码(nacos/nacos)登录 Nacos 管理控制台。

本文详细介绍了如何将 Nacos 2.0 部署到云服务器上,实现服务注册与配置中心的功能,通过以上步骤,您可以在云服务器上搭建一个稳定、高效的 Nacos 服务,方便您的微服务架构管理。

黑狐家游戏

发表评论

最新文章