自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (6)
  • 收藏
  • 关注

原创 MySQL创建数据库并支持中文字符

我们首先看一下MySQL官方文档:5.7CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [create_option] ...create_option: [DEFAULT] { CHARACTER SET [=] charset_name | COLLATE [=] collation_name}通过查看mysql服务器的变量我们知道mysql默认创建数据库开启的字符集是latinl:现在我们需要给创建的数据库db2

2021-01-23 11:37:12 6544 6

原创 shell 常用命令总结

它确保在任何命令失败时立即停止脚本执行,检测未定义的变量,输出每个命令的执行情况,并将整个管道视为失败,如果其中一个命令失败。: 如果管道中的任何一个命令失败(退出状态码非零),则整个管道的退出状态码为非零。默认情况下,管道的退出状态码是最后一个命令的退出状态码。: 如果任何命令的退出状态码非零(表示命令执行失败),则立即停止脚本的执行。这对于调试脚本很有用,可以查看每个命令的执行情况。: 当访问未定义的变量时,会引发错误并停止脚本的执行。,可以确保在管道中任何一个命令失败时,整个管道被认为是失败的。

2023-06-06 10:26:24 660

原创 使用 kube-prometheus(release-0.6) 监控 Kubernetes v1.18.20

Prometheus的本职就是一组用户自定义的CRD资源以及Controller的实现,负责监听这些自定义资源的变化,并且根据这些资源的定义自动化的完成如自身以及配置的自动化管理工作。以下是的架构图。prometheus-operator官方地址:https://github.com/prometheus-operator/prometheus-operator。

2022-12-22 16:03:28 932 1

原创 kubernetes 集群中的 node 上为啥需要资源预留?

