自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(147)
  • 资源 (1)
  • 收藏
  • 关注

原创 【Linux40-2】MySQL简介及源码安装

文章目录一、简介1.1 系统特性1.2 存储引擎二、部署一、简介MySQL是一种关系型数据库管理系统,关系型数据库的特点是将数据保存在不同的表中,在将这些表放入不同的数据库中,而不是将所有数据统一放在一个大仓库里,这样的设计增加了MySQL的读取速度,灵活性和可管理型也得到了很大提高,访问以及管理MySQL数据库的最常用标准化语言为SQL结构化查询语句。特点:(1) MySQL性能卓越、服务稳定,很少出现异常宕机(2) MySQL开放源代码且无版权制约,自主性及使用成本低(3) MyS

2021-04-01 00:21:03 474 1

原创 【Linux40-1】nginx简介及源码安装、常用命令

文章目录一、nginx简介1.1 Nginx介绍1.2 代理服务器1.2.1 反向代理1.2.2 正向代理1.2.3 反向代理和正向代理的区别1.3 Nginx优势1.4 Nginx和Apache比较二、源码安装nginx三、常用命令一、nginx简介1.1 Nginx介绍Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器。其特点是占有内存少,并发能力强,事实上nginx

2021-03-31 00:52:51 286

原创 【Linux39-20】k8s包管理工具Helm(部署nginx、构建并管理上传 Charts)

文章目录一、Helm简介二、安装和配置Helm三、Helm使用3.1 三大概念3.2 常用命令四、部署nginx4.1 准备工作4.2 部署4.3 更新并回滚五、构建一个 Helm Chart5.1 创建Chart5.2 安装push插件并上传Chart5.3 部署chart应用到集群5.4 创建新版本Chart并管理一、Helm简介【Helm官网:https://helm.sh/docs/intro/】Helm是Kubernetes 应用的包管理工具,主要用来管理 Charts,类似Linux

2021-03-25 21:41:57 1037 1

原创 【Linux39-18】k8s之HPA(Horizontal Pod Autoscaler)的配置与使用(自动扩缩)

文章目录一、HPA 简介二、HPA 的配置与使用2.1 运行 php-apache 服务器并暴露服务2.2 创建HPA2.3 增加负载2.4 停止负载三、基于多项度量指标和自定义度量指标自动扩缩一、HPA 简介【HPA官方文档:https://kubernetes.io/zh/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/】Horizontal Pod Autoscaler 可以根据 CPU 利用率自动扩缩 Rep

2021-03-25 17:09:11 1279

原创 【Linux39-17】k8s容器资源监控(Metrics-Server部署、Dashboard可视化web界面部署)

文章目录一、metrics-server1.1 简介1.2 部署1.3 查看监控结果二、Dashboard 可视化监控1.1 简介1.2 部署2.3 监控测试2.4 创建与修改资源测试一、metrics-server1.1 简介【Metrics-server详情:https://github.com/kubernetes-sigs/metrics-server】Metrics-Server是集群核心监控数据的聚合器,用来替换之前的heapster。容器相关的 Metrics 主要来自于 k

2021-03-25 14:15:09 440

原创 【Linux39-16】k8s容器资源限制(cpu+内存)(LimitRange、ResourceQuota)

文章目录一、k8s容器资源限制1.1 内存限制1.2 cpu限制二、资源限制 LimitRange2.1 namespace的资源限制2.2 创建 pod 测试限制三、资源配额 ResourceQuota3.1 namespace 的资源配额3.2 pod 的配额【k8s容器资源限制:https://kubernetes.io/zh/docs/concepts/configuration/manage-resources-containers/#requests-and-limits】一、k8s容器

2021-03-25 08:51:58 1048

原创 【Linux39-15】k8s API 访问控制( sa+ua 认证、RBAC授权、准入控制)

文章目录一、Kubernetes API 访问控制1.1 认证1.2 授权1.3 准入控制二、认证2.1 serviceAccount 不安全示例2.2 创建 serviceAccount2.3 创建 userAccount三、RBAC授权(基于角色的访问控制)3.1 Role 及 RoleBinding 示例3.2 ClusterRole 示例3.2.1 RoleBinding(指定namespace授权)3.2.2 ClusterRoleBinding(跨集群授权)一、Kubernetes API

