自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(222)
  • 收藏
  • 关注

转载 Pod 启动时命令和参数 与 dockerfile镜像区别

pod 启动命令

2022-08-29 21:16:12 354

原创 kubernetes删除namespace陷入 terminating

一般存在两种情况:1. Namespace Controller由于某种原因,无法删除完对象并移除 kubernetes finalizer2. Namespace 对象存在默认 kubernetes finalizer 之外的其他 finalizer具体的原因可以通过 kubectl get namespace <name> -o yaml conditions中查看下。解决方法:https://github.com/ctron/kill-kube-nshttps://..

2021-05-18 20:49:02 390

原创 数据库的导入导出及授权

目录数据库导出数据库导入数据库授权1. 忘记root密码2. 创建表时 colume使用的时 mysql 保留字导致报错数据库导出1、导出数据库为bname的表结构(其中用户名为root,密码为dbpasswd,生成的脚本名为db.sql)mysqldump -uroot -pdbpasswd -d dbname > db.sql;2、导出数据库为db...

2019-05-25 15:53:04 1060

原创 kubernetes patch学习小结

kubernetes patch操作PUT操作 /<资源名复数形式>/<名字> 通过给出的资源名和客户端提供的json对象来更新或创建资源PATCH操作 /<资源名复数形式>/<名字> 选择修改资源详细指定的域Kubernetes使用Patch命令来对运行中的应用进行动态跟新对于patch操作,kubernetes API通过相应的...

2019-05-25 14:56:17 8268

原创 kube-scheduler源码分析---初始化过程

目录框架kube-scheduler的cmd目录结构如下main函数核心代码抽离NewOptionsOptions.Configconfig对象informer初始化Run函数NewSchedulerConfig分析schedulerCache初始化及结构scheduler队列实现InformerFactory.StartWaitForCac...

2019-05-19 22:19:59 656

原创 shell中输入输出重定向

目录重定向命令列表输出重定向输入重定向重定向深入讲解Here Document/dev/null 文件总结学习资料大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回​​到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端。重定向命令列表命...

2019-05-19 12:23:16 718

原创 数据库增删改查操作

目录数据库操作数据库类型创建和删除数据表表操作高级操作SQL 约束SQL 日期SQL 函数总结参考数据库操作登陆数据库: mysql -h xxx -uroot -p pass 数据库名称创建数据库: CREATE DATABASE 数据库名;删除数据库: drop database <数据库名>;显示数据库: show data...

2019-05-18 18:17:11 43205 1

原创 go---详解container/heap

目录container/heap是什么container/heap提供的方法container/heap的源码container/heap用途1. int slice类型的小根堆2. 实现优先级队列(重要:k8s优先级队列)3. 处理最小的K个数或者最大的K个数,处理海量数据container/heap是什么堆(英语:heap)是计算机科学中一类特殊的数据结构的...

2019-05-11 17:23:45 2608

原创 kube-scheduler原理介绍及分析

目录kube-scheduler是什么一句话两层含义两个注意Scheduler调度功能主要职责调度节点分配调度的两个过程好的调度器考虑的方向scheduler 调度机制工作原理框架图第一个控制循环 Informer Path第二个控制循环,调度器负责pod调度的主循环scheduling pathAssume方式API对象更新方式...

2019-05-08 23:42:45 6815

转载 linux后台执行命令:&和nohup

目录&nohupctrl + zCtrl+cjobs2>&1解析转载网址当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件。对于密集访问磁盘的进程,我们更希望它能够在每天的非负荷高峰时间段运行(例如凌晨)。为了使这些进程能够在后台运行,也就是说不在终端屏幕上运行,有几种选择...

2019-05-04 19:59:12 1273

原创 Kubernetes PodDisruptionBudget 主动驱逐保护

目录场景特性参考示例最近看代码时,老是在代码中能看到PDB 是什么呢?Pod Disruption Budget (pod 中断 预算),含义其实是 终止pod前 通过labelSelector机制获取正常运行的pod数目的限制,目的是对主动驱逐的保护措施。场景节点维护或升级时(kubectl drain) 对应用的自动缩容操作(autoscaling down) 由于...

2019-05-04 14:55:01 3050

原创 kubernetes集群node维护的正确姿态

目录kubernetes处理node的命令详解cordon、drain、delete node区别cordondrain 驱逐节点delete 节点kubectl delete node 详解正常情况无node绑定关系有绑定关系总结kubernetes处理node的命令详解cordon、drain、delete node区别主要目的:导致node处于...