kubernetes 的节点可以按照 Capacity 调度。默认情况下 Pod 能够使用节点全部可用容量。这是个问题,因为节点通常情况下还运行不少驱动操作系统和kubernetes 集群系统的守护进程(system daemons)。除非为这些系统守护进程留出资源,否则它们将会与 pod 争夺资源并导致节点资源短缺问题。按照是否为 Pod,可以把计算节点的进程分为两类:没有预留的情况下,也就是我们使用kubeadm 工具默认部署好的请求下如果没有资源预留,k8s 默认认为宿主机上所有的资源(RAM、C

2022-12-08 09:44:29 685

原创 如何让多个Pod均匀部署到各个节点上?

Kubernetes 中kube-scheduler 组件负责 Pod 的调度,对每一个新创建的 Pod 或者是未被调度的 Pod,kube-scheduler 会选择一个最优的节点去运行这个 Pod。过滤阶段会将所有满足 Pod 调度需求的节点都选出来,在打分阶段 kube-scheduler 会给每一个可调度节点进行优先级打分,最后 kube-scheduer 会将 Pod 调度到得分最高的节点上,如果存在多个得分最高的节点,kube-scheduler 会从其中随机选取一个。

2022-11-21 21:48:37 1105

原创 Kubernetes 在部署 metrics-server 的时候报错

在 kubernetes 1.18.20 集群上部署 Metrics-Server 的时候出现了如下的错误:

2022-11-20 13:23:48 1248

原创 Jenkins 添加 Slave Agent 节点时报类文件不匹配错误

Jenkins Server 的控制面板上添加 Slave 未能成功添加,报 Java runtime 类文件的版本不匹配

2022-11-19 12:54:27 2275 2

原创 Redis 如何查看版本

【代码】Redis 如何查看版本。

2022-11-17 16:31:47 1067

原创 生产环境部署高可用 Kubernetes 集群

下面是 kubernetes 官网的集群架构图The kubeadm method is used to build a high-availability k8s cluster. The high availability of the k8s cluster is actually the high availability of the core components of k8s. This deployment adopts the active-standby mode. The archi

2022-11-13 13:31:18 1370

原创 Upgrade k8s single master to multi-master cluster

如果上面的操作都一切顺利,最后一步是将上面的集群配置信息保存到集群的 kubeadm-config 这个 ConfigMap 中去,这一点非常重要,这样以后当我们使用 kubeadm 来操作集群的时候,相关的数据不会丢失,比如升级的时候还是会带上 certSANs 中的数据进行签名的。通过上面的命令可以查看到 APIServer 签名的 DNS 和 IP 地址信息,一定要和自己的目标签名信息进行对比,如果缺失了数据就需要在上面的 certSANs 中补齐,重新生成证书。重启kube-proxy。

2022-11-11 13:04:57 3890

翻译 docker-compose 与 docker 兼容性矩阵

本身也在发布计划中,如 Compose 版本中所示,但文件格式版本不一定随每个版本增加。例如,Compose 文件格式 3.0 在。下面的表格是 Compose 文件所支持的指定的 docker 发行版。Compose 文件格式有多个版本:1、2、2.x、和 3.x。除了表中显示的 Compose 文件格式版本外,中首次引入,并在后续版本中逐步进行版本化。

2022-11-03 09:08:46 2072

原创 Ingress 资源与 networking.k8s.io/v1 问题

官方文档:https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/、https://kubernetes.io/blog/2021/07/26/update-with-ingress-nginx/ 和。这个v1beta1 版本中来,至于什么时候开始这个 networking.k8s.io/v1beta1 这个beta版本变成了稳定版本,可以看。版本下, 我们ingress 的yaml 里,有些。, e.g ,下面我们需要修改我们的。

2022-10-14 15:09:39 4724

原创 运维面试-nginx

Nginx—Ngine X,是一款免费的、自由的、开源的、高性能HTTP服务器和反向代理服务器;也是一个IMAP、POP3、SMTP代理服务器;Nginx以其高性能、稳定性、丰富的功能、简单的配置和低资源消耗而闻名。也就是说Nginx本身就可以托管网站(类似于Tomcat一样),进行Http服务处理,也可以作为反向代理服务器 、负载均衡器和HTTP缓存。Nginx 解决了服务器的C10K(就是在一秒之内连接客户端的数目为10k即1万)问题。

2022-10-08 16:11:06 835

原创 Linux查看服务开机自启动那些事

1 检查某个服务是否设置开机自启动Centos7系统下服务我们都知道设置开机自启动的命令systemctl enable servicename,由于过了很长时间我们不记得了起初部署的启动的时候是否设置了开机自启动,这时我们需要如何判断某个服务目前是否处于开启自启动状态呢?某个 xxx 服务如果设置了开机自启动,那么就会在目录/etc/systemd/system/multi-user.target.wants下生成一个对应的软连接文件,这个软连接指向目录/usr/lib/systemd/system/

2022-05-29 19:05:26 4944

原创 强制删除kubernetes中的处于Terminating状态的资源

1 强制删除 kubernetes 中的pod 资源# pod处于 Terminating 状态,先查看该pod是否有对应的deployment资源和replicaset资源,如果有这两种资源先删除这两种资源kubectl delete deployment <deploy-name> -n namespacekubectl delete rc <rc-name -n> namespace# 再去删除podkubectl delete pod <pod-name&gt

2022-05-25 20:47:04 1002

原创 git操作问题总结

1 this exceeds GitHub Enterprise’s file size limit of 100.00 MB1.1 问题如下1.2 通过下面的方式解决1.2.1 先查看一下最近提交的commit的版本号git log1.2.2 依次撤销commitgit reset xxxx # 提交大文件前的version1.2.3 添加 .gitignore 文件**把大文件写入 .gitignore 文件中1.2.4 重新提交git add .git commit -

2022-02-13 10:36:43 315

原创 shell工作常用脚本

删除nginx20天前的日志#!/bin/bashdir=/home/nginx/logsfind $dir -name '*.access.log' -mtime +20 -exec rm -f {} \;nginx日志中取出访问频率前十的ipawk '{print $1}' /home/nginx/logs/access.log | sort | uniq -c | sort -nr -k1 | head -n 10...

2022-02-13 10:35:05 239

原创 docker-compose部署EFK

1 整体目录结构root@shutang:/home/shutang/docker-scripts# tree log-scripts/log-scripts/|-- README.MD|-- curator| |-- Dockerfile| |-- curator_prod.yml| |-- curator_qa.yml| |-- delete_indices.yml| `-- docker-compose.yml|-- docker-compose.yml|--

2022-02-11 11:49:31 1855

原创 docker-compose.yml 中设置环境变量

在部署apache-druid的遇到需要在启动容器的时候设置 DRUID_SKIP_PORT_CHECK=1,解决办法如下:version: '3'services: druid: image: dockerhub.paypalcorp.com/cim/druid:0.22.1 environment: # 设置环境变量 - DRUID_SKIP_PORT_CHECK=1 entrypoin

2022-02-10 19:36:02 1449

翻译 ClickHouse分区常用操作

1 DETACH PARTITIONMoves a partition to the detached directory and forget it.ALTER TABLE table_name DETACH PARTITION|PART partition_expr将指定分区的所有数据移动到分离目录。服务器忘记了分离的数据分区,就好像它不存在一样。在您进行 ATTACH 查询之前,服务器不会知道这些数据。例如:ALTER TABLE mt DETACH PARTITION '2020-11-

2021-12-21 16:08:33 2409

原创 docker快速部署相关服务

1 部署 portainerdocker run --name=portainerui --privileged=true -p 19000:19000 -v /var/run/docker.sock:/var/run/docker.sock -d portainer/portainer2 部署mysql5.7docker run --name mysql57 -d -e MYSQL_ROOT_PASSWORD=nihaoma -v /data1/mysql_data/mysql:/var/lib

2021-12-21 15:05:38 501

原创 docker工作常用操作和命令

1 排查docker容器占用的磁盘空间1.1 docker system[ci-user@druid-test-1 ~]$ docker system dfTYPE TOTAL ACTIVE SIZE RECLAIMABLEImages 4 1 5.682GB 4.9

2021-10-30 15:08:55 151

转载 rsync算法原理和工作流程分析

本文通过示例详细分析rsync算法原理和rsync的工作流程,是对rsync官方技术报告和官方推荐文章的解释。本文不会介绍如何使用rsync命令,而是详细解释它如何实现高效的增量传输。以下是rsync系列篇:1.rsync(一): rsync基本使用2.rsync(二): rsync冷备份3.rsync(三): inotify+rsync详细说明和sersync4.rsync算法原理和工作流程分析在开始分析算法原理之前,简单说明下rsync的增量传输功能。假设待传输文件为A,如果目标路径下没有

2021-09-10 12:57:29 1201

原创 clickhouse冷备份

clickhouse 冷备份采用rysnc的工作模式为:不同机器的操作利用远程机器 rsync 程序 拷贝本地内容到远程机器# 针对该模式的命令样例rsync -av /data/clickhouse user@remoteip::clickhouse# 实际操作中rsync客户端命令如下rsync --port=10000 --bwlimit=10240 --progress -avz --password-file=/etc/rsync.pass /mnt/disks/2/data/ rs

2021-09-10 12:53:18 481

原创 Rsync基本使用

rsyncrsync 全名 Remote Sync, 是类 unix 系统下的数据镜像备份工具。可以方便的实现本地,远程备份,rsync 提供了丰富的选项来控制其行为。rsync 优于其他工具的重要一点就是支持增量备份。rsync 是一个功能非常强大的工具,其命令也有很多功能选项,它的特性如下:可以保持文件原来的权限、时间、所有者、组信息、软硬链接等等可以从远程或者本地镜像保存整个目录树和文件系统无须特殊权限 super-user 即可安装使用快速:要比 scp (Secure Copy) 要快

2021-09-10 12:29:14 809

原创 rsync错误问题整理

客户端执行命令报错 @ERROR: setgroups failed客户端执行命令如下:[yuatang@dev8 ~]$ rsync --port=10000 --bwlimit=20000 --progress -avz --password-file=/etc/rsync.pass /mnt/disks/2/a/ rsyncuser@10.176.6.24::clickhouse@ERROR: setgroups failedrsync error: error starting client

2021-09-10 08:44:25 716

原创 linux下 scp 和 ssh 命令

scp、ssh、sshpass命令scp 命令Linux scp 命令用于Linux之间复制文件和目录。scp 是secure copy 的缩写,scp 是linux系统下基于ssh登录进行安全的远程文件拷贝命令。scp是加密的,rcp是不加密的,scp是rcp的加强版。语法root@node02:~# scp helpusage: scp [-346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l lim

2021-08-21 22:35:02 4105 1

原创 普通用户执行docker命令,用不用sudo由你决定

当我们用root身份在服务器部署docker后,如果想用普通用户操作docker应该如何做呢?[root@shanghai-aliyun ~]# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAME

2021-08-20 23:08:03 1069

原创 linux下snmp编译安装

Linux系统安装部署SNMP一、安装SNMP​ 1 下载 net-snap 的源码包# 访问下面链接,下载你需要的版本https://sourceforge.net/projects/net-snmp/files/net-snmp/wget https://sourceforge.net/projects/net-snmp/files/net-snmp/5.5.2.1/net-snmp-5.5.2.1.tar.gz​ 2 上传 net-snap-5.5.2.1.tar.gz 到服务器tar

2021-06-16 21:16:59 924

原创 k8s部署redis报错:MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable

在k8s集群中部署redis时报错:The Deployment "redis" is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app":"redis"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable报错原因:在同一个命名空间已经部署一个相同name的deployme

2021-03-23 15:23:50 3267

原创 centos7系统安装py3

#!/bin/bashcentos7安装python3cd /usr/local/srcwget https://www.python.org/ftp/python/3.7.8/Python-3.7.8.tgztar -zxf Python-3.7.8.tgz -C /usr/localln -s /usr/local/Python-3.7.8 /usr/local/python安装依赖包yum -y install zlib-devel bzip2-devel openssl-devel

2021-03-19 16:45:07 101

原创 kubesphere应用商店问题

系统环境kubernetes版本kubesphere版本ubuntu18.04v1.18.5v3.0.0我是先通过kubeadm工具安装的一个master两个node,然后kubesphere的官方文档在此基础上直接安装的kubesphere。在安装好后,访问web界面的时候,出现如下报错:查看日志:root@k8smaster1:~# kubectl get all -n openpitrix-systemNAME ...

2021-02-08 10:46:53 1058

原创 Makefile文件中的 .PHONY 的作用

我们可以看到即使不要.PHONY这一行,make proto 命令也是正常执行,那 .PHONY 的作用究竟是什么呢?我先在Makefile的同级目录下建一个文件名为 proto 文件。.PHONY后面跟的目标都被称为伪目标,也就是说我们 make 命令后面跟的参数如果出现在.PHONY 定义的伪目标中,那就直接在Makefile中就执行伪目标的依赖和命令。不管Makefile同级目录下是否有该伪目标同名的文件,即使有也不会产生冲突。另一个就是提高执行makefile时的效率。如果该篇文章对..

2021-01-29 13:37:36 403

原创 GO项目运行关于包导入的问题

Go项目启动: package not in GOROOT 和 import cycle not allowed[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-25N8IAFu-1611827512010)(D:\练习文件夹\docker\GO项目运行关于包导入的问题.assets\image-20210128170718283.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-47cB3dlu-1611827512012)(D:\练

2021-01-28 18:00:40 310

原创 离线一键部署k8s

ubuntu 18.04.5上shell脚本离线一键部署k8s-v1.18.5注意事项(单master存在单点故障,生产环境慎用)三台ubuntu18.04.5系统,主机名不要相同,保证时间相同在内网机器中,需要单独找一台部署机来执行脚本,保证部署机器与要部署三台节点正常通信修改4个文件的IP数组,start.sh、./scripts/deploy-machine-node.sh、./scripts/nodex.txt、./scripts/install-kuboard.sh默认IP数组中的第一

2021-01-22 10:23:26 1415

原创 k8sv1.18.x版本更改证书时间

kubernetes更改证书时间使用kubeadm按照的k8s,所有的证书都是放在 /etc/kubernetes/pki这个目录下的,我们可以查看每个证书的时间,会发现ca证书除外,其他组件证书都是默认一年有效期,ca类型的证书的有效期为10年。root@k8smaster1:~# kubeadm alpha certs check-expiration[check-expiration] Reading configuration from the cluster...[check-expira

2021-01-22 09:12:17 884

原创 cc1.exe: sorry, unimplemented: 64-bit mode not compiled in

cc1.exe: sorry, unimplemented: 64-bit mode not compiled ingo get -u gorm.io/driver/sqlite报错:cc1.exe: sorry, unimplemented: 64-bit mode not compiled in64位的window系统安装了32位的gcc编译器参考这篇:https://www.cnblogs.com/ghj1976/p/3540257.html或者直接下载安装下面这个:https://j

2021-01-22 00:01:16 281

原创 tensorflow2.1之gpu和cpu问题

安装nezha环境遇到的问题项目组开发了一个grpc的项目涉及到机器学习框架tensorflow,我把这个项目代码拉取下来需要放到本地跑客户端来连接部署在远程k8s集群中的server端。首先我就需要对requirements.txt中需要用到的软件包进行批量安装前戏pip install -r requirements.txt在安装过程中出现下面一系列问题,好在都通过pip命令进行解决了ERROR: After October 2020 you may experience errors w

2020-11-27 10:25:52 1237 2

原创 centos7.8kubeadm部署单master集群

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BXpbftDK-1606442885894)(C:\Users\shupe\AppData\Roaming\Typora\typora-user-images\image-20201118151644396.png)]为了满足开发人员的各个版本的 kubeflow对k8s的需求,选择1.14.5 版本的 kubernetes.kubeadm 单集群部署 kubernetes-1.14.5实现环境:主机名IP地址