2021-03-24 14:22:37 727

原创 【Linux39-14】k8s集群调度与驱离(scheduling+Eviction)(节点分配、污点和容忍度)

文章目录一、Kubernetes 调度器1.1 kube-scheduler二、节点选择约束方式2.1 nodeName2.2 nodeSelector2.3 亲和性与反亲和性2.3.1 节点亲和性(nodeAffinity)2.3.2 pod 间亲和性与反亲和性三、污点和容忍度3.1 污点3.2 容忍度四、其他调度策略4.1 cordon 停止调度4.2 drain 驱逐节点4.3 delete 删除节点一、Kubernetes 调度器【集群调度官方文档:https://kubernetes.i

2021-03-24 00:07:18 787

原创 【Linux39-13】Kubernetes存储之使用 StatefulSet 部署 MySQL 主从集群

文章目录一、部署原理二、部署 MySQL2.1 一个 ConfigMap2.2 两个 Service2.3 一个 StatefulSet三、主从测试一、部署原理使用 StatefulSet 部署 MySQL 官方文档:https://kubernetes.io/zh/docs/tasks/run-application/run-replicated-stateful-application/二、部署 MySQLKubernetes 的集群:master:server2node:se

2021-03-22 20:55:36 183

原创 Django自动化资产扫描(4)----定时任务自动化检测数据(paramiko+celery)

文章目录八、定时扫描8.1 Django数据库模型8.2 配置文件8.3 设置定时任务8.4 路由配置8.5 视图函数8.6 后台Admin8.7 前端项目地址:https://gitee.com/sdsnzy/cmdb项目过程:Django自动化资产扫描----(1)项目简介并创建项目Django自动化资产扫描----(2)项目远程环境搭建Django自动化资产扫描(3)----存活探测(Nmap)、主机探测(Telnet)、ssh远程登陆(Paramiko)八、定时扫描8.1

2021-03-15 23:16:35 479 1

原创 Django自动化资产扫描(3)----存活探测(Nmap)、主机探测(Telnet)、ssh远程登陆(Paramiko)

文章目录五、存活探测 Nmap5.1 协议5.2 模块工具---Nmap5.3 Nmap 存活探测 项目示例六、主机探测 telnet(扫描ssh端口)6.1 原理6.2 项目实战七、ssh远程密码或密钥登陆(paramiko)7.1 paramiko简介7.2 项目实战项目地址:https://gitee.com/sdsnzy/cmdb项目过程:Django自动化资产扫描----(1)项目简介并创建项目Django自动化资产扫描----(2)项目远程环境搭建五、存活探测 Nmap

2021-03-15 22:36:15 1158 2

原创 Django自动化资产扫描----(2)项目远程环境搭建

四、项目环境搭建4.1 项目目录配置4.2 创建远程虚拟环境4.3 MySQL 远程数据库配置4.4 生产环境及Django数据库配置项目地址:https://gitee.com/sdsnzy/cmdb项目过程:Django自动化资产扫描----(1)项目简介并创建项目四、项目环境搭建4.1 项目目录配置1)克隆代码scp -r cmdb/ [email protected]:/root/2)添加目标主机配置3)设置总是更新(确保本地与远程测试同

2021-03-15 21:25:42 241

原创 【Python22】文件一致性检查(hashlib)

1. hashlib简介Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。hashlib详解:https://www.liaoxuefeng.com/wiki/1016959663602400/1017686752491744二、文件一致性检查import hashlibdef generate_md5(content): md5 = hashlib.md5(content.encode('utf-8

2021-03-14 20:02:32 559

原创 【Python21】文件内容差异对比(difflib模块)

文章目录一、difflib简介二、文件内容对比差异一、difflib简介difflib 为 python 的标准库模块,无需安装。用于对比文本之间的差异。并且支持输出可读性比较强的HTML文档,类似Linux系统的diff 命令。应用场景: 代码和配置文件差异对比。HtmlDiff 类的 make_file 方法可以生成美观的HTML文档。二、文件内容对比差异代码:import difflibdef diff(f1, f2): # 自动打开文件file1与file2

2021-03-14 11:03:56 307

原创 Django获取服务器信息系统设计----(3)cpu折线图表(Celery异步任务、定时任务)

