2017-01-26 5 views
0

Ich habe MongoDB Replica Set aus dem Rancher-Katalog installiert und das startet gut. Die nächste logische Sache ist es, den Master freizulegen, damit ich ihn konfigurieren und verwenden kann. Ich habe gesehen, dass ich den 27017 TCP Port mit einem Load Balancer freilegen kann, aber dann wird Round Robin statt Affinität zum Mongo Master.Rancher MongoDB Replikat Set expose the master

Gibt es einen Weg in Rancher, nur den Master zu entlarven?

+0

ich dies auch nicht herausfinden konnte. Alle mongodb-Instanzen sind im privaten Netzwerk verfügbar, also habe ich einfach ihre IPs gesammelt und eine Verbindungszeichenfolge in der Form 'mongodb: // {privateip1}: 27017, {privateip2}: 27017, {privateip3}: 27017morpheus-dev eingegeben 'Ich nehme an, es gibt einen besseren Weg, dies zu tun – CaptEmulation

+0

Ja, das wäre nicht ideal, weil Sie diesen Port auf all diesen Hosts verwenden werden. Der beste Weg, den ich mir vorgestellt habe, war, HAProxy dafür einzurichten. – occasl

Antwort

0

Betrachten HAProxy für diese Verwendung gemäß dieser article, die diesen Ansatz skizziert:

listen mongodb_cluster 
bind 10.0.0.10:27017 
option tcp-check 
# MongoDB Wire Protocol 
tcp-check send-binary 3a000000 # Message Length (58) 
tcp-check send-binary EEEEEEEE # Request ID (random value) 
tcp-check send-binary 00000000 # Response To (nothing) 
tcp-check send-binary d4070000 # OpCode (Query) 
tcp-check send-binary 00000000 # Query Flags 
tcp-check send-binary 61646d696e2e # fullCollectionName (admin.$cmd) 
tcp-check send-binary 24636d6400 # continued 
tcp-check send-binary 00000000 # NumToSkip 
tcp-check send-binary FFFFFFFF # NumToReturn 
# Start of Document 
tcp-check send-binary 13000000 # Document Length (19) 
tcp-check send-binary 10 # Type (Int32) 
tcp-check send-binary 69736d617374657200 # ismaster: 
tcp-check send-binary 01000000 # Value : 1 
tcp-check send-binary 00 # Term 

tcp-check expect binary 69736d61737465720001 #ismaster True 

option tcpka 
option tcplog 
server mongo-node-01 10.0.0.11:27017 check inter 2000 
server mongo-node-02 10.0.0.12:27017 check inter 2000 
Verwandte Themen