自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 获取k8s scale资源对象的命令

说明:scale资源对象用来水平扩展k8s资源对象的副本数,它是作为一种k8s资源对象的子资源存在,例如Deployment、StatefulSet、ReplicaSet就实现了该子资源,看资源对象是否实现了子资源类型,进入k8s项目源码的pkg/registry/<apiGroup>/<kind>/storage/storage.go下看对应资源对象是否有Scale这个成员,如下是Deployment,其就实现了scale子资源。

2023-08-05 12:17:15 432

原创 k8s aggregated api的编写思路

可以参考k8s官方的sample-apiserver进行编写(项目地址:GitHub - kubernetes/sample-apiserver: Reference implementation of an apiserver for a custom Kubernetes API.)说明:网上对于aggregated api的实战性文章非常少,有关这类的文章是在推荐使用apiserver-builder这个工具,但是在学习aggregated api编写的过程中,我觉得这个工具对于代码开发人员不

2021-09-25 17:15:02 797 1

原创 k8s storage随手记

k8s源码中关于每个资源对象(比如:pod、deployment等等)会有一个map类型的变量用于存储该资源对象相关的storage,什么是storage呢?如下简单描述,仅用于我个人方便理解,方便回忆起大致工作原理,因为本人最近在aggregated api,对apiserver中一些我关注的逻辑不是很明白1)map[${资源路径,比如,取值可为:pod、pod/status 等等}]xxx_storage(说明:每个资源路径对应一个xxx_storage);2)apiserver在注册url

2021-08-15 09:29:01 381

原创 MySQL数据库—SQL汇总

版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明原文链接:https://blog.csdn.net/qq_37969433/article/details/102637226...

2021-08-15 09:02:17 128

原创 kubectl命令报错error: more than one authentication method found for admin; found [token basicAuth]……

执行kubectl 报错:error: more than one authentication method found for admin; found [token basicAuth], only one is allowed解决方式:kubectl 命令行加参数:--kubeconfig=/dev/null参考文档:https://github.com/kubernetes/kubernetes/issues/72247...

2021-04-06 13:21:52 233

原创 k8s resources的配置效果

k8s资源对象LimitRange:是命名空间作用域的一个资源对象;作用是:当命名空间下的容器没有设置resources时,就使用LimitRange设置的值作为容器的默认值当命名空间下没有LimitRange时容器设置了requests和limits apiVersion: v1 kind: Pod metadata: name: default-mem-demo-2 spec: containers: - name: default

2021-04-03 18:58:54 5418

原创 网络地址管理

网络地址管理经历了三个阶段分类IP地址,分为A、B、C、D、E五类IP地址,IP地址组成:<网络号,主机号>,每一类IP地址的网络号前缀是固定的子网划分,在分类IP地址的基础上,从主机号分出一部分位数用于子网,子网的概念是在分类IP地址内部而言 的,在不同网络号的主机之间传递数据进行路由选择时,使用的还是A类、B类……的网络号,但是数据到达目标网络之后,目标网络内部之间会通过子网进一步划分,相当于在某一A地址内部,又从主机号拿出几位进行网络的分类,组成<网络号,子网号,主机号>

2020-07-19 11:37:42 762

原创 byte 和 rune