2019-05-04 14:04:52 2812

原创 kubernetes之client-go基础包fifo和delta_fifo

目录直奔主题FIFO和delta_FIFO抽象FIFO实现结构及初始化(调度器用到这个队列)重要方法介绍DELTA_FIFO实现其他几个类型说明结构及初始化重要方法介绍DeltaFIFO创建对象键函数基础方法总结参考直奔主题FIFO和delta_FIFO抽象// Queue is exactly like a Store, but ...

2019-05-02 22:50:48 1671

原创 kubernetes之client-go基础包 Indexer

目录为什么介绍IndexerIndexerindexer抽象定义Indexer与索引相关的接口Indexer实现cacheThreadSafeStore索引相关函数cache实现总结参考链接为什么介绍Indexer如下图示:可以看出Local Store 在client-go及kubernetes控制器中的重要作用。上图可看出Inform...

2019-05-02 14:02:29 1607

原创 kubernetes之client-go基础包workqueue

目录目录为什么介绍队列通用队列通过接口定义类型定义初始化队列基本方法简单的DEMO程序示例延时队列类型定义初始化延迟队列方法限速队列限速器抽象定义BucketRateLimiterItemExponentialFailureRateLimiterItemFastSlowRateLimiterMaxOfRateLimiter...

2019-05-01 13:43:37 2358

转载 Kubernetes 大咖秀徐超 [ 使用 client-go 控制原生及拓展的 Kubernetes API ]

目录如何去访问kubernetes集群client-go 内容kubernetes典型的控制器模式ClientsetRESTClient​Informerworkqueue​DEMO偶然在网上看到的,主要是对kubernetes中使用client-go核心组件的介绍,貌似是基于1.6的版本,但是大体思想是想通的。废话不多说,开始听别人讲吧!如何去访问kube...

2019-05-01 00:51:42 929

原创 kubectl-controller-manager之pod gc源码分析

目录问题关键代码kube-controller 相关启动参数源码分析PodGCController 结构体 及 controller 注册过程注册podgc controllerNewPodGC 方法Run函数GC过程gcTerminatedgcOrphanedgcUnscheduledTerminating完结问题当时遇到的问题是这样的...

2019-04-27 21:09:51 1197

原创 记一次线上数据库更新异常事件

目录背景排查思路背景上线时,发现第三方组件数据库返回的数据存在错误,导致平台数据库误更新。接下来一顿操作猛如虎,根据调用接口的返回值 直接撸代码查找线索。查找完之后,返现数据库更新的时间线索完全能够对的上,没有问题呀。第三方组件数据库更新是正常的,为什么调用时会返回数据不正确!懵逼了。小白选手,数据库仅仅停留在最基本的CRUD,数据库架构设计及性能方面很茫然!排查思...

2019-04-27 18:40:17 884

转载 深入解析 kubernetes 资源管理,容器云牛人有话说

目录Kubernetes 资源模型01 Kubernetes 是怎么定义资源的呢?02 Kubernetes 中有哪几类资源呢?Kubernetes 计算节点资源管理Kubernetes 如何确定可以使用的资源量呢?Capacity 和 allocatable 信息都是如何确定的呢?Allocatable 信息又是如何确认的呢?Kubernetes 是如何实现这一点...

2019-03-16 13:45:28 1810 1

原创 Kubernetes默认调度器的优先级与抢占机制

