自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 Django学习笔记4 解决Django时区设置问题(从官方文档到源码)

问题背景前段时间一直长期使用Django做一些项目开发,但因为时间比较紧,很多问题没有注意,比如库表中的时间戳一直使用的都是UTC时间,而在中国的话我们使用UTC+8时间才顺眼呀(比如现在是北京时间14:57那么UTC时间就是6:57)。明眼人一看这就是个小到不能再小的问题,但我在查阅完官方文档后竟然还是一脸懵逼,而且最终解决问题花费了将近一个半小时。问题现场...

2018-08-20 13:15:14 1298 2

原创 Linux内核学习笔记1--使用docker搭建内核编译环境

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-08-05 17:39:00 6397 4

原创 前端学习--实现二维码识别功能

概述:最近所做的毕设项目正好与之前很火的共享单车相关,共享单车应用中很关键的一个部分就是扫码用车,但我之前没有做过相关的模块,在参考网上相关实现的教程时发现,基本上所有的二维码识别模块都是通过客户端来完成的很少有通过前端技术实现。令我很苦恼。但是功夫不负有心人,查阅过大量资料后我在github上找到了一个用js实现二维码扫描的库(https://github.com/LazarSo...

2018-04-26 14:55:37 11470 22

原创 Django学习笔记3 Django项目静态文件(html,css,js)部署---理解STATIC_URL、STATICFILES_DIR、STATIC_ROOT

概述:大家在Django项目的开发过程中,一定会为静态文件的部署感受到过困惑,本文章基于Django官方文档中两篇关于静态文件的文章(Managing static files和Deploying static files¶)并结合我自己开发过程的实践经验来讲解。 Django版本:1.11手动解决开发环境下静态文件部署问题 我们首先创建了一个Django proje...

2018-03-23 20:50:34 4033 2

原创 前端调试--外层div导致的部分页面无法显示

概述最近因为做毕业设计的原因不擅长前端开发的我也在硬着头皮写着html,css,js。之后会发一些与前端相关的文章。因为毕设是两个人一起完成,就设计到合作开发的问题,本次问题是我们在对前端代码进行重构后发生的,导致前端页面一直无法显示。重现正常前端界面: 重构后界面: 出现问题后仔细思考重构后都做了什么,但是只能通过比对两个文件的方式去看,速度很慢,并且误以为是百度ap...

2018-03-19 14:11:36 930 1

原创 Django学习笔记2 【自定义你的admin】

一.概述本章内容为根据自己课设项目所需要的后台管理部分进行各种配置,所设置的admin配置知识在django官网中的1.11文档部分均可找到,写这篇的目的是为了优化django admin的使用。环境说明: Django:1.11 python版本:3.4.4 操作系统:win10_1709_pro二.表结构数据库的表结构非常简单如下 bikedata表:+----...

2018-02-11 13:15:47 1037 1

原创 linux0.11源码阅读笔记1-启动流程-bootsect.s

一.概述:源码阅读笔记是一个新的系列,也是自己在沉淀一段时间后的新发现,开始对linux底层的一次新探索。这个系列的每一节基本上都会是一个linux0.11的源代码文件,并附上我自己的理解与这些源码所涉及的知识点。本节的主角是linux0.11中涉及启动流程的部分,源代码部分是bootsect.s。二.bootsect.s流程图与功能分析这个流程图不是很严谨,因为ok_load_setup部分并不是

2017-11-06 15:54:09 1133 1

原创 Django学习笔记1 [路由机制,数据库orm,模板语言]

概述:主要总结Django的一些基本操作,与使用过程中出现的问题,使用的Django版本是1.11.2,开发平台是win10。本次涵盖的内容有url路由机制,orm(对象关系映射),模板语言(增加前后端的交互),基本有了这些就可以完成一个简单的webapp了。Django路由机制路由机制例子例子解读二数据库ormorm建表sql语句例子orm例子原理解释使用orm对数据库进行增删改查

2017-06-19 15:57:05 1061

原创 docker实战2 (docker swarm的应用,docker集群的构建,在docker集群中部署服务的创建与更新)

前言:在之前曾写过一个关于docker集群创建的教程,但是不够深入,只是停留到集群的初始化和节点加入上,这次具体到服务,并详细讲解其中的原理。而且总结了很多自己做的过程中所踩过的很多坑(比如镜像的digest问题)。在查阅资料的过程还了解到了谷歌的kubernetes和swarm是一个类似的东西,准备在之后开一篇入门的坑,毕竟谷歌的东西还是很有意思的。集群拓扑: Linux版本:Red Hat

2017-06-01 22:34:13 5311

原创 docker实战1 (docker-toolbox的安装,docker基础命令详解[运行,容器导入/导出,镜像导入/导出,数据卷,网络],构建100个docker实例的测试环境)

前言:docker是一门很火的开源技术,发展迅速,而且很有前景。本次新开的docker实战是继运维笔记后的一个新尝试,尽本人所能,写出自己学习使用docker时候的体会。本次的docker系列会采用docker-ce(17之后的版本)基本上就是最新的docker版本来测试,目的是多踩坑,能让大家遇到问题时有个参考。本博客的参考主要来源仍然是docker官方文档,还是那句话,看官方文档不踩坑。本次第一

2017-05-18 17:15:30 6840 2

原创 运维笔记44 docker-ce swarm搭建(rhel7.3+docker-machine+docker-ce-17.03.0)

概述:docker今年搞出了个大新闻,3月份docker分成了docker-ce,docker-ee,分别是社区版和企业版,这一举动可以看出docker商业化的野心(是时候割麦子了。。。),本次的主角是docker swarm也就是docker集群,而且使用的是非常新的docker版本(其实是因为新的docker版本将swarm融合进了docker-engine中)。环境准备: 因为docker是

2017-05-05 17:50:16 1023 1

原创 运维笔记43 使用saltstack配置完整线上服务(haproxy+keepalived,nginx+php+memcache,mysql主从)

概述:之前我们所介绍过了很多实用的服务,有负载均衡类的,web服务类的,数据库类的等等,这些服务有的配置容易,有的配置困难,那我们现在设想一下在生成环境中,有上百台,甚至上千台服务器的情况下,难道要我们去挨个去配置每一台服务器吗,这是无法想象的,所以有了saltstack这类自动化运维工具的出现,帮助我们高效快速的部署服务。线上服务拓扑 这次的拓扑基本上已经可以胜任一个相当活跃的服务的后端架构了

2017-04-26 22:19:12 2679

原创 运维笔记41 zabbix3.2监控搭建(rhel6.5+nginx0.7+mysql5.7+php5.6+rpm安装的zabbix3.2带详细排错过程)

系统拓扑: zabbix服务器环境: 系统版本:Red Hat Enterprise Linux Server release 6.5 (Santiago) nginx版本: nginx-0.7.69 mysql版本:mysql Ver 14.14 Distrib 5.7.18 php版本:PHP 5.6.30概述:平常搭建的时候可能只是使用了系统自带的lamp版本,这次lnmp环境使用

2017-04-17 19:46:39 4940

原创 运维笔记40 Linux系统监控之Cacti(Cacti搭建,自动抓取cacti统计图片脚本)

概述:监控系统在一个系统中十分重要,它会将很多重要的信息,诸如内存信息,cpu信息,硬盘信息集合在一起显示出来,当系统出现问题的时候我们能及时定位并修复错误。今天介绍的监控系统是一款轻量级的监控系统Cacti,并附有python编写的cacti统计图片采集脚本。Cacti版本:cacti-0.8.8h一 Cacti软件环境准备一切的配置都可在官方文档中找到[root@rs1 pub]# yum in

2017-04-09 00:19:11 1810

原创 运维笔记39 mysql5.7新特性(Mysql Group Replication)

概述: mysql5.7引入了一个很令人振奋的新特性,让mysql的主从复制更加方便简单,而且扫清了MySQL进入金融行业最后的障碍。集群拓扑: mysql版本: Ver 14.14 Distrib 5.7.17 发行版版本:Red Hat Enterprise Linux Server release 7.0 (Maipo)一.mysql5.7的yum安装(在systemd下

2017-04-08 00:26:44 1409

原创 运维笔记38 redis(redis的主从切换,主从自动切换)

概述:redis是一个kv存储,而且使用十分方便,配置也简单。这次主要介绍下redis的主从复制,与主从自动切换。 框图: 一.redis的简单配置redis的源码安装十分方便,只需要执行make && make install接下来对执行redis的配置脚本,用于设置配置文件所放的位置,监听端口号等。 现在redis基本就可以使用了二.redis的主从复制只用在/etc/redis/your

2017-04-02 23:55:05 890

原创 运维笔记37 mysql主从自动切换(keepalived+自制脚本)

概述:keepalived是一个非常灵活的高可用解决方案,因其对端口检测的特性,让他基本可以完成基本所有服务的高可用,但就是因为灵活导致你自己需要配置的就非常多,最主要的地方就是针对不同的地方自己编写不同的脚本。 集群拓扑: mysql版本:Ver 14.14 Distrib 5.7.11 keepalived版本:Keepalived v1.2.24 (03/30,2017) 集群描述

2017-04-02 00:39:14 4568

原创 运维笔记36 mysql的一主多从模型(原始主从复制,基于GTID主从复制)

概述:mysql的主从复制是十分经典的一个应用,但是主从之间总会有数据一致性(data consistency )的问题,一般情况从库会落后主库几个小时,而且在传统一主多从(mysql5.6之前)的模型中当master down掉后,我们不只是需要将一个slave提成master就可以,还要将其他slave的同步目的地从以前的master改成现在master,而且bin-log的序号和偏移量也要去查

2017-03-28 17:04:38 950

原创 运维笔记35-web应用实战 (nginx+memcached+tomcat)

系统发行版:Red Hat Enterprise Linux Server release 6.5 (Santiago) nginx版本:nginx-1.10.3.tar memcached版本:memcached-1.4.4-3.el6 tomcat:apache-tomcat-7.0.37系统框图: ha1上使用ha2的memcached,只有当ha2不可用的时候才使用ha1上的meca

2017-03-26 00:57:13 546

原创 运维笔记34 (lnmp+heartbeat高可用集群,drbd共享存储+Discuz论坛应用实战)

系统框图: 系统描述: 前端有一台web服务器,使用nginx作为web服务器,上面搭载Discuz论坛,是一个广泛使用的php开发的论坛,所以php在该服务器上也是必须的,而且是添加了memory cache(功能与redis类似)模块后的php。 后端两台是mysql数据库的双机高可用,使用的集群软件是heartbeat,使用的存储是drbd分布式存储,heartbeat和drbd集合

2017-03-23 17:23:42 806

原创 mysql5.7无法启动错误解决!(因源码编译时的疏忽引起的血案。。。)

mysql版本 : mysql Ver 14.14 Distrib 5.7.11, for Linux (x86_64) using EditLine wrapper 操作系统版本:Red Hat Enterprise Linux Server release 6.5 (Santiago) 问题详细描述:博主手动编译了mysql的源码包,解决了依赖,一切正常没有报错,之后将/usr/loca

2017-03-21 11:52:07 8220 2

原创 运维笔记33 (haproxy的配置,pacemaker高可用+haproxy)

概述:之前的博客中提到的一种负载均衡方式是lvs,lvs的配置简单,减少了认为出错的概率,而且软件处在tcp/ip协议栈的第四层,可以对各种web应用服务,但是因为本身不支持正则表达式处理,不能做动静分离。那么今天的haproxy的优势就体现出来了,能够支持虚拟机主机,并且实现了动静分离,url重定向等等大型网站需要的功能。系统环境:Red Hat Enterprise Linux Server r

2017-03-18 23:46:19 2654

原创 ##python读取大文件的机制

概述:最近经常听别人的面试题目是读取一个大文件,然后出来读取到的字符串,比如某串的个数了,某串的出现频率之类的,和朋友聊天过程中决定用不同的语言比个赛,分别是c,python,shell。我原本以为c语言一定会获胜(毕竟以效率著称),但结果却是python完胜而且是数量级上的完胜,正当我感叹python大法好时。。。题目: 现给一个文件400M(该文件是由/etc/passwd生成的),统计其中r

2017-03-14 21:54:43 1994 2

原创 运维笔记32 (mysql的主从复制)

概述:前面一直讲高可用集群,但是没有讲高可用集群所真正服务的主角--数据库。互联网的基础之基础就是数据,数据库的高可用技术也正是一个运维人员必不可少的技能。本次集群拓扑:内核版本:2.6.32-431.el6.x86_64发行版:Red Hat Enterprise Linux Server release 6.5 (Santiago)mysql版本:mysql  Ver

2017-03-09 22:45:46 528

原创 运维笔记31 (pacemaker高可用集群搭建的总结)

概述:          pacemaker是heartbeat到了v3版本后拆分出来的资源管理器,所以pacemaker并不提供心跳信息,我们这个集群还需要corosync(心跳信息)的支持才算完整。pacemaker的功能是管理整个HA的控制中心,客户端通过pacemaker来配置管理整个集群。还有一款帮助我们自动生成配置文件,并且进行节点配置文件同步的crmshell是我们搭建集群的时候

2017-03-01 13:36:12 6380

原创 运维笔记30 (lvs负载均衡的(nat,tun,dr三种模式,ldirectord健康检测,ldirectord结合heartbeat)keepalived+lvs介绍)

概述:          lvs负载均衡是一个虚拟服务器集群项目,无论是哪一种lvs结构都需要一个前端的调度器,让原本应该直接访问真实服务器的网络请求经过该调度器,让该调度器去决定该请求应该由谁处理。根据调度器将网络请求分配到真正服务器的不同方式,基本分成了三种模式--nat,tun,dr,还有一种需要对内核添加功能的模式是fullnat,但这次我们先不介绍这个模式。1.三种模式的介绍

2017-02-27 15:42:38 1683 1

原创 运维笔记29 (高可用集群之heartbeat+drbd+mysql)

概述:          上一次所介绍的高可用集群是红帽系列自带的一个套件,具有web界面对于刚接触高可用集群的人有很友好,但也有一个问题,就是当集群出现一些问题无法工作的时候光靠那个web界面一般不能解决什么,所以这次回归本源,纯手动配置这个高可用集群heartbeat。所使用的存储是drbd,搭载服务是mysql,mysql服务和别的服务搭载起来可是有一定不同的。环境:两台rhel6.5

2017-02-17 16:08:32 1062 1

原创 运维笔记28 (在集群上部署ip,http,存储等)

概述:       之前我们已经将集群假设好了,也部署了fence断电管理,就差把服务放上去跑跑了,我们以http服务为例子,我们的这个服务需要的资源有ip,存储,服务软件,将这些部署到集群上之后,我们再测试一下我们部署的服务是不是高可用,今天的部署主要在web界面上进行。1.添加切换服务的域选择Add,添加一个域首先定义名字,接下来的三个选项分别是按照结点优先级去进行服务

2017-02-15 17:37:23 655

原创 运维笔记27 (搭建高可用集群管理软件(HA套件),配置虚拟fence断电管理)

概述:      我们使用yum源自带的HighAvailability软件,进行集群的部署,而且这个套件自带web的图形管理界面,作为第一个尝试的集群管理软件是非常好入门的,但是要注意把集群机器的yum源配置好,下面进行介绍。集群拓扑图:       1.集群管理软件的安装在安装软件之前,先配置好各个集群的网络,主机名字,yum源等。这是第一台的网络配置文件,也就

2017-02-15 15:34:01 2193

原创 运维笔记26 (高可用集群配置的准备工作--虚拟机母盘包装与镜像创建)

概述:          我们配置高可用集群(HighAvailability)的环境选择rehl6.5,所使用的软件包在光盘自带的yum源中均拥有;硬件条件,一般的朋友在自己家中应该无法凑齐多台主机而且还可以随意安装系统的,这时候虚拟机就解决了我们的燃眉之急,顺便复习一下之前的虚拟机操作。1.虚拟机主盘的创建          有两种方法,创建这个虚拟机主盘,一种是命令方式,一种是图

2017-02-15 11:23:58 663 1

原创 mariadb的python连接,远程连接,字符编码问题总结

概述:在学习python web的时候数据库和python的连接是一个很重要的地方,但是在windows安装mariadb的时候遇到了一些问题,最终选择远程连接红帽上的数据库,发现这样也十分方便,在使用过程中还遇到了诸如中文无法写入数据库的问题,这里进行一下总结。1.python连接mariadbmariadb本来就是mysql的一个分支,所以基本方法和mysql连接python是一样

2017-02-07 18:07:21 1928

原创 python字符编码问题的总结

概述:以前刚学python时候遇到了一些关于字符编码的奇怪问题,没有仔细研究,而且为了避免这个问题就全用英文了,但是今天开始写的程序需要抓取网页上的中文,解析下来后字符编码的问题又回来了,而且比以前来的更猛烈,程序崩溃的哗啦呼啦的。所以抽出了很长时间,仔细的研究了一下,希望看到文章的同学也能不再为字符编码的问题困扰。充斥在网络上的信息无数,但他们都逃不出要被编码的命运,在国内的网络环境下,我们

2017-01-19 23:42:55 539 1

原创 运维笔记25 (桥接,bond,team等网络配置)

概述:如果常用虚拟机的小伙伴对桥接不会陌生的,一般大家想让虚拟机和真机通信的时候都会选择桥接模式,如果想虚拟机上网的时候会选择nat模式(这里不详细讲解nat模式);bond是将两块网卡绑定到一起,如果一块做成负载均衡的模式,或者作为一块网卡的备用网卡来使用;team可以理解成bond的加强版本,将多块网卡绑定到一起成为一个team。1.bridge桥接1.1文件的配置方法/etc

2016-12-19 17:54:10 3098

原创 运维笔记24 (iscsi的基本配置)

概述:看到iscsi的时候大家是不是很熟悉呀,有一种硬盘技术叫scsi(small computer system interface),而且是服务器常使用的磁盘技术;iscsi(internet small computer system interface)这个i就是网络的意思是一种新型的存储技术,将scsi技术与以太网结合起来,使服务器可与使用IP网络的储存装置互相交换资料。1.is

2016-12-18 20:44:52 597 1

原创 运维笔记23 (shell脚本,expect的简易用法)

概述:shell是我们和linux接触的通道,灵活使用使用shell就能更好的掌控linux,想学好shell首先是要理解熟记很多的命令,这就相当于英语积累的单词一样,单词记得多了,英语自然就好了,但是想要真正变成英语达人还要了解些语法,shell也是一样,命令是单词,也有他的语法,我们这次主要讨论语法部分。 expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人

2016-12-14 17:33:43 3027

原创 运维笔记22 (apache的基本配置,静态网页,动态cgi,论坛搭建,squid实现正向,反向代理,简易cdn加速)

概述:今天说的这个服务可以说是重中之重,他是互联网时代使用最多的一个服务,就是为人们提供网页的服务http。http服务器有很多比如apache,nginx,tomcat等。今天的主角是apache,也是使用最多的一个http服务器,也是著名的lamp中的一环。1.http配置的帮助文件我们可以下载httpd-manual来查看,也可以登陆apache的官网查看httpd的配置文件的配

2016-12-09 21:56:51 2402

原创 运维笔记21 (邮件服务器的搭建)

概述:1.邮件服务器的搭建

2016-12-09 16:40:59 9641

原创 tcp/ip详解笔记(第8章 Traceroute)

概述:为了了解计算机网络,我开始刷《tcp/ip详解》这部圣经,以此博客来记录阅读过程中的一些感悟,和习题的解答(主要),很可惜是从第八章开始,如果有机会,慢慢把前七章补完。习题:8.1当IP将收到的TTL字段减1,发现它为0时,将会发生什么结果。我总觉的自己看书的理解能力有问题,而且还较真,我所理解的这个问题的原意思是,IP收到,就是路由器收到了一个TTL为1的字段,然后TTL减

2016-12-04 18:18:13 1068 1

原创 运维笔记20 (mariaDB的基础语句)

概述:LAMP架构盛极一时,这离不开MySQL的免费与易用,但是在Oracle收购了Sun之后,很多公司开始担忧MySQL的开源前景,而最近Oracle进一步闭源的举措更是让人难以安心,众多互联网公司纷纷开始寻求MySQL的替代方案。mariaDB原是mysql的一个分支,在mysql创始人加入后,更加吸引了大众的目光。1.安装mariaDB我们一直使用的RHEL7的自带yum源已经有了m

2016-11-29 21:19:00 1865

原创 运维笔记19 (DNS服务器bind的相关配置,主从DNS服务器,动态域名解析的简单配置)

概述:DNS在互联网上是一个相当重要的应用层协议,他的功能很简单,就是将点分十进制ip地址,转化成我们比较好记忆的字符串,比如www.baidu.com,既然这个这么有用,那么这次我们就来看一下DNS服务器如何搭建。1.dns高速缓存服务器这个服务器应该是日常生活中接触最多的一个服务器,因为我们的无线路由器就具有这个功能,将你访问过的网页的链接和ip有一个对应,记录在缓存中,这

2016-11-24 12:29:12 1610 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除