Board logo

标题: ceph监控仪表盘(3) [打印本页]

作者: look_w    时间: 2019-5-16 20:04     标题: ceph监控仪表盘(3)

启动kraken

需要把命令复制到与krakendash目录并列的目录中,否则会报错

python: can't open file 'krakendash/manage.py': [Errno 2] No such file or directory


使用命令如下:

cd /kraken
sudo cp ./krakendash/contrib/*.sh .
sudo ./api.sh
sudo ./django.sh



可以查看当前目录中的kraken.log是否有异常输出。
可能遇到的问题

检查requirements.txt中的依赖是否下载安装完毕。
如果上面使用安装了python3.5,则需要先把默认的python程序修改成3.5版本才能引用到安装的依赖库。
否则会报错

ImportError: No module named mathfilters



解决方法使用以下命令:
完成设置默认python版本需要两步:
分别更改/usr/local/bin/python和/usr/bin/python的指向

sudo rm /usr/local/bin/python
sudo rm /usr/bin/python
sudo ln -s /usr/local/bin/python3.5 /usr/local/bin/python  
sudo ln -s /usr/local/bin/python3.5 /usr/bin/python



可能遇到错误

  File "/kraken/krakendash/kraken/urls.py", line 1, in <module>
    from django.conf.urls import patterns, include, url
ImportError: cannot import name 'patterns'



原因是patterns()从Django1.8开始就已经被废弃,Django1.10把它移除,所以报导入patterns错误。我们注意到上面自动安装的依赖Django是2.6
解决方法:
Django版本降低到1.8

pip install Django==1.8


查看屏幕是否启动

ps -ef | grep -i screen
[zzq@k8s kraken]$ ps -ef | grep -i screen
root       3576      1  0 14:52 ?        00:00:00 SCREEN -dmS api ceph-rest-api -c /etc/ceph/ceph.conf --cluster ceph -i admin
zzq       18316  18199  0 21:54 pts/0    00:00:00 grep -i screen

ps -ef | grep -i 8000
[zzq@k8s kraken]$ ps -ef | grep -i 8000
root      18301      1  0 21:53 pts/0    00:00:00 python krakendash/manage.py runserver 0.0.0.0:8000
root      18303  18301  0 21:53 pts/0    00:00:01 /usr/bin/python krakendash/manage.py runserver 0.0.0.0:8000
zzq       18328  18199  0 21:56 pts/0    00:00:00 grep -i 8000



则可以在安装服务的本机浏览器中链接访问如下:

http://localhost:8000



设置django非本机可访问

如果想要在其他内网机子上访问则需要重新设置django的配置。

关闭防火墙

service iptables stop  



开启django时,使用0.0.0.0:xxxx,作为ip和端口例如:

python manage.py runserver 0.0.0.0:8000



创建settings文件

cat krakendash/manage.py



可以看到传入的配置文件名

cd krakendash/
vi kraken.settings
#输入内容
ALLOWED_HOSTS = ['*',]
#注意不要漏掉逗号



查出服务pid

[root@k8s krakendash]# ps -ef|grep 8000
root      18301      1  0 21:53 pts/0    00:00:00 python krakendash/manage.py runserver 0.0.0.0:8000
root      18303  18301  0 21:53 pts/0    00:00:12 /usr/bin/python krakendash/manage.py runserver 0.0.0.0:8000
root      18562  18537  0 22:32 pts/0    00:00:00 grep 8000


杀掉进程重新启动

sudo kill 18301
sudo kill 18303
cd /kraken
sudo ./django.sh



其他机器就可以通过这台机器的ip和端口号访问django了。
比如安装此服务的服务器是192.168.30.80,访问地址如下:

http://192.168.30.80:8000



如果报错404可以尝试加上项目名

http://192.168.199.80:8000/krakendash




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0