【Nacos】 CoreDNS 下发域名
【Nacos】 CoreDNS 下发域名
Metadata
title: 【Nacos】 CoreDNS 下发域名
date: 2023-01-04 15:57
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Nacos/生态
categories:
- Nacos
keywords:
- Nacos
description: 【Nacos】 CoreDNS 下发域名
【Nacos】 CoreDNS 下发域名
本插件提供了一个基于 CoreDNS 的 DNS-F 客户端,可以将 Nacos 上注册的服务导出为 DNS 域名。 本 DNS-F 客户端是应用程序进程旁边的一个专用代理进程(side car),可以将服务名作为 DNS 域名查询请求转发到本客户端,提供服务发现的功能。
快速开始
要构建和运行本 nacos-coredns 插件,操作系统必须是 Linux 或 Mac。 另外,请确保您的 nacos 服务端版本为 2.2 或更高级版本,以及 golang 版本为 1.17 或更高级版本, 并且必须正确配置 golang 环境(GOPATH、GOROOT)。因为需要支持 nacos2.x 版本的 gRPC 连接功能和 go mod 功能。
构建
git clone https://github.com/nacos-group/nacos-coredns-plugin.git
cp nacos-coredns-plugin/bin/build.sh ~/
cd ~/
sh build.sh
配置
运行本 nacos-coredns 插件,您需要一个配置文件。 一个标准的配置文件如下:
. {
log
nacos {
nacos_namespaceId public
nacos_server_host 127.0.0.1:8848
}
forward . /etc/resolv.conf
}
- forward:未在 nacos 注册的域名将被转发到 upstream。
- nacos_namespaceId:nacos namespaceId,默认为 public。
- nacos_server_host:nacos 服务端的 IP 地址和端口,如果有两个或多个 nacos 服务端,用逗号分隔
运行
- 首先需要部署一个 nacos 服务端。 部署参考
- 其次,在 nacos 上注册服务。
- 然后输入配置文件 (path_to_corefile) 和指定端口 (dns_port) ,运行本插件。
$GOPATH/src/coredns/coredns -conf $path_to_corefile -dns.port $dns_port
服务发现例子
- 输入服务名 (nacos_service_name) ,以及插件的 IP 地址 (dns_ip) 和端口 ($dns_port)
dig $nacos_service_name @$dns_ip -p $dns_port
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 蝶梦庄生!
评论