自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 nightingale-0-介绍&单机二进制部署

Nightingale | 夜莺监控,一款先进的开源云原生监控分析系统,采用 All-In-One 的设计,集数据采集、可视化、监控告警、数据分析于一体,与云原生生态紧密集成,提供开箱即用的企业级监控分析和告警能力。于 2022 年 5 月 11 日,捐赠予中国计算机学会开源发展委员会(CCF ODC),为 CCF ODC 成立后接受捐赠的首个开源项目。

2023-04-19 17:36:52 835 1

原创 Kubernetes中的探针机制

k8s探针

2022-09-01 11:26:45 686

原创 Docker常见问题处理

docker问题汇总

2022-06-25 12:16:11 2346

原创 Bond多网卡-CentOS

Linux网卡高可用Bond技术的使用Bond的概念实现原理确定是否支持bondingbond的模式配置bond配置物理网卡配置逻辑网卡bond0加载模块,让系统支持bonding加载bond module,重启网卡查看绑定结果测试bond0网卡Bond的概念网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡冗余,带宽扩容和负载均衡。kernel2.4.12及以后的版本均供bonding模块,以前的版本可以通过patch实现。实现原理网卡工作在混杂(promisc)模式,接收到网卡的所有数据

2022-02-20 23:43:04 646

原创 为什么禁止root用户启动服务

为什么禁止root用户启动服务

2021-10-15 09:13:44 450

原创 关于kuberntes证书过期的解决方案

关于kuberntes证书过期的解决方案方案一确认一下所有证书的过期时间一定要先备份旧的家目录下的config文件重命名,拷贝新的admin.conf到家目录下重启etcd、scheduler、controller、apiserver方案二今天刚接收公司的k8s测试集群,就接到一个锅:证书过期了。心里奔腾了一万个马xxxxxx。话说活儿还得自己干呐方案一/etc/kubernetes/pki/apiserver.crt #1年有效期/etc/kubernetes/pki

2021-09-08 17:27:10 206

原创 Windos 2008 R2中安装配置NG、MySQL、Tomcat

Windos 2008 R2中安装配置NG、MySQL、Tomcat安装包准备安装解压缩MySQL修改环境变量在MySQL目录下创建my.ini文件安装初始化启动,修改密码Tomcat修改环境变量启动测试优化Nginx启动测试优化安装包准备先去官网下载所需要的安装包MySQLJDKTomcatNginx安装解压缩创建一个文件夹,为了方便管理,将压缩文件都解压缩到该目录下,jdk也安装到这个目录MySQL修改环境变量控制面板 – 系统 – 高级系统设置 – 环境变量 – 新建MYS

2021-08-27 14:20:30 257

原创 Python--test

pymysql连接数据库#!/usr/local/bin/python3#coding=utf-8import pymysqldb=pymysql.connect(host="localhost", user="root", password="123456", database="test",charset="utf8mb4")cursor=db.cursor()cursor.execute("select * from sys.version;")data= cursor.f

2021-06-15 00:40:22 842 4

原创 shell三剑客

shell三剑客sedgrepawksedsed是一种流编辑器,也是文本处理非常好的工具,配合正则使用更加强大处理时,把当前处理的行存储在临时的缓冲区中,称为“模式空间”,接着sed命令处理缓冲区的内容,完成后输出到屏幕,接着处理下一行常用参数-e #以指定的指令来处理输入的文本文件-n #取消默认输出-h #帮助-V #显示版本信息常用命令aicdsgrep文本查找或搜索工具awk...

2021-06-10 03:06:26 529

原创 NGINX-榨干单机Nginx性能的诀窍

榨干单机Nginx性能的诀窍Nginx架构图异步非阻塞模型事件驱动模型Nginx性能优化方法论别让OS限制了NGINX的性能缓冲队列文件句柄数可用端口数提升CPU使用效率合适的worker进程数CPU亲和增加worker进程的CPU使用时间减少CPU开销提升网络效率连接复用使用Cachegzip压缩开启proxy_buffering提升磁盘IO效率更换SSDaccess/error loggingSendfile零拷贝AIO/Thread pools定位性能瓶颈实战默认配置优化连接数限制优化worker数量

2021-05-31 22:14:06 721