2020-11-27 10:10:25 785 1

原创 python中的 __del__ 方法:销毁对象

函数中的__del__() 方法: 销毁对象Python 通过调用__init__()方法构造当前类的实例化对象,而__del__() 方法,是用来销毁实例化对象。事实上在编写程序时,如果之前我们创建的类实例化对象后续程序不再使用,最好在合适位置手动将其销毁,释放其占用的内存空间(整个过程称为垃圾回收 (简称:GC))。大多数情况下,Python开发者不需要手动进行垃圾回收,因为Python有自动的垃圾回收机制,能将不需要使用的实例对象进行销毁。实例一# -*- coding:utf8 -*-cl

2020-07-25 23:02:05 5058 7

rhel-server-6.9-x86_64-dvd-iso.txt

redhat6.9 iso文件 txt文件中是百度网盘的链接和提取码

2021-06-16

rhel-server-6.5-x86_64-dvd-iso.txt

redhat6.5 iso文件 txt文件中是百度网盘分享链接和提取码

2021-06-16

rhel-server-7.3-x86_64-dvd-iso.txt

redhat7.3 iso文件,资源在百度网盘中,文件中是百度网盘分享链接和提取码

2021-06-16

rhel-server-6.8-x86_64-dvd-iso.txt

redhat-server-6.8 iso文件 资源在百度网盘中

2021-06-16

rhel6.6.txt

rhel-server-6.6-dvd.iso文件

2021-06-16

shell-auto-deploy-k8s.tar.gz

docker离线安装依赖包,kubelet、kubectl、kubeadm离线安装依赖包

2021-01-22

空空如也

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

TA关注的人

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