目录一、优先级和抢占机制解决的问题1、解决问题2、如何使用1) PriotityClass2) pod使用二、追踪代码分析优先级和抢占策略1、优先级和抢占体现2、调度器的抢占机制1)抢占者调度失败时间点怎么处理?2) 抢占过程3)抢占后三、两种情况参考本文主要介绍 Kubernetes调度器的重要机制:优先级(Priority )和抢占(Pr...

2019-03-03 19:49:14 2511

原创 Go语言---sync 包

sync包提供基本的同步原语,如互斥锁。 除了Once和WaitGroup类型之外,大多数类型都是供低级库例程使用的。经过通道和通信可以更好地完成更高级别的同步。互斥锁互斥锁用来保证在任一时刻,只能有一个线程函数访问某对象,保证共享数据的安全性防止竞态。Mutex 的初始值为解锁状态。Mutex 通常作为其它结构体的匿名字段使用,使该结构体具有 Lock 和 Unlock 方法。  Mutex 可...

2018-05-11 23:13:34 943

转载 Go并发编程总结

最近一直在看Go语言的并发编程,主要的书籍是 &lt;Go语言学习笔记&gt;。看完之后,看到网上这篇博客总结的不错,所讲的内容学习笔记上都有。Golang :不要通过共享内存来通信,而应该通过通信来共享内存。这句风靡在Go社区的话,说的就是 goroutine中的 channel。他在go并发编程中充当着类型安全的管道作用。1、通过golang中的 goroutine 与sync.Mutex进行...

2018-05-11 17:30:45 7955 4

原创 Go语言---fmt包

占位符普通占位符占位符 说明 举例 输出%v 相应值的默认格式。 Printf("%v", site),Printf("%+v", site) {...

2018-05-10 15:38:22 3446

原创 Go语言---unicode/utf8 unicode/utf16包

unicode/utf8包utf8实现了函数和常量来支持UTF-8编码的文本。它包括在runes和UTF-8字节序列之间转换的函数。utf8里面的函数就有一些字节和字符的转换。//判断是否符合UTF编码的函数// Valid 判断 p 是否为完整有效的 UTF8 编码序列。func Valid(p []byte) bool// ValidRune 判断 r 能否被正确的转换为 UTF8 编码...

2018-05-10 11:22:10 6393

转载 Go语言 — Unicode码点包

unicode介绍Unicode只是定义了一个字符和一个编码的映射,但是呢,对应的存储却没有制定。 比如一个编码0x0041代表大写字母A,那么可能有一种存储至少有4个字节,那可能0x00000041来存储代表A。 这个就是unicode的具体实现。unicode的具体实现有很多种,UTF-8和UTF-16就是其中两种。UTF-8表示最少用一个字节就能表示一个字符的编码实现。它采取的方式是对不同的...

2018-05-09 23:00:28 5296

原创 Go语言---strconv包

包strconv主要实现对字符串和基本数据类型之间的转换。基本数据类型包括:布尔、整型(包括有/无符号、二进制、八进制、十进制和十六进制)和浮点型等。------------------------------------------------------------------------------------------------------------strconv 包转换错误处理字符...

2018-05-09 20:28:16 21744

转载 Go语言---bytes包

该包定义了一些操作 byte slice 的便利操作。因为字符串可以表示为 []byte,因此,bytes 包定义的函数、方法等和 strings 包很类似,所以讲解时会和 strings 包类似甚至可以直接参考。 []byte 为 字节切片,byte---uint8类型。官方网址对这个包都有详细的示例,有助于更好地理解和使用。-----------------------------------...

2018-05-09 11:24:37 9496

转载 Go语言---strings包(字符串操作)

strings标准库包主要涉及字符串的基本操作。常见字符串的操作有:字符串求长度求子串是否存在某个字符或者子串子串出现的次数(字符串匹配)字符串分割(切分)成[]string字符串是否存在某个前缀或后缀字符或者子串在字符串中首次出现的位置或最后一次出现的位置通过某个字符串将[]string进行拼接字符串重复次数字符串中子串替换大小写转换......................等等一些基本操作。...

2018-05-08 21:57:58 39601 1

转载 Golang string和[]byte的对比

转载网址:https://www.cnblogs.com/zhangboyu/p/7623712.html为啥string和[]byte类型转换需要一定的代价?为啥内置函数copy会有一种特殊情况copy(dst []byte, src string) int?string和[]byte,底层都是数组,但为什么[]byte比string灵活,拼接性能也更高(动态字符串拼接性能对比)?今天看了源码探...

2018-05-08 15:41:56 10420

转载 Go错误处理---errors包以及Go记录日志---log包

Go错误处理---errors包1、error接口Go语言引入了一个关于错误处理的标准模式,即error接口,该接口定义:type error interface { Error() string } 对于大多数函数,如果要返回错误,大致可以定义为如下模式,将error作为多种返回值中的最后一个,但这并非是强制要求:func Foo(param int)(n int, err err...

2018-05-07 18:10:20 10868

原创 Go面向对象---音乐库案例

案例目的   演示Go语言面向对象编程特性,设计音乐播放器程序,此程序仅仅只是演示面向对象特性。关键流程:(1) 音乐库功能:使用者可以查看、添加和删除里面的音乐曲目;(2)、播放音乐;(3)、支持MP3和WAV,但也能随时扩展支持更多的音乐类型;(4)、退出程序。    程序主要接受以下命令(1)、音乐库管理命令:lib,包括list/add/remove命令(2)、播放管理:play命令,pl...

2018-05-07 14:52:41 622

原创 Go语言---函数返回局部变量地址

一、C语言中返回函数中局部变量值和指针(1) 在C语言中,一个函数可以直接返回函数中定义的局部变量,其实在函数返回后,局部变量是被系统自动回收的,因为局部变量是分配在栈空间,那为什么还可以返回局部变量,其实这里返回的是局部变量的副本(拷贝)。(2) 函数返回局部变量地址:局部变量内存分配在栈空间,因为函数返回后,系统自动回收了函数里定义的局部变量,所以运行时去访问一个被系统回收后的地址空间,一定就...

2018-05-05 21:10:52 6836 1

转载 《Go语言编程》---"面向对象编程"

面向对象编程Go 语言的面向对象编程(OOP)非常简洁而优雅。说它简洁,简介之处在于,它没有了OOP中很多概念,比如:继承、虚函数、构造函数和析构函数、隐藏的this指针等等。说它优雅,是它的面向对象(OOP)是语言类型系统(type system)中的天然的一部分。整个类型系统通过接口(interface)串联,浑然一体。类型系统(type system)很少有编程类的书籍谈及类型系统(type...

2018-05-05 17:31:13 455

转载 go是面向对象语言吗?

转载链接:https://segmentfault.com/a/1190000001832282#articleHeader5原文链接:http://spf13.com/post/is-go-object-oriented前言面向对象的含义引入了对象(object)、类(class)、继承(inheritance)、子类(subclass)、虚方法(virtual method)、协程(corou...

2018-05-05 15:02:41 19265 1

转载 go new和make的区别

Go语言中的内建函数new和make是两个用于内存分配的原语(allocation primitives)。简单来说,new只分配内存,make用于slice,map,和channel的初始化。 内置函数new按指定类型长度分配零值内存,返回指针,并不关心类型内部构造和初始化方式。内置函数make对引用类型进行创建,编译器会将make转换为目标类型专用的创建函数,以确保完成全部内存分配和相关属性初...

2018-05-04 21:16:14 7229

原创 Go语言中的值类型和引用类型

一、值类型和引用类型值类型:int、float、bool和string这些类型都属于值类型,使用这些类型的变量直接指向存在内存中的值,值类型的变量的值存储在栈中。当使用等号=将一个变量的值赋给另一个变量时,如 j = i ,实际上是在内存中将 i 的值进行了拷贝。可以通过 &amp;i 获取变量 i 的内存地址。  值拷贝引用类型:特指slice、map、channel这三种预定义类型。引用类型拥...

2018-05-04 20:50:10 7397 2

原创 golang-闭包实例详解

一、闭包的概念闭包可以理解成“定义在一个函数内部的函数“。在本质上,闭包是将函数内部和函数外部连接起来的桥梁。或者说是函数和其引用环境的组合体。闭包的概念可以直接百度或者google详细搜索详细,这里主要是通过几个实例来对闭包进行详解。二、闭包实例详解实例1//函数片段func add(base int) func(int) int { fmt.Printf("%p\n", &amp;bas...

2018-05-04 19:23:21 13789 1

转载 如何批量删除Docker中的容器?

1. 停用所有的容器docker stop $(docker ps -q)2. 删除全部未运行的容器(已经运行的删除不了,未运行的就一起被删除了)docker rm $(docker ps -aq)3. 一条命令实现停用并删除容器docker stop $(docker ps -q) &amp; docker rm $(docker ps -aq)4. 显示所有的容器,过滤出Exited状态的容器...

2018-04-17 22:54:18 3675 1

转载 ubuntu开机进入initramfs的解决办法

开机进入了initramfs界面,输入exit也没用。仔细看上面的原因,由于是不正确的关机方式导致出现文件系统出现错误:因此使用fsck/dev/sda1命令(具体是哪一块硬盘需要去看报错信息)然后一直按y,按了无数个y之后,最后出现FILE SYSTEM WAS MODIFIED这个的时候,就表示已经成功了,然后输入reboot\exit重启,就ok了。一定要及时拍摄快照!!!!...

2018-04-16 16:40:37 7242

转载 lsof命令

lsof (list open files)是一个列出当前系统打开文件的工具。在linux系统环境下,任何事物都可以以文件形式存在,通过文件不仅可以访问常规的数据,还可以访问网络连接和硬件。适应条件:lsof访问的是核心文件和各种文件,所以必须以root用户的身份运行才能充分发挥其功能。lsof [选项] [绝对路径的文件名]显示示例[root@localhost ~]# lsof /usr/sb...

2018-04-13 16:13:21 558

空空如也

空空如也

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

TA关注的人

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