Django + Ansible 主机管理(有源码)
本文给大家介绍如何利用 Django + Ansible 进行 Web 项目管理。
Django介绍
一个可以使 Web 开发工作愉快并且高效的 Web 开发框架,能够以最小的代价构建和维护高质量的 Web 应用。
所谓框架就是软件开发工程师从日常的重复劳动中总结出快速的、模块化的、安全的软件开发模式。
开发语言
Python
设计思想
MVC 与 ORM 计思想
MVC
M 模型 model
V 视图 view
C 控制器 controller
从下图中我们可以清晰形象的看出何为MVC设计模式:

在 Django 中的 MTV
M 模型 Model
- 进行业务逻辑判断和数据存取
T 模板 Template
- 将数据展示给用户
V 视图 View
- 将用户请求数据传递给 Model
- 将 Model 返回的数据传递给 Template
URLS
- 用于配置 url 和 view 处理对应关系
- 注:url 都使用/结尾配置
ORM
全称:Object Relation Mapping(关系对象映射)
- 用来把对象模型表示的对象映射到基于 SQL 的关系模型数据库结构中去
在具体的操作实体对象的时候,就不需要再去和复杂的 SQL 语句打交道,只需简单的操作实体对象的属性和方法
Ansible介绍
ansible 是一套自动化运维工具,基于 Python 开发,实现了批量系统配置、批量程序部署、批量运行命令等功能。
学习流程
- 安装
- 管理协议
- 配置
- ad-hoc
- playbook
- python api
安装
控制机器
pip install ansible== yum install sshpass
受控机器
yum install libselinux-python yum install python2-simplejson(version < python2.)
测试
echo localhost ansible_connection=local > hosts ansible all -m ping -i hosts
管理协议
ansible 通过 ssh 协议对受控机器管理, 可使用口令和密钥对两种方式进行权限验证, 默认使用密钥对方式
在控制机器生成秘钥对
ssh-keygen -t rsa -b -C "kk"
添加到公钥到受控机器
远程拷贝添加
ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
本地添加
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
测试
ssh root@xxx.xxx.xxx.xxx echo xxx.xxx.xxx.xxx >> hosts ansible all -m ping -i hosts
python api
- 剧本&变量
- playbook
- 命令行选项
- https://docs.ansible.com/ansible/latest/dev_guide/developing_api.html#python-api-example
整理资料
- https://www.jianshu.com/p/1657f05e1f56
- https://raw.githubusercontent.com/imsilence/ansible-doc/master/docs/ansible.png
关于 Django + Ansible 主机管理本来准备了很多东西要和大家,后来觉得还不如开个直博现场和大家分享,我知道很多人学习一样新东西的时候都死在了配环境上面了,没有人手把手指导怎么使用真的很绝望,因此在2018-11-29(周四)21:00-22:00,kk老师会直播给大家详细讲解 Django + Ansible,所谓技多不压身,想从事 web 开发的同学一定要去看一下呀!!!
2018-11-29(周四)21:00-22:00
将由我们的 KK 老师为我们详细解说《Django + Ansible 主机管理》
KK老师:
多语言混搭开发工程师,多年 PHP、Python 项目开发经验,曾就职 360、绿盟科技,7年工作经验。擅长于 Web 安全开发、性能优化、分布式应用开发&设计等多方面,51Reboot 金牌讲师。
具体参与方式:扫码添加小助手 备注:公开课 拉入直播分享群
Django + Ansible 主机管理(有源码)的更多相关文章
- Jquery+Ajax+asp.net+sqlserver-编写的通用邮件管理(有源码)
开始 邮件管理通常用在各个内部系统中,为了方便快捷的使用现有的代码开发一个邮件管理系统而诞生的. 准备条件 这是我的设计表结构,大家一看就懂了 --邮件接收表CREATE TABLE [dbo].[T ...
- 【django小练习之主机管理界面】
需求: 利用django,js,bootstrap等实现登录,主机管理等操作. 实现截图 登录界面 主机界面,添加及编辑 部门管理界面 代码实现 目录层级 settings.py "&quo ...
- Ansible状态管理
转载自:http://xdays.me/ansible状态管理.html 简介 就像所有服务器批量管理工具(puppet有DSL,salt有state)一样,ansible也有自己的状态管理组件 ...
- eclipse导入已有源码
http://blog.csdn.net/scruffybear/article/details/1917301 如有转载,请注明出处,并保持文章的完整性,谢谢! 最近工作之余在研究国外经典书籍< ...
- Django ORM 查询管理器
Django ORM 查询管理器 ORM 查询管理器 对于 ORM 定义: 对象关系映射, Object Relational Mapping, ORM, 是一种程序设计技术,用于实现面向对象编程语言 ...
- Shiro 核心功能案例讲解 基于SpringBoot 有源码
Shiro 核心功能案例讲解 基于SpringBoot 有源码 从实战中学习Shiro的用法.本章使用SpringBoot快速搭建项目.整合SiteMesh框架布局页面.整合Shiro框架实现用身份认 ...
- saltstack主机管理项目:主机管理项目架构设计(二)
1.salt架构图 https://docs.saltstack.com/en/getstarted/system/plugins.html plug-ins(左边):场景可插拔 subsystem- ...
- 六.ansible批量管理服务
期中集群架构-第六章-ansible批量管理服务介绍====================================================================== 01. ...
- Ansible 批量管理Windows Server服务器
Ansible批量管理Windows Server Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具, 它用Python写成,类似于saltstack和Puppe ...
随机推荐
- Linux rpm命令详解
rpm命令是RPM软件包的管理工具.rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎.逐渐受到其他发行版的采用.RPM ...
- 使用yii AR 完成单个表的CURD操作
什么是AR(ActiveRecord) Active Record (活动记录,以下简称AR)提供了一个面向对象的接口, 用以访问数据库中的数据.一个 AR 类关联一张数据表, 每个 AR 对象对应表 ...
- 鸟哥私房菜vim常用命令
第一部份:一般模式可用的按钮说明,光标移动.复制贴上.搜寻取代等 移动光标的方法 h 或 向左箭头键(←) 光标向左移动一个字符 j 或 向下箭头键(↓) 光标向下移动一个字符 k 或 向上箭头键(↑ ...
- Hadoop HBase概念学习系列之模式设计(十)
Hbase与RDBMS的区别在于:HBase的Cell(每条数据记录中的数据项)是具有版本描述的(versioned),行是有序的,列(qualifier)在所属列簇(Column familie ...
- 使用 FRP 反向代理实现 Windows 远程连接
互联网普及率的日渐攀升与 IPv4 资源的持续减少,现在大部分家庭宽带都不会分配公网 IP ,这使一些网络应用的实现多了些困难,像个人的 NAS 和一些智能家居设备.对于分配公网 IP ,各地运营商的 ...
- Spring 利用PropertyPlaceholderConfigurer占位符
Hey Girl 博客园 首页 博问 闪存 新随笔 订阅 管理 posts - 42, comments - 3, trackbacks - 0 Sp ...
- SGU---102 欧拉函数
题目链接: https://cn.vjudge.net/problem/SGU-102#author=0 题目大意: 求解小于等于N的且与N互质的数字有多少个 解题思路: 直接求欧拉函数即可 关于欧拉 ...
- 学习python第三天单行函数
1.去重:distinct关键字 需求:查看公司一共有多少部门? select department_id from employees;此代码会查出107条记录,存在部门重复的问题! select ...
- jdk8环境下,添加重复注解的美好体验
为了实现业务层缓存,定义了几个注解:@Cache.able.@Cache.put.@Cache.del 分别实现对业务方法的 缓存检测.缓存插入 和 缓存清除. public @interface C ...
- Day18 (二)反射
反射机制是什么 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java ...