Как подключить кассандру из локальных инстансов к EC2
Я установил кластер Кассандра в EC2, он работает правильно. но когда я пытаюсь подключить кассандру из кода, используя php_cassa lib. ошибка его выдачи типа "сервер недоступен"
следующий код его работаю.
'ec2-public-ip address', 'port' => 9160); $ conn = новое соединение ('CookieDB', $ серверы); $column_family = new ColumnFamily($conn, 'User'); $column_family->insert('row_key', array('username'=>'PHPCASSA')); $value = $column_family->get('row_key'); print_r($ значение);?>
есть что-то, что я делаю не так
заранее спасибо
2 ответа
Похоже, вы не редактировали rpc_address в cassandra.yaml для прослушивания через публичный интерфейс вместо localhost.
- Консоль управления Goto EC2
- Нажмите на Группы безопасности в разделе Сеть и безопасность в левом меню.
- Выберите группу безопасности, связанную с вашим экземпляром, и нажмите вкладку "Входящие".
- Узнайте, что является источником для ВСЕГО порта (службы). Если источником является sg-xxxxxxxx, удалите его.
- Добавьте новое правило, выбрав следующие параметры: Создайте новое правило: Весь источник трафика: 0.0.0.0/0
- Добавить правило и нажмите "Применить изменения правила"
- Чтобы проверить, можете ли вы подключиться к серверу Cassandra, запустите клиент Cassandra с локального компьютера, как показано ниже:
cassandra-cli -host ec2-XX-XXX-XX-XXX.us-west-2.compute.amazonaws.com -port 9160