自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (2)
  • 收藏
  • 关注

原创 Kubernetes创建Service访问Pod

Kubernetes创建Service访问Pod

2022-06-29 16:01:00 1177 1

原创 K8S创建Deployment报错(汇总)

K8S创建Deployment报错误

2022-06-29 09:50:12 2088

原创 kubernetes集群部署(v1.23.5)

单master,两个node节点 k8s集群部署

2022-06-24 15:42:27 975 1

原创 【Open5GS】Open5GS安装配置

镜像:ubuntu-20.04.4-live-server-amd64.iso//从服务器获取软件列表,并在本地保存为文件sudo apt update//安装软件包sudo apt install software-properties-common//添加PPA源到源列表sudo add-apt-repository ppa:open5gs/latestsudo apt update//下载安装open5gssudo apt install open5gssudo apt updatesudo apt

2022-06-21 10:36:14 2584 2

原创 VMware环境下修改Centos qcow2格式镜像

1.创建centos7宿主机使用VMware环境,宿主机创建成功后,需要CPU开启虚拟化,需要关机才能开启。2.配置yum镜像源yum install wget wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com

2022-04-15 17:03:27 3122

原创 Openstack下载镜像到本地

1.环境变量. openrc2.列出镜像openstack image list3.查看镜像信息openstack image show 镜像id4.下载镜像到宿主机glance image-download --file ./镜像名.qcow2 镜像id5.通过工具下载到本地

2022-04-13 09:30:28 3811

原创 Java性能优化(二)ArrayList和LinkedList的底层实现和使用

1.ArraryList1.1ArraryList实现ArrayList实现了List接口,继承了AbstractList抽象类,底层是数组实现的,并且实现了 自增扩容数组大小。 ArrayList 还实现了Cloneable接口和Serializable接口,所以他可以实现克隆和序列化。 ArrayList 还实现了RandomAccess接口。你可能对这个接口比较陌生,不知道具体的用 处。通过代码我们可以发现,这个接口其实是一个空接...

2022-02-11 17:26:31 917

原创 Java性能优化(一)字符串优化

2022-02-11 09:21:47 592

原创 正则表达式(一)判断以数字字母开头的参数

@Pattern(regexp = "^[0-9].*", message = "必须以数字开头")@Pattern(regexp = "^[a-zA-z].*", message = "必须以大小写字母开头")@Pattern(regexp = "^[0-9a-zA-z].*", message = "必须以数字及大小写字母开头")

2022-02-09 10:15:08 3937

转载 MYSQL数据库设计规范与原则

1.MYSQL数据库设计规范(1)数据库命名规范采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线'_'组成; 命名简洁明确(长度不能超过30个字符); 例如:user, stat, log, 也可以wifi_user, wifi_stat, wifi_log给数据库加个前缀; 除非是备份数据库可以加0-9的自然数:user_db_20151210;(2)数据库表名命名规范采用26个英文字母...

2022-01-07 17:21:39 231

原创 GIT相关(一)统计个人代码量

1.首先找到代码库位置需要在gitlab安装的机器上进行,下面是gitlab安装后代码默认存储位置cd /var/opt/gitlab/git-data/repositories/2.代码统计指令git log --since="2021-10-01" --before="2021-12-17" --author="author" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 -$2} END

2021-12-17 13:55:24 1487

原创 OpenStack公共组件(一)oslo_policy policy

通用策略引擎实现策略表示为一个目标和一个关联的规则:"<target>": <rule>目标特定于执行策略实施的服务。通常,目标引用一个API调用。策略部分,参见策略规则表达式。1.策略规则表达式策略规则可以用两种形式之一表示:用新策略语言编写的字符串或列表。字符串格式是首选的,因为它对大多数人来说更容易理解。在策略语言中,每个检查被指定为一个简单的“a:b”对,它匹配到执行该检查的正确类:类型 语法 用户角色 role:admin

2021-07-02 14:47:36 420

原创 OpenStack Neutron概述(一)

1.Neutron由来OpenStack发展至今,已经有46个正式项目,Neutron属于其中一个核心项目,如下图所示。Neutron OpenStack主要服务中所处的上下文如下。当前,Neutron已经成为OpenStack三大核心(存储 计算 网络)之一,对外提供NaaS(Network as a Sevice)服务。但是当初Neutron只是Nova项目中的一个模块而己,Folsom 版本才正式从中剥离出来,成为一个正式并且核心的项目。如下表所示。2..

