snažíme sa nastaviť multiregionálny klaster Cassandra na ec2. Naša konfigurácia vyzerá takto
5 uzlov každý na nás-východ-1a, nás-východ-1b, nás-východ-1c, nás-západ-1a. Za týmto účelom sme upravili súbor cassandra-rackdc.properties.
príslušné použitie súboru GossipingPropertyFileSnitch a upraveného súboru cassandra.yaml
používame všetkých 20 verejných ips na konfiguráciu semien v súbore cassandra.yaml
Zaznamenali sme vlastnosť listen_address a rpc_address, takže Cassandra predvolene používa InetAddress.getLocalHost()
Odvolili sme adresu vysielania, aby sme mohli používať verejnú IP
upravili sme súbor agentov address.yaml tak, aby používal verejnú IP adresu pre vlastnosti stomp_interface a local_interface
Uzly začíname jeden po druhom s medzipriestorovou prestávkou 3 minúty.
Problém:
Pri použití opscentra. Zobrazuje iba jeden uzol v klastri
príkaz "nodetool status" tiež zobrazuje iba jeden uzol
Pri použití príkazu cql sa zobrazia všetci jeho kolegovia
Akú chybu robíme?
odpovede:
4 pre odpoveď č. 1Robím niečo podobné ako proof-of-concept. Mám funkčný klaster s dvoma regiónmi. Tu sú veci, ktoré som urobil inak, po prečítaní vašej otázky:
- Použil som Ec2MultiRegionSnitch, ktorý je navrhnutý na spracovanie verejných a súkromných adries IP v EC2.V AWS, Elastická IP nie je viazaná na rozhranie inštanciou a to spôsobuje problémy s komunikáciou klastra.
- v cassandra.yaml som nechal súkromnú IP adresu listen_address.
- tiež nastavte rpc_address na 0.0.0.0
- odkomentujte broadcast_address a nastavte ju na verejnú IP (ako ste to urobili vy).
- nastavil som dc_suffix v súbore cassandra-rackdc.properties a nekomentoval prefer_local = true (vo vnútri regiónu bude Cassandra uprednostňovať použitie súkromných IP adries).
- Otvoril som bezpečnostné skupiny pre Cassandru, aby tcp porty 7000 a 7001 mohli hovoriť medzi uzlami v 2 rôznych regiónoch. Opscenter používa porty 61620 a 61621.
- Všetky uzly majú rovnaký názov klastra.
- počiatočné adresy IP sú nastavené na verejné adresy IP. Nepoužíval som všetky uzly ako semená, to sa neodporúča.
- Začnite najskôr semenami, potom nasledujú ďalšie uzly.
To poskytlo funkčný klaster. Teraz pracujem na tom ssl uzla k uzlu komunikácia medzi regiónmi.