sysinfo 使用 Django 框架和 psutil 开发的一个中文版 Linux 服务器信息查看应用,可查看的信息包括系统、CPU、内存、硬盘、进程、网络、登录用户等,同时可查看并导出部分数据的图表。

2021-03-14 00:25:47 445 1

原创 Django获取服务器信息系统设计----(2)展示首页信息、用户页显示、cpu信息(表格、Echarts饼图、折线图)

sysinfo 使用 Django 框架和 psutil 开发的一个中文版 Linux 服务器信息查看应用,可查看的信息包括系统、CPU、内存、硬盘、进程、网络、登录用户等,同时可查看并导出部分数据的图表。

2021-03-13 21:01:56 617

原创 Django获取服务器信息系统设计----(1)项目基本框架

项目简介:sysinfo 使用 Django 框架和 psutil 开发的一个中文版 Linux 服务器信息查看应用,可查看的信息包括系统、CPU、内存、硬盘、进程、网络、登录用户等,同时可查看并导出部分数据的图表。1. 创建项目1)创建项目:sysInfo2)创建app:hostpython manage.p

2021-03-13 20:01:28 398 1

原创 【python练习13】leetcode38. 外观数列(双指针法)

文章目录1. 题目2. 思路3. 解答1. 题目给定一个正整数 n ,输出外观数列的第 n 项。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。你可以将其视作是由递归公式定义的数字字符串序列:countAndSay(1) = “1”countAndSay(n) 是对 countAndSay(n-1) 的描述,然后转换成另一个数字字符串。前五项如下:1. 12. 113. 214. 12115. 111221第

2021-03-12 21:59:38 200

原创 【python练习12】leetcode21. 合并两个有序链表

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]提示:两个链表的节点数目范围是 [0, 50]-100 <= Node.val <= 100l1 和 l2

2021-03-12 18:21:50 136

原创 【python练习11】leetcode26.删除排序数组中的重复项(快慢指针法)

文章目录1. 题目2. 解答3. 小白解法1. 题目给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,2,2,

2021-03-12 14:08:57 162

原创 【Linux39-12】Kubernetes存储之 StatefulSet 控制器通过 Headless Service 管理Pod、扩容/缩容

文章目录1. StatefulSet 控制器简介2. 创建无存储 StatefulSet 示例2.1 创建 Headless service2.2 创建StatefulSet2.3 测试3. StatefulSet 写入存储示例3.1 创建 StatefulSet3.2 测试4. 扩容/缩容 StatefulSet1. StatefulSet 控制器简介StatefulSet 控制器官方文档:https://kubernetes.io/zh/docs/tutorials/stateful-appli

2021-03-11 00:33:00 431

原创 【Linux39-11】Kubernetes存储之StorageClass与动态pv

文章目录1. StorageClass 简介2. 动态卷3. NFS Client Provisioner4. 创建nfs类型的动态pv5. 使用默认StorageClass1. StorageClass 简介StirageClass官方文档StorageClass提供了一种描述存储类(class)的方法,不同的class可能会映射到不同的服务质量等级和备份策略或其他策略等。每个 StorageClass 都包含 provisioner、parameters 和 reclaimPolicy 字段

2021-03-10 20:38:20 192

原创 Django可重用注册系统项目----(1) 项目简介及功能展示

文章目录1. 项目简介2. 项目地址3. 数据库结构4. 项目应用技术5. 项目效果展示5.1 测试访问前端页面1. 项目简介基于Django3实现的通用用户登陆注册系统。实现功能:注册,登陆,登出,异步邮件发送,验证码确认等可重用注册系统2. 项目地址https://gitee.com/sdsnzy/login-register_zy:Django可重用注册系统项目3. 数据库结构用户表:字段类型约束描述nameCharFieldunique=True用户名passwordC

2021-03-09 21:47:55 113

原创 Django可重用注册系统项目----(5) 前端界面实现(首页、登陆页、注册页、确认请求页)

实现功能:注册,登陆,登出,异步邮件发送,验证码确认等可重用注册系统------前端界面实现(首页+登陆页+注册页+确认请求页)基于Bootstrap框架实现

2021-03-09 20:44:15 173

原创 Django可重用注册系统项目----(4)(登陆+登出+邮箱验证+验证码)函数实现及登陆注册页表单、密码加密、生成确认码、邮件发送