2021-06-28 14:15:18 387

原创 Openstack plugin开发(二)qos插件源码

1.配置插件映射vi /neutron/neutron/plugins/common/constants.pyfrom neutron_lib.plugins import constants as p_const# Maps extension alias to service type that# can be implemented by the core plugin.EXT_TO_SERVICE_MAPPING = { 'fwaas': p_const.FIREWALL

2021-06-18 17:11:50 517

原创 Openstack plugin开发(一)

Neutron实现了一种可插拔的框架,开发者只需遵循规则,开发相应的plugin、driver、extensions,就能实现对资源的定制化操作。Neutron的service plugin,主要实现了对2层以上资源进行增删改查的api,同时还要对数据库进行相应的读写,有些plugin还需要将用户的请求下发到底层的软件或设备上。...

2021-06-18 14:44:59 665

转载 OVN – OVN OpenStack(二)

OpenStack networking-ovn 项目为Neutron提供了一个基于ML2的OVN插件,它使用OVN组件代替了各种Neutron的Python agent,也不再使用 RabbitMQ,而是基于OVN数据库进行通信:使用 OVSDB 协议来把用户的配置写在 Northbound DB 里面,ovn-northd 监听到 Northbound DB 配置发生改变,然后把配置翻译到 Southbound DB 里面,ovn-controller 注意到 Southbound DB 数据的变化,然

2021-05-25 17:09:14 1421

转载 初识Open vSwitch – OVN(一)

1.OVN简介OVN (Open Virtual Network) 是OVS提供的原生虚拟化网络方案,旨在解决传统SDN架构(比如Neutron DVR)的性能问题。其主要功能包括(1)L2/L3虚拟网络以及逻辑交换机(logical switch)(2)L2/L3/L4 ACL(3)IPv4/IPv6分布式L3路由(4)ARP and IPv6 Neighbor Discovery suppression for known IP-MAC bindings(5)Native sup

2021-05-25 11:24:41 941

原创 Openstack 误删除 Service Project问题解决

todo

2021-05-06 17:01:50 752

原创 Openstack配置相关_网络服务配额(一)

一、基础配额配置在默认情况下,所有的项目都有同样的限额配置。在/etc/neutron/neutron.conf下进行限额配置,下面进行举例[quotas]# 每个租户允许的网络数quota_network = 10# 每个租户允许的子网数quota_subnet = 10# 每个租户允许的端口数quota_port = 100# 配额检查的默认驱动程序quota_driver = neutron.quota.ConfDriverOpenStack组网也支持L3资源的

2021-02-23 17:43:43 1164 1

原创 DPVS学习(二)DPVS教程

1.术语关于全nat(FNAT),DR,Tunnel,toa,OSPF/ECMP和keepalived的概念,可以参考LVS和阿里巴巴/LVS。注:DPVS支持FNAT,DR,Tunnel,NAT,SNAT转发模式,有或没有OSFP/ECMP/keepalive,每个模式可以配置为单臂或两臂拓扑。后面给出一些日常工作中常用的工作模型。1.1 单臂和多臂双臂意味着,您在负载平衡器(LB)的一端拥有客户机,在另一端拥有服务器,然后LB在它的两个逻辑网络接口之间转发数据包。...

2020-11-30 14:03:59 5059

原创 DPVS学习(一)DPVS安装部署

1.下载DPVSgit clone https://github.com/iqiyi/dpvs.gitcd dpvs2.安装DPDKwget https://fast.dpdk.org/rel/dpdk-17.11.2.tar.xztar vxf dpdk-17.11.2.tar.xz3.DPDK补丁有一个用于硬件组播的DPDK kni驱动程序的补丁,如果需要就应用它。//切换到dpvs的路径下cd <path-of-dpvs>//复制补丁cp patch

2020-11-27 11:22:16 1979

原创 VPP学习(七)Bihash分析

