Django打造运维简单的IMS系统

原创 2016年08月28日 19:22:03

Django

学习资料

实战项目(CentOS 6.6 + Python 3.4.5 + Django 1.10)

部署Python

cd /usr/local/src/
wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tgz
tar xzvf Python-2.7.12.tgz
cd Python-2.7.12
./configure --prefix=/usr/local/python-2.7.12
make -j 4
make install

新建虚拟环境

# virtualenv -p /usr/local/python-2.7.12/bin/python2.7 /usr/local/scripts/iiotdjangovirtualenv -p /usr/local/python-3.4.5/bin/python3.4 /usr/local/scripts/python3.4iiotdjango

# alias djangoenv="source /usr/local/scripts/iiotdjango/bin/activate"

alias djangoenv="source /usr/local/scripts/python3.4iiotdjango/bin/activate"

source /usr/local/scripts/iiotdjango/bin/activate

安装Django

pip install django
yum install -y mysql-devel
pip install MySQL-pythonpython3 -m pip install pymysqlpip3 install mysqlclient
# apt-get install libmysqld-dev
# apt-get install libpython-dev
# 参考
http://stackoverflow.com/questions/23376103/python-3-4-0-with-mysql-database

数据库准备

yum install -y mysql-server
service mysqld restart
CREATE USER 'ops'@'localhost' IDENTIFIED BY '123123';GRANT ALL PRIVILEGES ON *.* TO 'ops'@'localhost';FLUSH PRIVILEGES;
CREATE USER 'ops'@'%' IDENTIFIED BY '123123';GRANT ALL PRIVILEGES ON *.* TO 'ops'@'%';FLUSH PRIVILEGES;
mysql -u root -p123123
create database iiot

Django调整

DB准备

python manage.py migratepython manage.py makemigrations
python manage.py createsuperuser

新建Project

django-admin startproject iiotdjango

新建APP

django-admin startapp ims

Models调整

from __future__ import unicode_literalsfrom django.db import modelsclass ims(models.Model): lanip = models.CharField(max_length = 100) password = models.CharField(max_length = 100) type = models.CharField(max_length = 100) className = models.CharField(max_length = 100) groupName = models.CharField(max_length = 100) jifang = models.CharField(max_length = 100) jigui = models.CharField(max_length = 100) beizhu = models.CharField(max_length = 100)

 def __str__(self): return self.lanipmodels的简单用法 https://docs.djangoproject.com/en/1.10/ref/models/fields/

admin.py调整

from django.contrib import admin
from ims.models import ims
class imsAdmin(admin.ModelAdmin):
 list_display=('lanip','password','type','className','groupName','jifang','jigui','suzhuji','beizhu')
 search_fields = ('lanip','password','type','className','groupName','jifang','jigui','suzhuji','beizhu')
admin.site.register(ims,imsAdmin)

settings.py 调整

  • APP的地方加入 “ims”

  • DB的地方


INSTALLED_APPS = (  'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog',)

运行


source /usr/local/scripts/python3.4iiotdjango/bin/activatepython manage.py runserver 0.0.0.0:8081

Nginx


server {
 listen 80;
 charset utf-8;
 server_name ims.ops.ac.cn;
 location / {
 proxy_pass http://127.0.0.1:8081;
 }
}

联合测试

采用USWGI

  • 安装
pip install uwsgi
  • 配置文件
# FileName : uwsgi.ini
[uwsgi]
socket = 127.0.0.1:3031
chdir = /usr/local/scripts/python34projectpiot
wsgi-file = ./python34projectpiot/
wsgi.pyprocesses = 4
threads = 2
stats = 127.0.0.1:9191
daemonize=/var/log/nginx/uwsgi.log
  • 运行
uwsgi uwsgi.ini
  • nginx 配置文件
upstream django { 
    server 127.0.0.1:3031;
}