实现功能:注册,登陆,登出,异步邮件发送,验证码确认等可重用注册系统------函数功能实现+登陆注册页表单创建+加密+生成确认码+发送邮件

2021-03-09 20:29:37 731

原创 gitee仓库上传代码+克隆代码

文章目录1. 上传2. 克隆代码到本地1. 上传新建仓库: loginRegister_zy上传1.建立本地仓库与远程仓库的联系git remote add origin https://gitee.com/sdsnzy/login-register_zy.git2.首次上传(强制)git push --set-upstream origin master -f# 非首次上传git push2. 克隆代码到本地克隆示例网站:https://bitbucket.org/

2021-03-09 20:16:58 264

原创 Django可重用注册系统项目----(3) (创建项目、数据库、后台管理界面、测试邮件发送服务)

实现功能:注册,登陆,登出,异步邮件发送,验证码确认等可重用注册系统------数据库+后台管理界面实现+测试邮件发送

2021-03-09 19:19:38 121 1

原创 Django可重用注册系统项目----(2) 需求准备(git仓库、django-simple-captcha、邮件授权)

实现功能:注册,登陆,登出,异步邮件发送,验证码确认等可重用注册系统------git仓库+验证码服务准备+获取邮件授权码

2021-03-09 19:00:59 124

原创 【Linux39-10】Kubernetes存储之持久卷(pv)及持久卷声明(pvc)、nfs持久化存储

文章目录1. pv与pvc1.1 区别1.2 声明周期2. pv持久卷2.1 容量 capacity2.2 卷模式 volumeModes2.3 访问模式 accessModes2.4 类 storageClassName2.5 回收策略2.6 状态3. pvc4. nfs持久化存储示例1. pv与pvcpv持久卷之官方文档1.1 区别存储的管理是一个与计算实例的管理完全不同的问题。PersistentVolume 子系统为用户 和管理员提供了一组 API,将存储如何供应的细节从其如何被使用

2021-03-05 21:47:49 897 1

原创 windows10安装git详细教程(git-2.30.1-64-bit.exe)

文章目录1. 官网下载git2. 安装git3. 测试安装是否成功4. 自定义设置1. 官网下载git官网下载地址:https://git-scm.com/downloads2. 安装git1)双击安装包,显示如下:2)选择安装路径3)选择安装配置:4)选择开始菜单文件夹5)选择默认编辑器Use the Nano editor by default # 默认使用 Nano 编辑器Use Vim (The ubiquitous text editor) as G

2021-03-05 18:03:20 4644

原创 【Linux39-9】k8s存储之卷(volumes)、挂载不同类型的卷(emptyDir、hostpath、nfs)

文章目录1. 卷简介2. 卷类型2.1 emptyDir 卷2.2 hostpath2.3 nfs1. 卷简介卷官方文档Container 中的文件在磁盘上是临时存放的,这给容器中运行的较重要的应用 程序带来一些问题。问题(1)是当容器崩溃时文件丢失。kubelet 会重新启动容器, 但容器会以干净的状态重启。 问题(2)当在同一 Pod 中运行多个容器并共享文件时出现。 Kubernetes 卷(Volume) 这一抽象概念能够解决这两个问题。Kubernetes卷具有明确的生命周期,与包

2021-03-04 21:18:01 1118

原创 【Linux39-8】k8s存储配置之Secret

文章目录1. Secret1.1 Secret简介1.2 Secret类型2. 创建 Opaque 类型的Secret2.1 通过命令创建2.2 通过yaml文件创建Secret2.3 将Secret挂载到Volume中2.4 将Secret设置为环境变量3. 创建 kubernetes.io/dockerconfigjson 类型1. Secret1.1 Secret简介Secret 是一种包含少量敏感信息例如密码、令牌或密钥的对象。 将这些信息放在 secret 中比放在 Pod 的定义或者

2021-03-03 19:56:52 449 1

原创 【Linux39-7】k8s存储配置之ConfigMap

