- 博客(71)
- 资源 (5)
- 收藏
- 关注
原创 VirtualBox 创建可以联网并与主机互通的虚拟机正确方法
通常创建虚拟机时候选择只选择桥接网卡即可使得主机与虚拟机互通,并且虚拟机可以上网。但是在新建集群或者换了网口之后,虚拟机可能就会断网的情况。以下介绍通用的可以联网并与主机互通的正确方法。选择共享当前的以太网(也就是主机的网络适配器),在下图中是以太网(CMCC-3uF9),共享给虚拟机创建的以太网2.在共享的时候会弹出来,以太网2的ip地址会发生变化变成(192.168.0.1),这里先忽略不计。2.查看主机以太网适配器的IP,使用命令ipconfig3.在VirtualBox界面
2021-07-20 21:47:02 710 1
原创 Centos 8 terraform init 出错
x509: certificate│ has expired or is not yet valid: current time 2021-04-26T09:25:24-04:00 is before 2021-05-03T20:25:20Z
2021-05-30 15:53:29 1143
原创 Python3.8 模块命名导致循环引用
问题描述:今天写代码的时候遇到这样一个问题:Fatal Python error: init_import_size: Failed to import the site modulePython runtime state: initializedTraceback (most recent call last): File "C:\Users\lilingsong\AppData\Local\Programs\Python\Python38-32\lib\site.py", line
2020-07-22 09:55:35 4480 2
原创 DL20 Gen9 server 安装 Raid
大致流程,先去https://support.hpe.com/hpesc/public/home官网找到Raid的驱动,在安装Centos的时候先安装驱动,然后再安装操作系统。https://serverfault.com/questions/892926/centos-7-1-gui-install-fail-after-driver-b140i...
2019-09-05 09:52:08 1577
原创 Windows Server 2012 远程连接报错:这可能是由于CredSSP 加密Oracle修正的一种临时解决方法
一种临时解决方案:远程连接时勾掉最下面的一个选项。
2019-09-05 09:49:17 4598
原创 Windows Server 2012 R2 安装后以太网控制器Ethernet Connection I-219V 没有启动
https://blog.csdn.net/ryu2003/article/details/50855146https://www.chiphell.com/thread-1076360-1-1.html
2019-09-05 09:46:04 3628
原创 Dock Swarm 配置以及应用
Docker swarm 基于docker api设计出来,不需要额外的安装环境准备三台虚拟机192.168.1.19 swarm1192.168.1.6 swarm2192.168.1.7 swarm3选择master 节点docker swarm init --advertise-addr 192.168...
2019-04-19 10:53:28 424
转载 Python Exceptions Handling
https://doughellmann.com/blog/2009/06/19/python-exception-handling-techniques/#index-1
2018-12-09 11:03:56 396
转载 Python Defensive Programming
文章讲了如何使用 assert, logging, 以及 unit test 实践防御性编程的技巧。defensive-programming-in-pythonhttps://swcarpentry.github.io/python-novice-inflammation/08-defensive/index.html ...
2018-12-09 10:43:38 222
转载 Javascript array remove 函数实现
需求:移除列表中的某个元素,不知道该元素的index。var array = [2, 5, 9];console.log(array)var index = array.indexOf(5);if (index > -1) { array.splice(index, 1);}// array = [2, 9]console.log(array);...
2018-09-23 21:41:24 2819
原创 JS 外层调用函数循环体中的变量被内层被调用函数中的同名变量覆盖问题
刚接触JS,也没看ES6的标准,在使用的时候带着一些写python的习惯。遇到了一个函数中的变量被覆盖的问题,最后靠自己猜解决了。问题为: 在addCases中调用getElementsByTagName函数,在for循环语句中的ip变量被getInputByName中的同名变量覆盖了。,解决办法,在for循环语句中申明变量ip时候加上"var"。原因是如果默认变量是以“var...
2018-09-23 21:39:40 2323
转载 Pythoh 迭代器,可迭代对象,容器,生成器
容器一般都是可迭代对象,是一种数据结构(data structure)。很多容器(list,dict,tuple)都是可迭代对象。但是可迭代对象不一定是一种数据结构,比如打开的文件或者sockets。可迭代对象可以(can)返回迭代器。每一个可迭代对象在代码都实现了__iter__()和__next__()方法。每一个实现了__next__()方法的对象都是迭代器。生成器是一种特殊的迭代器,反之不...
2018-07-08 13:45:24 284
原创 Flask Project 01-Employee Management System
We'll build a CRUD (Create, Read, Update, Delete) employee management web app using Flask, a microframework for Python. I've named the app Project Dream Team, and it will have the following features:...
2018-03-10 11:10:33 264
原创 shell-$@ $*的区别
精确来讲,两者只有在 soft quote 中才有差异,否则,都表示"全部参数"( $0 除外)。若在 command line 上跑 my.sh p1 "p2 p3" p4 的话,不管是 $@ 还是 $* ,都可得到 p1 p2 p3p4 就是了。但是,如果置於 soft quote 中的话:"$@" 则可得到"p1" "p2 p3" "p4" 这三个不同的词段(word)﹔"
2018-03-06 10:17:02 1131
原创 JS-实例1.按钮弹出关闭
JS实现简答按钮弹出关闭效果<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> #div1 {width
2018-03-05 19:57:25 224
转载 docker的宿主系统是centos,为什么可以运行ubuntu的镜像呢?
首先需要区分Linux内核与Linux发行版Linux内核是Linux操作系统的核心, 负责硬件管理, 比如管理内存、管理磁盘(文件系统)、管理CPU(进程)等等...Linux发行版是在Linux内核的基础上添加了一些工具软件,比如图形界面、函数库、软件包管理系统等等...CentOS与Ubuntu是不同的Linux发行版, 它们都是基于Linux内核, 只是添加
2018-02-04 22:14:39 9677 4
转载 微服务理论基础以及介绍
阿里这篇讲微服务的理论基础康威定律说得很详细。微服务基础-康威定律微服务在软件架构层面的主要表现是松耦合高内聚。而要做到这两点就需要明白各个可分割模块的界限。
2018-01-14 13:28:29 547
转载 持续集成分支模型资料收集
对于常见的Git类型的代码库而言,有两种主流的托管平台,一种是Gerrit,另一种是类Github的工作流程(包括Bitbucket, Gitlab)。对于Gerrit的模式来说,小团队(20人以内的),可以直接在master上提交(比如Martin Flower一开始说的每天在mailine上提交),gerrit只是生成一个需要merge的patch.而Github一般而言只需要在maste
2018-01-14 13:23:16 457
原创 Python socket 实现简单的server-client聊天
Serverimport sockethost = '127.0.0.1'port = 9999s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# s.setsockopt()s.bind((host,port))s.listen(1)while True: conn, addr = s.accept()
2018-01-08 20:22:36 1323
转载 CentOs6.8 final安装源码编译安装pip报错ssl
ERROR:pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.解决方案:yum install opensslyum install openssl-dev重新编译安装python3.5,然后进入pip目录 ./setu
2018-01-06 16:17:34 324
原创 Python 打包,entry_points的使用
案例:如何将source code制作成一个egg包,并且生成可以直接运行的命令目录结构:(build02) louis@jenkins:~/.virtualenv/pactest$ tree ci_test/ci_test/├── hello.py├── __init__.py└── utils ├── bye.py └── __init__.py
2017-12-01 21:36:54 10185
翻译 500lines:Python实现的一个持续集成系统
GitHub500lines小项目框架详细介绍调试过程中的问题:一.作者采用从本地的一个git库写代码提交,来产生新的commit ID,用于触发新的build,事实上,每五秒轮询一次查看代码库是否有更新,在使用git add之后,还没commit之前,update_repo.sh这个文件就会将刚add的记录 reset掉。所以最好是在github clone一个代
2017-11-27 21:23:25 1381
原创 Python 正则表达式
1.findallstr = ":192.168.0.1:8080"host, port = re.findall(r":(\w*)", address)这里findall将仅仅输出分组中的内容。也就是虽然进行冒号的匹配但是不返回冒号。
2017-11-27 21:11:52 187
翻译 Continuous Integration in DevOps
文章介绍了持续集成在DevOps中的应用,15年的旧文,写得不错,试着翻译了一下。简介:当敏捷软件开发首先被提出的时候,一个原则就是针对软件的 变更更快地迭代 以及通过不遗余力地执行有探索性质的“快速失败”措施来确保开发方向的正确性,而这种正确性是软件项目合理进行的基石。这种流程的思路来源于一种经验性的结论即在立项的时候,研发人员缺乏充分的信息去决定长期项目的不断变化的需求并且不能完全理解
2017-09-28 22:25:34 191
原创 一种可行的持续集成架构介绍
关键词:工作流事件,面向发布本文介绍一种比较完整,能够在软件开发流程中增加效率的持续集成(CI, continousintegration)框架.。关于持续集成的概念以及部分术语默认读者已知。本文先从一个Patch的生命周期介绍了该框架的主要总成部分。接下来从面向发布的角度介绍不同种类的Job. 框架中涉及到的工具为Gerrit(一种Git 代码库的托管平台),Github(
2017-09-09 17:33:59 1376
原创 Python-类与对象-子类扩展父类属性
class Human(object): def __init__(self, sex, high): self.sex = sex self.high = highclass Man(human): var = 133 def __init__(self, sex, high, job): super().__init_
2017-07-06 22:09:27 4011
原创 Python-yield模拟生产消费者模型
import timedef consumer(name): print("%s 准备吃包子啦!" %name) while True: baozi = yield print("包子[%s]来了,被[%s]吃了!" %(baozi,name))def producer(): c = consumer('A') c2 = con
2017-06-29 22:47:17 697
原创 Python-元类
参考自本教程中的元类一篇 ,注释是自己的理解。http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000class Field(object): def __init__(self, name, column_type): self.name = name
2017-06-27 23:22:32 465
原创 JenkinsCI-Pipline01
Pipline的介绍使用见官网:https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+as+Code示例1:test1,作为main job调用test2,test3,两个job,并行编译,在test1中传入Branch参数,并使得test2,test3使用同样的branch,而test2,test3 fail不会使得test1 fail
2017-06-26 21:36:43 546
原创 JenkinsCI-GroovyScripts01
Jenkins中Groovy Scripts 示例可以在jenkins系统管理脚本命令行部分直接测试运行这些脚本,Jenkins官网也有示例。在console直接运行脚本有一个好处就是可以批量管理所有的job以及节点,提高工作效率。见https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+Script+Console1.Job e
2017-06-26 20:51:02 699
原创 SaltStack-03防火墙文件分发
放在base环境下面root@salt-master:/srv/salt/base# tree iptables/ -L 2iptables/├── files│ └── rules.v4└── init.slsrules.v4设置防火墙内容,当然可以结合grains,pillar设置更加具体化的规则。init.sls 内容iptables-dir: cmd
2017-06-25 10:53:29 594
原创 SaltStack-02Haproxy以及Keepalived配置
1.首先我们不在base环境下面做在,prod环境下面。确保/etc/salt/master中没有注释prod这一行:# Example:file_roots: base: - /srv/salt/base dev: - /srv/salt/dev/services - /srv/salt/dev/states prod: - /srv/salt/
2017-06-24 18:56:57 403
原创 Python Excel 读写操作
需求:读取内容为Json格式的文件并写入到Excel文件主要用得到的package,import simplejsonimport xlwt#在读取某些文件时候有一些编码错误在开头声明:reload(sys)sys.setdefaultencoding('utf-8')#创建一个Workbookwb = xlwt.Workbook()#增加一个sheet
2017-06-22 15:46:22 330
原创 Gerrit历史记录查询
查询Gerrit指定状态的patch set,并保存到文件。采用分段查看首先查看最近500条的,再查看最近500-1000条的。以Json文件格式保存。后续处理做成Excel可以用Python等。查询命令文档见https://review.openstack.org/Documentation/cmd-query.html#!/bin/bash#This is a script
2017-06-20 11:15:26 10769
转载 Shell脚本中各种符号的意思
$()和${}和$(())和(())http://www.2cto.com/os/201308/239136.htmlShift命令在脚本中的作用http://blog.csdn.net/zhu_xun/article/details/24796235UNSET的作用unset命令用于删除已定义的shell变量(包括环境变量)和shell函数。unset命令不能够删除具有只
2017-06-20 11:04:00 1836
原创 Saltstack-01基本命令
一.实验环境以及基础安装操作系统:Salt master:Ubuntu 16.04.2 LTSThree minions:Both CentOS Linux release 7.3.1611 (Core)还有salt-master本身也可以作为minion.安装很简单,yum,apt-get 等等即可.简单配置minion的/etc/salt/minio
2017-06-20 09:57:44 787
原创 10分钟搭建OpenGrok代码搜索引擎
系统 Ubuntu 16.04.2 LTS ,安装包https://github.com/OpenGrok/OpenGrok/releases/download/1.1-rc3/opengrok-1.1-rc3.tar.gz步骤:1。安装tomcat8 $ sudo apt-get install exuberant-ctags tomcat8$
2017-06-16 22:40:15 5565
原创 PEP8 indentation写法
1.对于长字符串,每行不能超过80个字符,使用圆括号括住,新起一行使用tab缩进a = ('dddddddddddddddddd''vvvvvvvvvvvvvvvvvvvvv''nnnnnnnnnnnnnnnnnnn)
2017-06-14 10:42:54 487
一种可行的CI架构介绍
2017-09-09
Mastering_SaltStack_
2017-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人