關(guān)于Python連接Cassandra容器進(jìn)行查詢的問題
首先Cassandra是使用docker-swarm同微服務(wù)一同部署的。
問題的關(guān)鍵在于尋找到Cassandra的9042端口,從而獲取數(shù)據(jù)。
問題一:在主節(jié)點(diǎn)Ping Cassandra容器的IP,由于利用docker-swarm網(wǎng)橋連接的容器,兩者的IP不在同一網(wǎng)段,所以ping失敗,無(wú)法獲取9042端口。

問題二:在 Cassandra容器內(nèi)輸入ip addr,得到結(jié)果如下:

得到兩個(gè)IP字段,其中下面的IP字段對(duì)應(yīng)的是docker-swarm創(chuàng)建的網(wǎng)橋,在主節(jié)點(diǎn)嘗試ping一下,竟然可以ping通。但訪問IP:9042訪問被拒絕。
問題三:進(jìn)入到同網(wǎng)段下的容器內(nèi),ping兩個(gè)IP字段都可以ping通,而且可以訪問9042端口。但是在容器內(nèi)操作較麻煩,我的目的是在節(jié)點(diǎn)中進(jìn)行操作。
解決辦法: 嘗試在Cassandra容器所在的節(jié)點(diǎn)ping兩者,雖然前者仍無(wú)法ping通,但后者可以ping通,進(jìn)入容器執(zhí)行
cqlsh 172.18.0.3 #網(wǎng)橋分配IP
發(fā)現(xiàn)可以進(jìn)入數(shù)據(jù)庫(kù),應(yīng)該是網(wǎng)橋分配的IP是可以連接的,但是在節(jié)點(diǎn)上沒有打開9042端口,所以導(dǎo)致訪問被拒絕。打開9042端口即可。由于時(shí)間問題,我直接在容器節(jié)點(diǎn)上進(jìn)行測(cè)試。代碼如下:
#!/usr/bin/env python3
from cassandra.cluster import Cluster
from cassandra.query import tuple_factory
from cassandra.policies import DCAwareRoundRobinPolicy
from cassandra.policies import DowngradingConsistencyRetryPolicy
from cassandra import ConsistencyLevel
from cassandra.query import dict_factory
import sys
def conn():
cluster = Cluster(["172.18.0.3"])
session=cluster.connect('jaeger_v1_dc1')
return session
if __name__ == '__main__':
session = conn()
data = session.execute("select duration from traces limit 10;")
for i in data:
print (i)
session.shutdown()
到此這篇關(guān)于關(guān)于Python連接Cassandra容器進(jìn)行查詢的問題的文章就介紹到這了,更多相關(guān)Python連接Cassandra內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python2.7+pytesser實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的識(shí)別方法
這篇文章主要介紹了Python2.7+pytesser實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的識(shí)別方法,簡(jiǎn)單分析了pytesser的安裝及Python2.7環(huán)境下實(shí)現(xiàn)驗(yàn)證碼識(shí)別的相關(guān)操作技巧,需要的朋友可以參考下2017-12-12
打包Python代碼的常用方法實(shí)現(xiàn)程序exe應(yīng)用
Python是一門強(qiáng)大的編程語(yǔ)言,但在將Python代碼分享給其他人時(shí),讓他們安裝Python解釋器并運(yùn)行腳本可能有點(diǎn)繁瑣,這時(shí),將Python代碼打包成可執(zhí)行的應(yīng)用程序(.exe)可以大大簡(jiǎn)化這個(gè)過程,本文將介紹幾種常用的方法,輕松地將Python代碼變成獨(dú)立的可執(zhí)行文件2023-12-12
python3實(shí)現(xiàn)猜數(shù)字游戲
這篇文章主要為大家詳細(xì)介紹了python3實(shí)現(xiàn)猜數(shù)字游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06
pytorch模型訓(xùn)練的時(shí)候GPU使用率不高的問題
這篇文章主要介紹了pytorch模型訓(xùn)練的時(shí)候GPU使用率不高的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
一文教會(huì)你使用win10實(shí)現(xiàn)電腦的定時(shí)任務(wù)執(zhí)行
這篇文章主要介紹了一文教會(huì)你使用win10實(shí)現(xiàn)電腦的定時(shí)任務(wù)執(zhí)行,利用Windows任務(wù)計(jì)劃程序創(chuàng)建定時(shí)執(zhí)行自定義腳本的步驟,包括配置環(huán)境、編寫腳本、新建任務(wù)文件夾、設(shè)置觸發(fā)器、編輯任務(wù)信息以及手動(dòng)運(yùn)行測(cè)試,需要的朋友可以參考下2024-09-09
python 遞歸遍歷文件夾,并打印滿足條件的文件路徑實(shí)例
下面小編就為大家?guī)?lái)一篇python 遞歸遍歷文件夾,并打印滿足條件的文件路徑實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-08-08
淺談Python對(duì)內(nèi)存的使用(深淺拷貝)
這篇文章主要介紹了淺談Python對(duì)內(nèi)存的使用(深淺拷貝),具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01

