Consul 도메인 이름 서비스

4745 단어
=========================consul 도메인 이름 서비스 ===========================표준 DNS 기본 포트는 53이고 consul 기본 DNS 포트는 8600이다.DNS 서비스를 조회할 때 서비스 이름을 지정해야 합니다. consul은 다양한 서비스 이름 쓰기를 지원합니다. 주로 consul 표준 쓰기와 RFC2782 쓰기를 사용합니다.
1. 표준consul 서비스 쓰기 (가장 자주 사용): [tag.].service[.your_datacenter].consul은 모두 5개 부분을 포함합니다: *.마지막 consul은 명명 공간입니다. 수정할 수 있습니다. 절약은 consul입니다. *.서비스에 등록할 때 하나의 서비스는 여러 개의 서비스 노드를 포함할 수 있다. 우리는 모든 노드에 여러 개의 태그를 달 수 있다. 예를 들어 우리는prod 가 있다.mysql 서비스, 첫 번째'Node'는'mysql-1'이고 그'tags'는 ['master','v1']이다.두 번째 "Node"는 "mysql-2", "tags"는 ["slave", "v1"]
예:
#   consul  ,   consul.service.consul  ,   DNS  
docker run --rm  azukiapp/dig:latest dig @192.168.1.11 -p 8600 consul.service.consul SRV

2. RFC2782의 쓰기 방법은. 입니다.서비스[.datacenter][.domain], 이런 방법이 있다는 것을 알면 돼요. 연구를 많이 하지 않아요.
 
 
==========================도메인네임 조회 도구 dig===========================Linux와 윈도에는 nslookup 도메인네임 조회 도구 도구가 있는데 Linux는 nslookup 대신 dig를 추천했다. dig의 전칭은 Domain Information Groper이고 윈도우즈 공식 시스템에서는 dig 도구를 제공하지 않는다.우리는 Bind 패키지(DNS 서버)의 dig 도구를 사용할 수 있다.다운로드 주소:https://www.isc.org/downloads/bind/설치한 마법사에서 Options는 "Tool only"를 선택하면 됩니다. 왜냐하면 우리는 Bind를 사용하여 DNS 서버를 만들 필요가 없기 때문입니다.
다음은 dig 명령줄의 몇 가지 일반적인 쓰기 방법: dig Hostname dig Domain NameHere dig @DNS-server-name Hostname dig @DNS-server-name IPAddress dig @DNS-server-name Hostname | IPAddress type dig @DNS-server-name -p53 Hostname | IPAddress type dig | IPAddress type dig @DNS-server-name -p8600 Hostname | IPAddressDNS-server-name은 도메인 이름 서버입니다. 예를 들어 8.8.8.8 또는 ns1을 지정할 수 있습니다.cyberciti.biz, 도메인 이름 서버 앞에 @ 기호 2.Hostname | IPAddress는 검색할 자원 이름입니다. 예를 들어 www.baidu입니다.com 3. type 매개 변수: 조회할 유형은 기본적으로 A record를 대표하고 다른 합법적인 유형은 ANY, AAAA, CNAME, MX, NS, PTR, SRV, SIG 4. -p 매개 변수, 표준 DNS 기본 포트는 53입니다. 53 포트가 아닌 경우, 포트 번호를 지정해야 합니다. 예를 들어dig @127.0.0.1 - p8600 redis.service.dc1.consul SRV consul 기본적으로 consul client는 이 컴퓨터의 127.0.0.1:8600을 사용하여 DNS 조회 서비스를 대외적으로 제공합니다.
 
===========================Boot2Docker에서 dig=============================Boot2Docker가 설치된 VM에는 dig 도구가 없으며 azukiapp/dig:latest 미러를 사용할 수 있습니다.docker run --rm azukiapp/dig:latest dig @192.168.1.11 -p 8600 consul.service.consul SRV
==========================consul DNS 서비스 등록=========================consul 기본적으로 우리는 본기의 consul client 8600 포트를 통해 DNS 정보를 조회하고 본기 consul client 8500 http 포트를 통해 서비스를 등록할 수 있다.
mysql이라는 서비스를 등록합니다. 이 서비스는 모두 두 개의 주소가 있고 두 개의 주소의 등록 명령은 다음과 같습니다.
#   mysql   service,  ,  : 
curl -X PUT -d '{"Datacenter": "dc1", "Node": "mysql-1","Address": "mysql-1.node.consul","Service": {"Service": "mysql", "tags": ["master","v1"],"Port": 3306}}'  http://192.168.1.11:8500/v1/catalog/register
curl -X PUT -d '{"Datacenter": "dc1", "Node": "mysql-2","Address": "mysql-2.node.consul","Service": {"Service": "mysql", "tags": ["slave","v1"],"Port": 3306}}' http://192.168.1.11:8500/v1/catalog/register


#   mysql service   DNS
docker run --rm  azukiapp/dig:latest dig @192.168.1.11 -p 8600 mysql.service.consul SRV

#   tag   v1,  mysql.service.consul  
docker run --rm  azukiapp/dig:latest dig @192.168.1.11 -p 8600 v1.mysql.service.consul SRV

#   tag   master,  mysql.service.consul  
docker run --rm  azukiapp/dig:latest dig @192.168.1.11 -p 8600 master.mysql.service.consul SRV

좋은 웹페이지 즐겨찾기