基本概念VPP里的Bihash全名为Bounded-index extensible hash。它有两个特点:(1)在查找时是无锁并且线程安全的。(2)修改操作之间会有互斥,但是修改操作时仍然可以进行查找操作。VPP里的Bihash优化成了两种,分别为:(1)bihash_kv_8_8:前一位代表key的字节数8,后一位value的字节数8。(2)和bihash_kv_24_8:前一位代表key的字节数24,后一位value的字节数8。核心函数在bihash_template.c中。

2020-11-11 15:58:50 1242

原创 VPP学习(六)在多线程中使用VPP

1.VPP模式VPP有两种不同的工作模式:单线程多线程2.单线程在单线程模式中,主线程同时进行数据包处理和其他管理功能命令行接口(CLI)、API、stats)。这是默认设置,不需要特殊再去配置。3.多线程在多线程模式下,主线程处理管理功能(调试CLI、API、stats采集)。一个或多个工作线程处理数据包的从输入到输出。3.1多线程配置手动配置主线程配置在核1,工作线程配置在4,5,20,21cpu { main-core 1 corelist-wor

2020-10-27 10:49:44 2598

原创 VPP学习(五)VPP配置文件详解

这里分段解释配置文件内容cpu配置cpu { ## In the VPP there is one main thread and optionally the user can create worker(s) ## vpp里有一个主线程,用户可以选择创建工作线程 ## The main thread and worker thread(s) can be pinned to CPU core(s) manually or automatic.

2020-10-23 16:32:34 1801

原创 VPP学习(四)VPP trace追踪包 抓包

Trace# 添加dpdk类型的包追踪,抓10个包trace add dpdk-input 10# 查看包show trace# 清理clearPCAP Trace# 抓100000个包,写入文件vppcapturepcap dispatch trace on max 100000 file vppcapture buffer-trace dpdk-input 100000pcap dispatch trace off写入的位置位于/tmp,不能指定文件夹,旧的会被

2020-10-23 10:46:25 6519 1

原创 Masscan扫描工具

1.安装ubuntu系统可以直接通过如下命令进行安装apt install masscan2.命令扫描扫描192.168.1.1的0-65535的udp端口段,并将结果输出到port_hacking.txt文件中masscan --rate=1000 -p U:0-65535 --banners 192.168.1.1-oL port_hacking.txt...

2020-09-24 16:05:43 1247

原创 VPP学习(三)VPP练习

1.删除dpdk插件DPDK在多个实例情况下不能很好的工作。所以要运行多个实例,我们需要删除DPDK插件来禁用它。命令如下:sudo rm -rf /usr/lib/vpp_plugins/dpdk_plugin.so2.运行vppvpp在用户空间中运行。在生产环境中,你通常将它与DPDK一起运行,以连接到实际的nic(网络接口控制器),或与vhost一起运行,以连接到vm。在这些情况下,你通常运行vpp的单个实例。对于我们来说运行vpp的多个实例,并将它们相互连接以形成拓扑,这将非常

2020-09-02 13:45:19 1435

原创 VPP学习(一)VPP简介

VPP是一个快速的、可扩展的2-4层多平台网络协议栈。它运行在多个Linux用户空间中,主要架构包括x86、ARM和Power架构。VPP的高性能网络栈正在迅速成为世界各地应用程序的首选网络栈。通过广泛使用插件,VPP不断得到增强。数据平面开发工具包(DPDK)就是一个很好的例子。它为VPP提供了一些重要的特性和驱动程序。VPP支持与OpenStack和Kubernetes的集成。网络管理功能包括配置、计数器、抽样等。对于开发人员,VPP包括高性能事件日志记录和多种类型的包跟踪。开发调试映像包括

2020-08-31 10:58:47 13008

原创 RabbitMQ(六):web管理端

1. 简介rabbitmq-management是RabbitMq web管理端,用的是erlang的cowboy框架进行开发。web页面包括Overview(概述)、Connections(连接)、Channels(通道)、Exchanges(交换器)、Queues(队列)、Admin(用户管理)。2. Overview2.1Totals所有队列上一分钟的消息阻塞情况Ready:待消费的消息总数。Unacked:待应答的消息总数。Total:总数 Ready+Unacke.

2020-08-13 11:36:21 532

原创 RabbitMQ(五):RabbitMQ性能测试

TODO

2020-08-12 08:34:37 6045 4

原创 RabbitMQ(四):RabbitMQ消息大小限制,队列长度限制

消息大小限制在版本3.7中的源码,我们可以看到最大消息大小为2GiB。274 %% Trying to send a term across a cluster larger than 2^31 bytes will 275 %% cause the VM to exit with "Absurdly large distribution output data 276 %% buffer". So we limit the max message size to 2^31 - 10^6 by

2020-08-11 15:27:30 31538 2

转载 RabbitMQ(三):RabbitMQ使用详解

RabbitMq有5种常用的消息模型TODO

2020-08-05 18:39:43 340

原创 RabbitMQ(二):RabbitMQ安装及启动

安装socatyum -y install epel-releaseyum -y install socat安装rabbit的rpm包#安装relangrpm -ivh --nodeps esl-erlang_21.0-1_centos_7_amd64.rpm#安装rabbitmqrpm -ivh --nodeps rabbitmq-server-3.7.15-1.el7.noarch.rpm#修改.erlang.cookie的权限chown rabbitmq:rabbit...

2020-08-05 15:22:45 481

转载 RabbitMQ(一):RabbitMQ简介

RabbitMQ是目前非常热门的一款消息中间件,不管是互联网大厂还是中小企业都在大量使用。作为一名合格的开发者,有必要对RabbitMQ有所了解,本文是RabbitMQ快速入门文章,主要内容包括RabbitMQ是什么、RabbitMQ核心概念、常用交换器类型、用Docker安装RabbitMQ等。RabbitMQ简介消息队列提供一个异步通信机制,消息的发送者不必一直等待到消息被成功处理才返回,而是立即返回。消息中间件负责处理网络通信,如果网络连接不可用,消息被暂存于队列当中,当网络畅通的时候在将消息

2020-08-04 18:52:38 616

原创 TRex学习(一)环境搭建和测试

1.环境准备1.1环境安装

2020-07-28 17:51:15 8230

原创 VPP学习(二)VPP安装

采用源码安装的方式1.使用git将VPP源码克隆下来cd /home/mkdir sourcecd sourcegit clone https://git.fd.io/vpp -b master2.安装依赖环境,进入VPP目录下执行cd vppyum install -y epel-release python-pip net-toolsmake install-dep3.安装dpdk,执行第4步代码编译时,会自动下载dpdk并一起编译make dpdk-instal

2020-07-17 17:45:28 1429

原创 Centos 双网卡加载默认路由问题

物理机上有两张网卡修改/etc/sysconfig/network-scripts目录下的网卡配置文件希望生效的配置成DEFROUTE=yes,另外一个配置成DEFROUTE=no

2020-07-03 14:34:04 974

原创 Docker学习(五)DPDK 网卡绑定和解绑

我是用f-stack中的dpdk工具进行网卡绑定和解绑的。1.网卡绑定进入dpdk工具目录cd /data/f-stack/dpdk/usertools/查看网卡信息./dpdk-devbind.py --status关掉网卡ifconfig ens33down绑定网卡到dpdk驱动上./dpdk-devbind.py --bind=igb_uio ens33查看网卡状态2.网卡解绑sudo python dpdk-devbind.py -u 0000:.

2020-06-12 16:24:08 1567

原创 Docker学习(一)CentOS Docker 安装

1.系统版本确认Docker要求CentOS系统的内核版本高于3.10,查看本页面的前提条件来验证你的CentOS版本是否支持Docker。通过uname -r命令查看你当前的内核版本。2.卸载旧版本yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-lates...

2020-06-10 17:38:20 112

原创 DPDK学习(四)DPDK例子编译

本文以f-stack中dpdk为例编译用例及运行设置环境变量export RTE_SDK=/data/f-stack/dpdk切换目录cd $RTE_SDK构建dpdkmake defconfigmake构建应用程序cd examples/helloworld/设置环境变量RTE_TARGET的值export RTE_TARGET=build编译make运行./build/helloworld...

2020-06-03 12:06:30 689

snl java实现

关于snl语言的java实现 送给正在苦逼完成编译原理作业的同志们.....

2013-06-05

客观题考试系统界面

客观题考试系统界面 输入用户名 密码 和重置功能

2012-05-13

空空如也

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

TA关注的人

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