原创 Nginx-负载均衡

NGINX负载均衡Ngnix-负载均衡基本配置报文头修改行为服务器获取真实客户端IPProxy中的buffer行为QuestionProxy cache行为Proxy_cache指令Request Tracing负载均衡的参数连接限制 limit_req根据客户端IP地址分流多worker协同:zone访问控制/IP ACLJWT认证JWT认证:本地Key认证JWT认证:外部Key/cacheSubrequest纯外部认证Ngnix-负载均衡在多台服务器之间有效地分配客户端请求或网络负载通过仅向正常

2021-05-31 20:01:36 14250

原创 Nginx-变量 && TLS/SSL配置

NginxNginx变量概述内置变量内置变量是否可以重新赋值使用变量Set设置自定义变量set自定义变量作用域set变量与子请求变量mappingMap中让结果变量取值本身具备动态性map缓存map缓存-强制刷新参数其他重要的变量举例NGINX API(NGINX Plus)API配置持久化TLS/SSL在Nginx中的应用NGINX SSL基本配置介绍SSL 会话卸载SNI支持基于SNI的证书的lazy loadingSSL Session CachingSSL Session Ticket如何升级ngi

2021-05-30 21:17:40 1071

原创 Nginx----基础篇

NginxNginx软件概述Nginx安装使用操作系统软件仓库Ubuntu、DebianCentOSNginx OSS仓库安装Nginx OSS仓库:CentOS/RHELNginx OSS仓库:SUSE源码安装Nginx模块默认编译模块重要的非默认预编译模块动态模块安装Nginx Plus启动遇到的问题配置文件默认主配置文件日志文件nginx.conf.exampleServer配置块listen指令default_server参数Server_name指令Server_name中的正则表达式questi

2021-05-28 16:11:56 503

原创 脚本--shell

shell脚本定时清空文件内容,定时记录文件大小检测网卡流量,并按照规定格式记录在日志中从FTP服务器下载文件检测Nginx访问日志502情况,并作相应动作扫描主机端口状态iptables自动屏蔽网站频繁访问的IP屏蔽每分钟访问次数超过200的IP定时清空文件内容,定时记录文件大小$!/bin/bash##################每小时执行一次脚本(定时计划任务),当时间为0点或者12点时,将目标目录下的所有文件内容清空,但不删除文件,其他时间只统计各个文件的大小,一个文件一行,输出到以时间

2021-05-20 19:08:27 342

原创 K8s弃用docker???

K8s弃用Docker??Docker daemon(dockerd)containerddocker-shimrunc当看到这个消息身为刚学会Docker的我无非当头一棒,表面风轻云淡的,心里已经在祝母亲节快乐了。看大佬们一顿分析K8s弃用Docker无非两个原因,Kubernetes底层用的是容器技术,并非是Docker。还有就是Kubernetes使用的CRI直接可以调用containerd,使用Docker的话还会有一层的资源浪费。不过Kubernetes也还有CRI-O接口,可以对接各种容器技术

2021-05-09 12:09:16 818

原创 Docker分层--示例

docker分层优化为什么使用Docker?容器技术和传统虚拟机技术对比DockerfilePythonGolangnodejsJavaDocker整个生命周期来源为什么使用Docker?更高效的利用系统资源更快速的启动时间一致的运行环境持续交付和部署更轻松的迁移更轻松的维护和扩展容器技术和传统虚拟机技术对比特性容器虚拟机启动秒级分钟级别占用空间一般为MB一般为GB性能接近原生消耗20-30系统支持量单机支持上千个容器一般为几十

2021-05-09 11:26:28 139

原创 Docker-镜像的缓存和容器中的信号

Dokcer高级Docker底层技术优化Docker镜像镜像Cache机制Cache机制注意事项容器中的应用优雅的退出进程的退出容器中的信号Docker底层技术Linux ContainerCgroupNameSpaceChrootOverlay FSIptablesBridge优化Docker镜像旧版本的docker是不支持multi-stage的,只有17.05以及之后的版本才开始支持镜像Cache机制Docker daemon通过dockerfile构建镜像时,当发现即将新

2021-05-09 10:13:04 333

原创 Prometheus