server { 
    listen 80; 
    charset utf-8; 
    server_name ims.ops.ac.cn; 
    location / { 
        include uwsgi_params; 
        #proxy_set_header Host $host; 
        #proxy_pass http://127.0.0.1:8081; 
        #uwsgi_pass 127.0.0.1:3031; 
        uwsgi_pass django; 
    } 
    location /static { 
        root /usr/local/scripts/python3.4iiotdjango/lib/python3.4/site-packages/django/contrib/admin; 
    }
}
版权声明:更多精彩请关注 http://book.opschina.org, 或者加入QQ新群648503385,或者直接加微信:zzlyzq, 让天下没有难做的运维。

用python+django+twistd 开发一个属于自己的运维系统

开源的运维系统不少,比如nagios、zabbix、cati等等,但是遇到自己个性化的运维需求的时候,总是显的力不从心!最近在学习python,所以就考虑用python+django+twisted来...
  • qcpm1983
  • qcpm1983
  • 2014年07月09日 14:36
  • 13211

基于Django的网络运维管理系统的设计与实现

  • 2016年02月05日 09:00
  • 1.02MB
  • 下载

利用django和python构建网络运维平

前言     我主要从事的是网络维护,管理着数百台的网络设备。在最初的日子里,确实会手工一台一台敲命令,这种心酸往往只有经历过的人才能体会。往往工作半天就为了修改一条ACL,不仅效率低,还容易犯错。后...
  • alex_chen_16
  • alex_chen_16
  • 2016年02月08日 16:01
  • 6472

用python+django+twistd 开发一个属于自己的运维系统

开源的运维系统不少,比如nagios、zabbix、cati等等,但是遇到自己个性化的运维需求的时候,总是显的力不从心!最近在学习python,所以就考虑用python+django+twisted来...
  • qcpm1983
  • qcpm1983
  • 2014年07月09日 14:36
  • 13211

利用django和python构建网络运维平

前言     我主要从事的是网络维护,管理着数百台的网络设备。在最初的日子里,确实会手工一台一台敲命令,这种心酸往往只有经历过的人才能体会。往往工作半天就为了修改一条ACL,不仅效率低,还容易犯错。后...
  • alex_chen_16
  • alex_chen_16
  • 2016年02月08日 16:01
  • 6472

Django搭建管理平台

搭建Mac(linux)下Django框架安装python3.5注意:django的最新版本必须依赖python3。 mac下原先的python版本比较老2.7版本的,上官网直接下载python3....
  • zly9923218
  • zly9923218
  • 2016年08月29日 16:45
  • 2715

用python+django+twistd 开发一个属于自己的运维系统

开源的运维系统不少,比如nagios、zabbix、cati等等,但是遇到自己个性化的运维需求的时候,总是显的力不从心!最近在学习python,所以就考虑用python+django+twisted来...
  • qcpm1983
  • qcpm1983
  • 2014年07月09日 14:36
  • 13211

Linux运维笔记----管理系统中的简单分区和文件系统

管理系统中的简单分区和文件系统1.什么是mbr?什么是mpt?一个主分区使用多大分区表记录?分区类型?*mbr,即主引导记录,是对IBM兼容机的硬盘或者可移动磁盘分区时,在驱动器最前端的一段引导扇区,...
  • men_wen
  • men_wen
  • 2016年09月08日 20:57
  • 693

运维自动化之使用PHP+MYSQL+SHELL打造私有监控系统

http://dl528888.blog.51cto.com/2382721/1034992   前言 记得刚来这家公司的时候,我部门就我一个运维工程师,然后就是经理,刚开始公司平台什么监控都没...
  • nosodeep
  • nosodeep
  • 2012年11月02日 14:50
  • 677

Django开发运维后台(四):几个ArchiveView的使用

时间 2014-07-15 16:20:54  运维笔记-51CTO技术博客 原文  http://lihuipeng.blog.51cto.com/3064864/1438479 ...
  • oMingZi12345678
  • oMingZi12345678
  • 2014年10月30日 16:59
  • 781
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Django打造运维简单的IMS系统
举报原因:
原因补充:

(最多只允许输入30个字)