文章目录1. ConfigMap简介2. 创建ConfigMap2.1 使用字面值创建2.2 使用文件创建2.3 使用目录创建2.4 编写yaml文件创建3. 使用ConfigMap3.1 通过环境变量的方式直接传递给pod3.2 通过在pod的命令行下运行的方式3.3 作为volume的方式挂载到pod内4. 热更新1. ConfigMap简介ConfigMap官方文档ConfigMap 是一种 API 对象,用来将非机密性的数据保存到键值对中。使用时, Pods 可以将其用作环境变量、命令行

2021-03-03 14:00:14 358

原创 Django简介、项目创建(数据库模型、后端站点管理、前端界面展示)、Django声明周期

文章目录1. Dijango简介2. 安装3. 创建3.1 创建Dijango项目3.2 创建应用4. 数据库模型4.1 创建4.2 数据库模型基本操作5. Django管理界面5.1 启用admin后台站点管理5.2 加入自定义模型6. 前台界面设置7. Django生命周期1. Dijango简介Django官方文档Django 是一个开放源代码的 Web 应用框架,由 Python 写成采用了 MVT 的软件设计模式,即模型(Model)+ 视图(View)+ 模板(Template)

2021-03-01 16:49:43 768 2

原创 MVC 与 MTV模型

文章目录1. MVC 模型2. MTV 模型1. MVC 模型MVC 模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。MVC 以一种插件式的、松耦合的方式连接在一起。模型(M)- 编写程序应有的功能,负责业务对象与数据库的映射(ORM)。视图(V)- 图形界面,负责与用户的交互(页面)。控制器(C)- 负责转发请求,对请求进行处理。简易图用户操作流程

2021-02-28 13:39:34 338

原创 HTTP简介、工作原理、请求方式、消息结构、HTTP状态码

文章目录1. 简介2. HTTP 工作原理3. HTTP 请求方法4. HTTP 消息结构4.1 客户端请求消息4.2 服务器响应消息5. HTTP状态码1. 简介HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)2. HTTP 工作原理HTTP协议工作于客户端-服务端(C/S)架构上。浏

2021-02-28 13:38:40 295

原创 【Python19】栈的封装、队列的封装、二叉树的封装

文章目录1. 栈 stack1.1 栈的方法1.2 栈的封装2. 队列 queue队列的封装3. 二叉树 binaryTree3.1 简介3.2 一般二叉树的性质3.3 二叉树的封装1. 栈 stack栈是限制在一端进行插入操作和删除操作的线性表(俗称堆栈),允许进行操作的一端称为“栈顶”,另一固定端称为“栈底”,当栈中没有元素时称为“空栈”。向一个栈内插入元素称为是进栈(push);从一个栈删除元素称为是出栈(pop)特点 :后进先出(Last In First Out / LIFO)1

2021-02-28 13:13:49 100 1

原创 【Python18】链表与数组、链表的封装

文章目录1. 数组2. 链表3. 区别4. 链表的封装1. 数组是有下标索引和data两部分组成2. 链表是有data和指向下一个数据的指针地址两部分组成3. 区别 链表数组内存占用不需要连续的内存空间需要连续的内存空间大小可变链表的大小可动态变化数组大小固定,不能动态扩展增删较快,只需要修改前一个元素的指针即可较慢,需要移动修改元素只有的所有元素查询较慢,只能遍历查找较快,可以通过下标直接访问在访问方式上必须是顺序访问,不能随机访问可以随机访问其中的元素空间的使用

2021-02-27 20:27:43 130

原创 【Python17】三大特性(封装、继承、多态)

文章目录1. 封装2. 继承2.1 单继承2.2 多继承2.3 重写父类方法3. 多态1. 封装封装,顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。所以,在使用面向对象的封装特性时,需要:1). 将内容封装到某处2). 从某处调用被封装的内容1). 通过对象直接调用被封装的内容: 对象.属性名2). 通过self间接调用被封装的内容: self.属性名3). 通过self间接调用被封装的内容: self.方法名()class Cat: def __i

2021-02-27 20:26:48 73

原创 【Python16】面向对象编程(类、属性、类方法)

文章目录1. 面向对象技术简介2. 类属性3. 类方法1. 面向对象技术简介类(Class):用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。方法:类中定义的函数。类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据。方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),

2021-02-27 19:12:47 98

loginRegister.zip

基于Django3实现的通用用户登陆注册系统。注册,登陆,登出,异步邮件发送,验证码确认等可重用注册系统

2021-03-09

空空如也

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

TA关注的人

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