byte表示字节;rune表示字符(utf8字符),因此[]byte为字节数组,[]rune为字符数组,具体区分,看代码:package mainimport "fmt"func main(){ // 一个汉字占3个字节 var b = []byte("中文") var r = []rune("中文") fmt.Println(len(b)) // 输出结果:6 (...

2020-04-24 21:39:33 383

原创 golang单元测试之生成二进制测试文件

一、golang单元测试规范介绍: 1、单元测试文件名称:*_test.go; 2、单元测试文件中,函数的名称为:TestXXX,其中xxx必须以大写字母开头;二、当执行go test命令进行单元测试时,*_test.go文件中要测试的函数没在该文件中定义,而是在其它源文件(.go文件)中定义的,需要把对应源文件也作为go test命令的参数,比如源码文件结构如下所示...

2020-04-19 12:23:32 5073

原创 etcd:通过命令行客户端工具etcdctl存储的数据,在golang中通过etcd库去读取时读取不到的原因以及解决方法

背景:1、在用golang编写:操作etcd数据库中数据的程序时遇到一个让人哭笑不得的事情,我在命令行通过命令行工具etcdctl set了几个数据,比如etcdctl set a aaa(解释:在etcd中存储key为a,value为aaa的数据),通过命令行工具etcdctl 获取到a的值和期望的一样(值为aaa),但是在通过golang的第三方库(go.etcd.io/etcd/clie...

2020-02-29 15:08:18 1190

转载 面试还搞不懂redis,快看看这40道面试题(含答案和思维导图)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。原文地址:https://blog.csdn.net/Design407/article/details/103242874Redis 面试题1、什么是 Redis?.2、Redis 的数据类型?3、使用 Redis 有哪些好处?4、Redis 相比 Memcached...

2019-12-07 11:29:14 294

原创 删除mysql数据库中所有表

SELECT CONCAT('DROP TABLE ', table_name,';') FROM information_schema.`TABLES` WHERE table_schema='数据库名';如果你的数据库中有n表,就会生成n个对应的DROP TABLE 表名称;语句了...

2019-07-04 20:53:29 18233 4

原创 记录github项目

1、go语言yaml和json互转的项目:https://github.com/ghodss/yaml

2019-06-29 16:45:56 148

转载 go语言之channel

原文地址:https://colobu.com/2016/04/14/Golang-Channels/Channel是Go中的一个核心类型,你可以把它看成一个管道,通过它并发核心单元就可以发送或者接收数据进行通讯它的操作符是箭头: <-ch <- v // 发送值v到Channel ch中v := <-ch // 从Channel ch中接收数据,并将数...

2019-06-02 14:01:30 10296

原创 kibana搜索中“关于键盘上的符号搜索”搜索这几个字符时会报错

~!^()-+[]{}:/

2019-05-23 12:49:51 1376

转载 Redis主从同步原理-SYNC

原文地址:https://blog.csdn.net/sk199048/article/details/50725369和MySQL主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况。为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,下图为级联结构。 Redis主从复制可以根据是否是全量分为全量同步和增量...

2019-05-18 16:13:19 5225

转载 VMware的三种网络模式

转自:https://zhuanlan.zhihu.com/p/24758022VMware有三种虚拟网络工作方式,即:Briged(桥接模式) NAT(网络地址转换模式) Host-Only(仅主机模式)一、Bridged(桥接模式)桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换...

2019-05-18 15:35:14 242

转载 什么是数据库锁表

引用:https://zhidao.baidu.com/question/304715377923795204.html有一个任务序列控制sql语句的执行,第一次有select的语句查询表a,mysql服务器在执行select之前将表a加读锁,第二次又有一条select语句查询表a, mysql服务器发现在任务序列中有表a的读锁,也就是同时还有一个sql查询表a,读锁不会影响这条sql语句...

2019-05-11 16:49:34 1748

原创 shell分割字符串并赋值给变量

#假如变量var的值为:num=12,也即var="num=12",现在想把 12赋值给变量id# awk 的-F 后跟上要分割字符串时的指定分隔符# awk中$0是要分割的字符串,$1是分割后的第一部分,以此类推id=`echo $var | awk -F "=" '{print $2}'`...

2019-04-30 13:57:28 8841

原创 mysql之往表中插入数据

同时插入多个数据:INSERT INTO $(table_name) VALUES(...), (...), (...);往表中插入从其它表中获取到的数据:INSERT INTO $(dest_table_name) SELECT * FROM $(source_table_name);...

2019-04-13 15:42:57 12904

原创 k8s之helm

介绍下我在安装过程中所理解到的helm:【组成介绍】主要有helm client客户端和服务端即tiller组成【安装】1、在github下载helm压缩包并解压并进入解压缩后的目录,找到helm可执行文件并将其所在目录设置在PATH下(方便在任何目录下执行helm命令);2、执行helm install来进行tiller的安装【大前提:你本机首先部署有minikube,然后执...

2019-04-05 15:15:59 1271

原创 mysql之Error 1054

从数据库查询数据时,报了{"msg":"Error 1054: Unknown column '{不存在的字段}' in 'field list'"},检查发现是数据库中不存在此字段,但是代码中在查询时sql的目标字段中查询了此字段...

2019-03-27 12:40:21 10902

原创 代码中从mysql中查数据报:Err 1615: Prepared statement needs to be re-prepared

从网上查,感觉是一抄十,十抄百,可能也有效,但是不想通过在数据库那边修改设置来解决这个问题;因为之前没有从“视图”中查过数据,但是这次从”视图“中却出现了这个错误,让我不得不怀疑是视图的问题。我的解决方法:从“视图”查询数据改为从“表”中查,改后发现这个问题暂时没有复现了网上的方法基本都是这个(因为我本地没办法复现这个Err 1615错误,所以我没有通过这个方法来改):ta...

2019-03-21 20:06:22 1526

原创 如何进入到minikube中并重启kubelet

1、进入minikubeminikube ssh2、查看kubelet的状态:systemctl status kubelet3、重启kubelet:systemctl restart kubelet设置kubelet的启动参数:需要在配置文件中手动改,文件位置:/etc/systemd/system/kubelet.service.d/10-kubeadm.c...

2019-03-21 19:38:25 3386

原创 logstash的filter插件解析json格式数据

解析json格式时,filter插件的定义:filter{ json{ source =&gt; "message" target =&gt; "jsoncontent" }}运行结果:{ “@version”:1, “@timestamp":"2019-03-01T09:12:12.123Z" "host"...

2019-03-16 11:07:05 9493 2

原创 filebeat解析日志时对于json格式的处理

最近在用filebeat想对收集到的日志进行这样的解析:如果为json的话,就将json对象中的每个子字段解析成顶级结构下的一个字段,但是发现,解析后,保存日志完整内容的message字段(也即完整的json串)消失了,最终找到如下解决方法:用processors中的decode_json_fields处理器进行处理,它类似logstash中的filter,具体格式如下:processo...

2019-03-16 10:59:00 19303

原创 mysql表中创建外键(foreign key)的问题

今天在给mysql中创建表时,总是报错:后来了解到,一个数据库中,外键必须唯一,找出整个数据库中重复外键的方法:select TABLE_SCHEMA, TABLE_NAME from information_schema.KEY_COLUMN_USAGE where constraint_name in ('写下你这张报错表的外键');即可找出哪些外键已存在...

2019-03-13 20:47:21 1682

原创 随手记-知识网址(持续更新)

1、Dockerfile中拷贝目录时,在Dockerfile所在目录下执行docker build时,不能拷贝父目录,若要使用父目录,可以cd到父目录,然后docker build时,把dockerfile所在的目录作为参数传递过去,如:docker build -t <image-name> -f <Dockerfile-Directory>/Dockerfile .参...

2019-03-09 11:11:04 906

转载 kubernetes(k8s)易混点辨析:nodePort、port、

原文地址:https://blog.csdn.net/yjk13703623757/article/details/798194151. nodePort外部流量访问k8s集群中service入口的一种方式(另一种方式是LoadBalancer),即nodeIP:nodePort是提供给外部流量访问k8s集群中service的入口。比如外部用户要访问k8s集群中的一个Web应用,那么我们...

2019-02-24 15:16:26 3521

转载 Go语言中new和make的区别

转载于:https://www.flysnow.org/2017/10/23/go-new-vs-make.htmlGo语言中new和make是内建的两个函数,主要用来创建分配类型内存。在我们定义生成变量的时候,可能会觉得有点迷惑,其实他们的规则很简单,下面我们就通过一些示例说明他们的区别和使用。变量的声明var i intvar s string变量的声明我们可以通过var关...

2019-02-20 19:14:11 603

原创 【解决方法】mysql启动遇到ERROR 2002 (HY000): Can’t connect to local MySQL server through socket。。。。

ps -A | grep -i mysql把列出来的进程通过kill命令杀死执行service mysql start就解决了

2019-02-02 13:12:50 5027

原创 用python实现发送邮件

知识背景:SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过SMTP协议所指定的服务器,就可以把E-mail寄到收信人的服务器上了,整个过程只要几分钟。SMTP服务器则是遵循SMTP协议的发送...

2019-02-02 13:11:17 6888

原创 pycharm运行工程项目时报ImportError: No module named ***的错误

解决方法:1、出现了 ImportError: No module named _mysql解决方法:File &gt; Settings &gt; Project:*** &gt; Project Interpreter下,点击安装包的那个“+”,搜索mysql安装后即可2、出现了ImportError: No module named rediscluster解决方法:File...

2019-01-13 19:17:54 2858

原创 es进行分词测试以及自定义分词

前言:es中的分词器由三部分组成1、character filter:作用:先对要进行分析的文本进行一下过滤,比如html文档,去除其中的标签,比如&lt;p&gt;、&lt;html&gt;等等;2、tokenizer:作用:对文本进行分词,把要进行分析的文本根据所指定的规则,按照其规则把文本拆分为单词,,只可以指定一个;3、tokenizer filter:作用:把分好的词条(...

2019-01-05 14:26:53 16835 4

转载 ubuntu 18.04 安装 Redis

转自:https://wangxin1248.github.io/linux/2018/07/ubuntu18.04-install-redis.htmlRedis 安装Redis是一款内存键值存储,以其灵活性,性能和广泛的语言支持而闻名。本教程将演示如何在Ubuntu 18.04服务器上安装和配置Redis。主要内容包括:安装 Redis Redis 配置 Redis 控制一、...

2018-12-25 13:18:13 5795

原创 在docker容器内访问宿主机mysql报:Error 1045: Access denied for user 'root'@'172.17.0.2' (using password: YES)

出错原因:1、密码输入错误;2、-u后边跟的用户不存在;3、权限原因导致(我的就是这个原因)针对这种原因的解决方法如下:1)首先在宿主机登陆上mysqlmysql -uroot -p2)因为我在docker容器内是用root登陆没成功,所以对root授权grant all privileges on *.* to root@'%' identified by '12...

2018-12-24 20:43:37 11844 4

转载 利用Minikube来部署一个nodejs应用

参考并转自:https://juejin.im/entry/59841c2e51882525d22c8227 http://blog.gezhiqiang.com/2017/08/04/minikube/【原文地址】Kubernetes 是 docker 容器编排系统, 用于协调高可用的计算机集群,并在这个集群上以更有效的方式自动分发和调度应用程序。由于kubernetes本地安装比较...

2018-12-19 21:48:08 756

翻译 Ubuntu18.04 LTS 安装minikube

“背景介绍”之前在Win10下分别通过虚拟机下的Ubuntu和CentOS去装k8s集群始终装不好,即使按照视频一步一步来,最后还是会出现莫名其妙的错误,最后听说可以在本机装个minikube来营造一个k8s集群的环境,后来又分别试着在虚拟机下的Ubuntu和CentOS去装Minikube,总是在快大功告成之时报莫名其妙的错误:说我内核版本不对,按照报的错误指示中提示的命令,我执行了更新,但...

2018-12-19 21:31:59 4466 1

原创 查看本机外网ip

$ curl -L ip.cn注:有的网址是自动跳转的。使用`-L`参数,curl就会跳转到新的网址。$ curl -L www.sina.com 键入上面的命令,结果就自动跳转为www.sina.com.cn。...

2018-12-19 21:01:27 2406

转载 Ubuntu:apt-get软件管理工具(软件安装、重装、卸载)

原文地址:https://blog.csdn.net/qintaiwu/article/details/73741976                                            apt-get软件管理工具   下面讲解,linux系统下如何进行软件的管理,包括软件的索引安装、更新、卸载删除、本地存储介中软件的安装、系统升级等操作。 一、Linux软件包...

2018-12-18 21:33:41 9160

最全的vim配置

史上最全的vim一键配置,安装说明从README文档中阅读。

2018-05-05

Xftp5安装包【可以使用】

在XShell用于宿主机和虚拟机进行文件传输

2018-05-05

空空如也

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

TA关注的人

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