Prometheus概念时间序列数据特点时序数据库(TSDB)Pronetheus的主要特征组件GrafanaFrafana UIPrometheus+AlterManager+Grafana概念Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包 。自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发人员和用户社区。现在,它是一个独立的开源项目,并且独立于任何公司进行维护。为了强调这一点并阐明该项目的治理结构,Prometheus在20

2021-05-07 02:23:51 905

原创 Docker私有仓库harbor搭建

Harbor私有仓库搭建复习Harbor-企业级Docker私有仓库安装docker-compose安装Harbor上传镜像Harbor原理介绍Harbor特性Harbor认证过程Harbor认证流程复习容器创建时需要指定镜像,每个镜像都有唯一的标识ImageID,和容器的Container ID一样,默认128位,可以使用前16为缩略形式,也可以使用镜像名与版本号两部分组合唯一标识,如果省略版本号,默认使用最新版本标签latest镜像的分层:Docker的镜像通过联合文件系统(Union FileS

2021-05-07 02:21:11 436

原创 Docker的资源限制

Docker的资源限制Cgroup简介Cgroup子系统资源限制内存资源限制CPU资源限制Cgroup简介Linux Cgroup全称Linux Control Group。是Linux内核的一个功能,用来限制、控制与分离一个进程组群的资源(如CPU、内存、磁盘输出输出等)。这个项目最早是有Google的工程师在2006年发起,最早的名称为进程容器(process containers)。在2007奶奶时,因为在Linux内核中,容器这个名词台过广泛,为避免混乱,被重命名为cgroup,并被合并到2.

2021-05-06 23:11:52 83

原创 Docker-compose

Docker compose安装docker compose安装docker composegithub下载sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-composegithub应该会很慢,可以用daocloud下载sudo curl -L https://get.daocl

2021-05-06 21:36:49 93 1

原创 Docker网络

Docker的网络Docker网络通讯网络类型host模式container模式none模式bridge模式自定义网络通讯Docker网络通讯Docker通讯是通过Docker0(Bridge)网桥和DNAT转换实现的Docker使用Linux桥接,再宿主机虚拟一个Docker0网桥,Docker每启动一个容器会根据Docker网桥的网段分配给容器一个IP地址,Docker0网桥是每个容器的默认网关。因为在同一个宿主机都接入同一个网桥,这样容器之间就能够通过容器的IP直接通信、Docker网桥是

2021-05-06 21:29:24 114

原创 Dokcer数据管理

Docker数据管理遗留问题容器的特性问题Docker存储驱动(storage driver)数据卷的作用数据卷的使用Docker-managed Volume(Docker管理卷)(匿名挂载)Bind-mount Volume(绑定卷)(指定路径挂载)Union Volume(容器卷)遗留问题容器的特性Docker镜像由多个只读层叠加而成,启动容器时,Docker会加载只读镜像层并在镜像栈顶部增加一个读写层如果运行中的容器修改了现有的一个已经存在的文件,那么该文件将会从读写层下面的只读层复制到读

2021-05-03 22:19:10 53

原创 Docker镜像的封装

Docker镜像封装使用commit命令封装DockerfileDockerfile是什么?Dockerfile的指令使用Dockerfile怎么用?使用commit命令封装首先下载一个centos的镜像docker pull centosdokcer run -it centos发现没有ifconfig命令,然后yum了一个,安装好以后退出容器yum -y install net-toolsexitdocker commit 容器id 新镜像:tagdocker run -it 新

2021-05-03 20:57:19 814

原创 Docker的镜像

Docker镜像Docker镜像是什么Docker镜像加载原理UnionFS(联合文件系统)加载原理镜像为什么比虚拟机小。分层(layer)Docker镜像是什么镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时,库、环境变量和配置文件。Docker镜像加载原理Docker的镜像通过联合文件系统(UnionFS)将各层文件系统叠加。bootfs:用于系统引导的文件系统,包括bootloader和kernel,容器启

2021-05-03 12:38:32 171

原创 Docker的基本命令和组成

Docker的基本命令和组成Docker的基本组成Docker命令辅助命令镜像命令容器命令操作命令Docker的基本组成镜像(image):就是一个只读模板。镜像可以用来创建Docker容器,一个镜像可以创建很多容器。类似Java中的类和对象,类就是镜像,容器就是对象。容器(container):容器是又镜像创建的运行实例。容器可以被启动,开始,停止,删除。每个容器都是相互隔离的,保证安全的平台。仓库(repository):仓库是存放镜像文件的地方。仓库分为公有仓库和私有仓库。最大的公有仓库是D

2021-05-03 11:18:13 131

原创 Docker的安装

Docker的安装Docker安装安装环境安装方法yum安装RPM包安装脚本安装Docker(不建议使用)安装成功后设置阿里云的镜像加速卸载Docker补充Docker安装CentOS官方安装指引文档安装环境操作系统:CentOS 7内核:建议3.10以上# 卸载旧版本Dockeryum remove docker \ docker-client \ docker-client-latest \ docker-common \

2021-05-02 22:13:42 58

原创 Docker概述和安装

Docker笔记Docker概述Docker为什么会出现Docker历史Docker是什么Docker的作用虚拟机技术容器化技术DevOps(开发、运维)Docker安装Docker的基本组成Docker命令镜像命令容器命令操作命令Docker镜像Docker数据卷DockerfileDocker网络原型Docker Compose容器编排弱小和无知不是生存的障碍,傲慢才是。Docker概述Docker为什么会出现配置环境麻烦:测试环境和生产环境的部署,应用的配置等对于运维人员来说工作量十分庞大

2021-05-02 21:11:37 233 2

原创 Java堆内存溢出解决方案

Java堆内存溢出的问题引言堆内存工作原理移除永久代?分代是什么?为什么分代?为什么Survivor分为两块相等大小的幸存空间?JVM堆内存常用参数垃圾回收算法垃圾收集器串行收集器并行收集器CMS收集器G1收集器垃圾收集器参数为什么会堆内存溢出OOM常见的几个原因熟悉了JAVA内存管理机制及配置参数,下面是对JAVA应用启动选项调优配置:总结引言现在做的这个项目后端代码用的是Java语言的,我们用的Tomcat来盛放Java代码。这段时间老是遇到Java堆内存溢出的问题。所以我就查了很多知识,赶紧过来先

2021-04-29 19:12:44 2125

原创 tcpdump详解

一、Tcpdump简介Tcpdum是Linux上强大的网络数据采集分析工具 1.1 第一种类型的关键字:host net port host 210.27.48.3指明 210.27.48.3是一台主机 net202.0.0.0 指明202.0.0.0 是一个网络地址 port 23 指明端口23 1.2 第二种确定传输方向的关键字,主要包括 src,dst,dst or src,dst and src。这些关键字指明了传输的方

2021-04-26 20:33:45 83440 1

原创 Linux基础

@[TOC]Linux基础知识Linux启动流程BIOS加电自检引导加载程序(GRUB)加载映像到内存执行init进程。init进程是OS启动的第一个进程。init的工作就是根据/etc/inittab执行相应的脚本,进行初始化。查看系统端口占用以及网络情况netstat -tlunp 查看所有监听的端口netstat -s 查看网络统计信息ifconfig 查看所有网络接口的属性route -n 查看路由表文件权限r:可读 w:可写 x:可执行 -:无权限使用 ls -

2021-04-26 20:29:04 34

原创 和java朋友聊天的总结

和java朋友的闲聊JVM概念主要功能JVM规范作用调优调优工具MyBatis延时加载(懒加载)概念使用场景Redis和MySQL数据不一致问题Redis工作流程问题点缓存和数据库一致性解决方案采用延时双删策略异步更新缓存(基于订阅binglog的同步机制)Redis性能优化操作系统层面Redis自身优化MySQL优化JVM概念Java Virtual Machine,Java虚拟机。通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境的计算机系统。JVM是通过软件来模拟Java字节码的指令集

2021-04-20 00:56:56 100

原创 Kubernetes-13 K8s中的Helm

K8s的HelmHelm介绍Helm的组成及架构Helm部署下载压缩包 [.](https://storage.googleapis.com/kubernetes-helm/helm-v2.13.1-linux-amd64.tar.gz)为tiller创建Service AccountHelm介绍在没有使用helm之前,向Kubernetes部署应用,我们要一次部署deployment、svc等,步骤繁琐。并且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm通过打包的方式,支持

2021-04-10 01:56:12 249

原创 Kubernetes-12 K8s的持久化存储

Kubernetes的持久化存储前言卷的类型emptyDiremptyDir的用法hostPathhostPath的用法PersistentVolume(PV)和PersistentVolumeClaim(PVC)概念静态PV和动态PV静态PV动态PV绑定持久卷声明的保护持久卷类型PV的访问模式回收策略 |前言容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet会重启它,但是容器中的文件将会丢失----容器以干净的状态(镜像最

2021-04-06 20:08:56 115

原创 Kubernetes-11 K8s的Ingress

Kubernetes的Ingress前言Ingress和Pod的关系Ingress工作流程部署使用Ingress首先创建一个Nginx的Deployment和SVC和Tomcat的Deployent和SVC部署Ingress-Nginx在hosts文件加入解析的域名Ingress HTTPS代理访问创建证书,以及cert存储方式配置Deployment、Service、IngressNginx进行BasicAuth认证安装httpd软件包,创建认证文件,Secret配置yaml文件Nginx重写前言如果

2021-04-04 00:37:00 191 1

原创 Kubernetes-10 K8s集群安全机制

Kuberetes集群安全机制概述认证(Authentication)HTTPS证书认证需要认证的节点两种类型:证书颁发:kubeconfigServiceAccountSercert和SA的关系认证总结鉴权RBAC介绍RBAC的API资源对象说明Role and ClusterRoleRoleBinding and ClusterRoleBindingResourcesto Subjects准入控制概述Kubernetes作为一个分布式集群的管理员,保证集群的安全性是其一个重要的任务。API Serv

2021-04-02 23:46:11 190

原创 Kubernetes-9 配置管理configMap

Kubernetes的存储部分复习简介创建ConfigMap通过命令行参数--from-literal创建通过文件创建通过目录创建通过yaml文件创建使用ConfigMap通过环境变量使用1通过valueFrom、configMapKeyRef、name、key指定要的key:2 通过envFrom、configMapRef、name使得configmap中所有的key/value对都自动变成环境变量:在启动命令中引用作为volume挂在使用复习写到这里突然想复习一下之前的内容,我脑子笨学好几个月了还每

2021-03-31 00:57:35 515

原创 Kubernetes-8 K8s的Service

kubernetes的核心技术Service这里写个前言吧Service存在的意义防止Pod失联(服务发现)定义Pod访问策略(负载均衡)Pod和Service的关系Service常用类型举例注意这里写个前言吧前面我们了解到Deployment只是保证了支撑服务的微服务Pod的数量,但是没有解决如何访问这些服务的问题。一个Pod只是一个运行服务的实例,随时可能在一个节点上停止,在另一个节点以一个新的IP启动一个新的Pod,因此不能以确定的IP的和端口号提供服务。要稳定的提供服务需要服务发现和负载均衡能

2021-03-29 20:46:25 188

原创 Kubernetes-7 K8s的Controller

Kubernetes核心技术-Controller什么是ControllerPod和ControllerDeployment控制器应用Deployment部署应用使用yaml创建Pod升级回滚和弹性伸缩应用升级和回滚查看升级状态查看历史版版本应用回滚弹性伸缩什么是ControllerController是在集群上管理和运行容器的对象,Controller是实际存在的,Pod是虚拟的Pod和ControllerPod是通过Controller实现应用的运维,不如弹性伸缩、滚动更新等Pod和Contr

2021-03-29 03:27:40 640

原创 Kubernetes-6 k8s的Pod#

kubernetes的核心技术--PodPod概述Pod基本概念Pod存在的意义Pod实现机制共享网络共享存储Pod镜像拉取策略Pod资源限制Pod重启机制Pod健康检查Pod调度策略创建Pod流程影响Pod调度的属性根据request找到足够node节点进行调度节点选择器标签亲和性污点和容忍概述场景查看污点情况污点容忍Pod概述Pod是K8s系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或者部署的最小资源对象模型,也是在K8s上运行容器化应用的资源对象,其他的资源对象都是用来支撑或者扩展P

2021-03-27 15:45:31 125

空空如也

空空如也

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

TA关注的人

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