- 博客(116)
- 收藏
- 关注
原创 sign-file: certs/signing_key.pem: 解决方法
生成signing_key.pem signing_key.x509 文件
2022-08-14 17:40:55 1212 1
原创 iperf3 安装遇到 error while loading shared libraries: libiperf.so.0
iperf3: error while loading shared libraries: libiperf.so.0: cannot open shared object file: No such file or directory这个问题容易发生在centos6 和Ubuntu较老版本上:编译错误.解决方法:在正常编译后运行.ldconfig
2022-05-03 20:04:03 1988
原创 在LinuxBridge/OVS中使用VxLAN组网以及创建VTEP
原文来自于:https://blog.lofyer.org/%E5%9C%A8linux-bridge-ovs%E4%B8%AD%E4%BD%BF%E7%94%A8vxlan%E7%BB%84%E7%BD%91%E4%BB%A5%E5%8F%8A%E5%88%9B%E5%BB%BAvtep/#comment-3641在LinuxBridge/OVS中使用VxLAN组网以及创建VTEP一、使用VxLAN通道原理是在网络命名空间上(仅测试环境),创建对端接口(peer/patch,虚拟化环境中即是虚.
2022-04-28 17:00:57 1850
原创 ubuntu下sed命令详解
sed简介sed是一种非交互式的流编辑器,可动态编辑文件。所谓非交互式是说,sed和传统的文本编辑器不同,并非和使用者直接互动,sed处理的对象是文件的数据流(称为stream/流)。sed的工作模式是,比对每一数据行,若符合样式,就执行指定的操作。sed --version //查看sed版本sed语法sed ‘操作命令’ 操作对象特别注意:sed并不会更改文件内容。sed的工作方式是读取文件内容,经流编辑之后,把结果显示到标准输出。因此,如果想要存储sed的处理结果,得自
2022-04-28 16:49:39 2131
原创 Ubuntu 查找文件夹中内容包含关键字的文件
1.find / -name '*' | xargs grep 'route'在根文件夹下查找含有关键字route的文件,列出文件名和route所在行。2.find / -name '*.txt' | xargs grep 'route'在根文件夹下查找后缀名为txt且含有关键字route的文件,列出文件名和route所在行。例子如下:find / -name '*.c' | xargs grep 'dev_change_net_namespace'...
2022-04-28 16:43:16 1850
原创 ubuntu查看系统版本和linux内核版本
lsb_release –aNo LSB modules are available.Distributor ID: UbuntuDescription: Ubuntu 18.04.5 LTSRelease: 18.04Codename: bionic可以看到我的系统版本是Ubuntu 18.04.5 LTScat /proc/versionLinux version 4.15.0-175-generic (buildd@lcy02-amd64-034) (gcc version .
2022-04-24 16:58:29 2660
原创 将veth-pair放置不同命名空间之间的通信
放置于两个不同的命名空间中创建 namespaceip netns a ns1ip netns a ns2创建一对 veth-pair veth0 veth1ip l a test3 type veth peer name test3p将 veth0 veth1 分别加入两个 nsip l s test3 netns ns1ip l s test3p netns ns2给两个 veth0 veth1 配上 IP 并启用ip netns exec ns1 ip a a 10.
2022-04-16 15:14:46 317
原创 couchdb: 修改管理员密码
1.停止相应服务2.编辑/opt/couchdb/etc/local.ini文件,修改内容如下:3.重启相应服务,登录即可
2022-01-30 20:09:36 956
原创 Shell查看进程总数
1.查看全部进程数ps -ef | wc -l2.查看httpd的进程数ps -ef | grep httpd | wc -l
2022-01-30 20:05:30 931
原创 进入docker容器安装相应工具
1.首先需要apt-get update2.然后安装相应的包即可a.ifconfigapt install net-toolsb.pingapt install iputils-ping
2022-01-30 20:03:02 871
原创 Weave实现原理
如图所示:Weave相关操作查看weave中主机的建连情况weave status peers根据ubuntu镜像创建test1容器并运行docker run -it -d --name test1 ubuntu给容器test1分配ipweave attach test1到容器test1内部执行docker exec -it test1 /bin/bash停止运行容器test1,并且删除容器test1docker stop test1;docker rm test1列出正在运行的
2022-01-30 20:00:46 1098
原创 python:信号量使用
from timeit import Timerimport timeimport numpy as npimport jsonimport datetimeimport queueimport threadingdef fun(semaphore, num): # 获得信号量,信号量减一 semaphore.acquire() #print "Thread %d is running." % num print("Thread %d is running."
2021-11-25 21:00:32 575
原创 python:对相应的key进行编码
key='abcd'key_bytes = bytes(key, encoding = 'utf-8')print(key)
2021-11-25 20:59:22 595
原创 python:导入其他类,方法等
导入当前目录下sender.py中的Senderfrom .sender import Sender导入上一级目录下serializer.py中的Serializerfrom ..serializer import Serializer导入上一级目录下protocol 文件夹中message.py中的Message, MessageSet from ..protocol.message import Message, MessageSet...
2021-11-25 20:58:16 686
原创 Python:ZipFile用法
import osfrom zipfile import ZipFilezip_name = "myfunction.zip"if os.path.exists(zip_name): os.remove(zip_name)for root,dirs,files in os.walk('.'): with ZipFile(zip_name,'w') as zf: for fn in files: zf.write(fn)
2021-11-24 21:07:24 414
原创 ubuntu:无需密码登录其他机器
前提:确保本机和目标机器都安装了ssh服务sudo apt-get install sshssh-keygenssh-copy-id -i ~/.ssh/id_rsa username@target-hostname
2021-10-07 20:33:05 145
原创 SQL分页查询
在mysql中分页查询,它使用的是limit关键字。关键字之后需要两个参数m,n,最终mysql语句的样式:select * from 数据来源 where 过滤条件 group by 分组字段 having 对统计函数进行过滤 order by 排序字段 排序的方式 limit m,n;查询列子如下:查询第2页,每页显示10条数据:select * from employees limit 10,10;通过以上的查询总结出公式:--m=(currentPage-1)*linesiz.
2021-10-07 16:54:45 401
原创 简单理解socket(AF_INET,SOCK_DGRAM)
面向网络的家族名:AF_INET或者地址家族:因特网。另一个地址家族AF_INET6用于第6版因特网协议(IPv6)寻址。此外,还有其他的地址家族,这些要么是专业的、过时的、很少使用的,要么是仍未实现的。在所有的地址家族之中,目前AF_INET是使用得最广泛的无连接的套接字UDP套接字的名字SOCK_DGRAM特点:不可靠(局网内还是比较可靠的),开销小。与虚拟电路形成鲜明对比的是数据报类型的套接字,它是一种无连接的套接字。在通信开始之前并不需要建立连接。此时,在数据传输过程中并无法保证它
2021-10-07 16:52:05 5561
原创 socket AF_INET AF_UNIX
原文:https://blog.csdn.net/poject/article/details/853377901 AF_INET域socket通信过程AF_INET域通信过程典型的TCP/IP四层模型的通信过程。发送方、接收方依赖IP:Port来标识,即将本地的socket绑定到对应的IP端口上,发送数据时,指定对方的IP端口,经过Internet,可以根据此IP端口最终找到接收方;接收数据时,可以从数据包中获取到发送方的IP端口。发送方通过系统调用send()将原始数据发送到操作系统内.
2021-10-06 16:59:24 266
原创 python中数组下标为负数时
在Python数组中,-1表示数组的最后一行数据,一维数组时输出的是最后一个数,二维数组时输出的是最后一个一维数组,三维数组时输出的是最后一个二维数组,以此类推。当不知道数组具体长度时,可以这样使用在Python数组中,-2表示数组的倒数第二个数据 其他的依次类推...
2021-10-06 16:53:17 2387
原创 shell命令测试指定程序的执行时间
#!/bin/basht=$(date +%s.%N) #当前时间 echo "当前时间为: $t" ############################################################### echo "计算指定程序的执行时间" echo "Please Enter a command: " read cmd start=$(date +%s) #开始时间 $cmdend=$(date +%s)
2021-10-06 16:52:10 768
原创 Linux中的流
/dev/stdin -> /proc/self/fd/0/dev/stdout -> /proc/self/fd/1/dev/stderr -> /proc/self/fd/2
2021-10-06 16:50:47 191
原创 磁盘性能评价指标—IOPS和吞吐量
磁盘的 IOPS,也就是在一秒内,磁盘进行多少次 I/O 读写。磁盘的吞吐量,也就是每秒磁盘 I/O的流量,即磁盘写入加上读出的数据的大小。 IOPS计算公式对于磁盘来说一个完整的IO操作是这样进行的:当控制器对磁盘发出一个IO操作命令的时候,磁盘的驱动臂(ActuatorArm)带读写磁头(Head)离开着陆区(Landing Zone,位于内圈没有数据的区域),移动到要操作的初始数据块所在的磁道(Track)的正上方,这个过程被称为寻址(Seeking),对应消耗的时间被称为寻址时间(See.
2021-10-06 16:47:32 1196
原创 Linux文件类型
b:块设备,是一些提供系统存取数据的接口设备,例如硬盘。c:字符设备,是一些串行端口的接口设备,例如键盘、鼠标、打印机、tty终端。l:链接文件,类似于Windows的快捷方式。s:套接字文件(socket),用于进程之间的通信。-:文件,分纯文本文件(ASCII)和二进制文件(binary)。...
2021-10-06 16:45:04 62
原创 硬盘IO性能估算(IOPS,吞吐量,延时)
固态硬盘没有寻道时间和旋转时间。IO耗时是通过地址查找数据耗时,根据芯片颗粒SLC、MLC,中控芯片、队列深度32~64、接口SATA、PCIE的不同,一般负载非太高时是相对固定值(控制在60%利用率)。性能调优对于随机负载,当遇到余下情况时,我们那通常认为存在 I/O 性能问题:1 平均读时间大于 15ms2 在具有写 cache的条件下,平均写时间大于 2.5ms 对于顺序负载,当遇到余下情况时,我们那通常认为存在 I/O 性能问题:3 在一个磁盘上有两个连续的I/O 流4 吞吐量不足.
2021-10-06 16:42:49 2451
原创 性能测试:cpu负载和cpu利用率
加粗样式 在程序设计的时候要考虑如何利用好CPU的这个资源,如何均匀的将压力分摊到各个CPU 上(有时候一个线程在不断循环,导致单个CPU负荷很高)
2021-10-05 16:58:23 360
原创 使用iperf测试设备的网络吞吐量
iperf简介iperf是一个基于Client/Server的网络性能测试工具,可以测试TCP,UDP和SCTP带宽质量,能够提供网络吞吐量信息,以及震动、丢包率,最大段和最大传输单元通统计信息,帮助我们测试网络性能,定位网络瓶颈。iperf的好处是纯粹发包和接收,不会被硬盘、Flash等读写速度测试结果。iperf测试结果在一定程度上反应了路由器的网络性能iperf3.exe –c 192.168.10.1 –p 6801 –i 1 –t 30客户端ip为192.168.10.1,相应的端
2021-10-05 16:44:19 9463
原创 Git push代码到远程仓库
1 git status查看你当前文件的状态2.1 git add .提交本地所有文件到本地仓库2.2 git add 文件名提交本地特有文件到本地仓库3 git commit -m “first commit”这里是提交的注释,-m后面引号里面是本次提交的注释内容,这个可以不写,但最好写上4 git remote add origin [远程仓库地址]origin相当于远程仓库别名5 git pull --rebase origin master将远程仓库中的内容合并到本地,如果没.
2021-09-24 16:33:07 522
原创 Git 分支查看,切换,创建
查看所有分支git branch -a查看当前使用分支(结果列表中前面标*号的表示当前使用分支)git branch切换分支git checkout 分支名创建并切换到新分支git checkout -b main
2021-09-24 16:29:10 70
原创 nodejs:输出数组的长度
let functions = [];if (functions.length == 0) { console.log("fetching relevant functions..."); functions = yield listFunctions(); console.log(`found ${functions.length} functions`); }
2021-09-24 16:27:49 1820
原创 在环境中动态配置AWS_PROFILE
1.配置AWS_PROFILE对应的用户,如下: export AWS_PROFILE=user12.在.aws目录下修改config和credentials文件 config修改如下图所示:credentials修改如下图所示:
2021-09-24 16:21:15 1727
原创 npm安装package.json中的依赖
在nodejs命令窗口下安装切换目录到package.json所在的目录下,执行 npm install xxx 或 npminstall package.json的内容如下图所示:
2021-09-24 15:58:43 1024
原创 集群中搭建Kafka
1.下载对应的文件,比如kafka_2.13-2.7.1.tgz(不同版本可能修改server.properties的方式不同)2.修改config/server.properties文件(其中包括的字段有broker.id,log.dirs,zookeeper.connect),如下所示:记得创建日志文件夹kafka-logs3.然后将kafka文件夹传送到其他两台机器4.修改config/server.properties文件中的broker.id5.执行如下相应的命令//创建主题/
2021-08-27 16:12:17 210
原创 ZooKeeper的安装、配置和启动
1.安装前提:安装好java环境2.下载对应版本的zookeeper-xxx.tar.gz3.解压sudo tar -zxvf zookeeper-3.4.8.tar.gz4.配置环境变量,ZOOKEEPER_HOME,CLASSPATH,PATH。如下图所示:对应的文件为:/etc/profile5. 使环境变量生效source /etc/profile6.需要将conf目录下的zoo_sample.cfg 重命名为 zoo.cfg,或者touch文件zoo.cfg7.创建data
2021-08-27 15:59:53 501
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人