自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 linux文件描述符文件/etc/security/limits.conf

文件描述符是什么?和文件句柄有啥区别?文件描述符是linux/unix操作系统中特有的概念。相当于windows系统中的文件句柄。一个意思不同叫法。Linux系统中, 每当进程打开一个文件时,系统就为其分配一个唯一的整型文件描述符,用来标识这个文件。标准C中每个进程默认打开的有三个文件,标准输入,标准输出,标准错误,分别用一个FILE结构的指针来表示,即stdin,stout,sterr,这三...

2020-03-19 14:34:20 80

原创 配置免密登录

配置免密登录参考如下:如一台数据库服务器配置到存储服务器172.18.3.88的backupzb用户的免密登录数据库服务器登录用户:root1)在数据库服务器中执行:ssh-keygen -t rsa;然后一路回车2)在数据库服务器中执行:ssh-copy-id -p22333 -i backupzb@172.18.3.88;然后输入backupzb的密码3)验证,执行命令:ssh -p...

2020-03-08 20:08:39 63

原创 安装linux自带jdk

如安装Java 1.8yum install java-1.8.0-openjdk.x86_64 -y安装完成后,可能会缺一些命令,如jps需要在安装yum install -y java-1.8.0-openjdk-devel.x86_64[root@centos01 ~]# yum list | grep jdk-develjava-1.8.0-openjdk-devel.x86_6...

2020-03-04 23:56:26 97

原创 k8s - DaemonSet

DaemonSet确保全部(或者一些)Node上运行一个Pod的副本。当有Node加入集群时,也会为他们新增一个Pod。当有Node从集群移除时,这些Pod也会被回收。删除DaemonSet将会删除它创建的所有Pod使用DaemonSet的一些典型用法:运行集群daemon,例如在每一个Node上运行glusterd/ceph在每一个Node上运行日志收集daemon,例如fluen...

2020-02-18 00:00:08 91

原创 k8s - deployment

Deployment 为 Pod 和 ReplicaSet 提供了一个声明式定义(declarative)方法,用来替代以前的ReplicationController 来方便的管理应用。典型的应用场景包括:1. 定义Deployment来创建Pod和ReplicaSet2. 滚动升级和回滚应用3. 扩容和缩容4. 暂停和继续DeploymentRS 与 Deployment 的关联...

2020-02-17 22:55:55 109

原创 k8s - postStart - preStop

[root@k8s-master01 k8s-test]# cat lifecyle.yaml apiVersion: v1kind: Podmetadata: name: lifecycle-demo namespace: defaultspec: containers: - name: lifecycle-demo-container image: kone.c...

2020-02-16 21:13:02 450

原创 k8s - livenessProbe - tcp存活性检测

yaml文件中定义检测端口为8090,因nginx启动为80端口,所以容器启动5秒后,开始检测,检测发起连接8090端口,1秒后超时检测失败[root@k8s-master01 k8s-test]# cat livenessProbe-tcp.yaml apiVersion: v1kind: Podmetadata: name: liveness-tcp namespace: de...

2020-02-16 20:42:45 587

原创 k8s - livenessProve - httpGet 存活性探测

[root@k8s-master01 k8s-test]# cat livenessProbe-httpget.yaml apiVersion: v1kind: Podmetadata: name: liveness-httpget-pod namespace: defaultspec: containers: - name: liveness-httpget-contai...

2020-02-16 20:21:49 387

原创 K8S - livenessProve - 存活性探测

livenessProbe: 是指容器是否正在运行。如果存活性探测失败,则kubelete会杀死容器,并且容器受重启策略的影响。如果容器不提供存活性探针,则默认状态为Success。[root@k8s-master01 k8s-test]# cat liveness.yaml apiVersion: v1kind: Podmetadata: name: liveness-exec-po...

2020-02-16 19:59:18 227

原创 K8S - 探针 - readinessProbe

readinessProbe: 指示容器是否准备好服务请求。如果就绪探针失败,端点控制器将从Pod匹配的所有Service的端点中删除该pod的IP地址。初始延迟之前的就绪状态默认为Failure。如果容器不提供就绪探针,则默认状态为Success。实验检测nginx容器的kone.html是否存在[root@k8s-master01 k8s-test]# cat readiness.yam...

2020-02-16 11:25:11 996

原创 将ClusterIP类型改为NodePort类型的一种方式

获取svc,查看nginx-deployment为ClusterIP类型[root@k8s-master01 ~]# kubectl get svcNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEkubernetes ClusterIP 10.96.0.1 ...

2020-02-14 20:41:02 401

转载 Mysql的备份方式与备份策略

转载自RealLuo并感谢1、MYSQL数据的备份方式有哪些?答:备份方式有:物理备份、逻辑备份、冷热备份;物理备份:通过系统自带命令进行复制cp或tar打包压缩的方式备份,也叫冷备份;逻辑备份:通过mysql自带服务或者额外安装软件进行备份;mysqldump 和 mysql冷热备份:在备份的过程中别人无法访问的叫冷备份,备份过程中也能访问的叫热备份;2、备份策略有哪些?答:备份...

2019-11-24 22:38:36 111

原创 博客记录

1. Prometheus监控学习笔记之教程推荐

2019-09-22 12:28:25 43

转载 prometheus - 简介

转载自Rainbowhhy并感谢1. Prometheus简介Prometheus又称之为普罗米修斯,是一个最初在SoundCloud上构建的开源系统监视和警报工具包。 自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有一个非常活跃的开发人员和用户社区 。 它现在是一个独立的开源项目,可以独立于任何公司进行维护。 Prometheus于2016年加入CNCF(云原生计...

2019-06-29 20:18:42 154

转载 prometheus - 数据采集exporter全家桶

转载自Rainbowhhy并感谢1. exporter介绍exporter是prometheus监控中重要的组成部分,负责数据指标的采集。上篇文章介绍了prometheus server的相关内容,本文将介绍数据采集插件。官方给出的插件有node_exporter、blackbox_exporter、mysqld_exporter、snmp_exporter等,第三方的插件有redis_exp...

2019-06-29 19:45:00 4344

原创 prometheus - 监控磁盘

节点导出器的磁盘使用指标位于以node_filesystem为前缀的指标列表中node_filesystem_size_bytes度量显示正在被监控的每个文件系统挂载的大小。磁盘空间百分比(node_filesystem_size_bytes {mountpoint ="/"} - node_filesystem_free_bytes {mountpoint ="/"}) /node_f...

2019-06-29 17:14:08 4709 1

原创 Prometheus - 监控docker容器

安装cadvisor

2019-06-09 16:21:01 1152

原创 Prometheus - 监控节点

node_exporter下载tar xf node_exporter-0.18.1.linux-amd64.tar.gzcd node_exporter-0.18.1.linux-amd64/cp node_exporter /usr/local/bin/查看版本root@server03:~/media/prometheus/node_exporter-0.18.1.linux-a...

2019-06-09 16:17:00 1327

原创 Prometheus

wget https://github.com/prometheus/prometheus/releases/download/v2.5.0/prometheus 2.5.0.linux amd64.tar.gztar xf prometheus 2.5.0.linux amd64.tar.gzcp prometheus 2.5.0.linux amd64/{ prometheus,pro...

2019-06-09 11:48:54 637 1

原创 简化Kubernetes应用部署工具

简化Kubernetes应用部署工具-Helm简介简化Kubernetes应用部署工具-Helm安装简化Kubernetes应用部署工具-Helm之应用部署简化Kubernetes应用部署工具-Helm之Release配置简化Kubernetes应用部署工具-Helm之Hookhelm dependencychart repo...

2019-06-02 11:59:33 88

原创 Pod操作时序

2019-06-02 09:34:28 63

原创 Pod的生命周期

一个pod可以有以一下几种状态挂起(Pending):Pod 已被 Kubernetes 系统接受,但有一个或者多个容器镜像尚未创建。等待时间包括Pod被调度时间和通过网络下载镜像时间。运行中(Running):该 Pod 已经绑定到了一个节点上,Pod 中所有的容器都已被创建。至少有一个容器正在运行,或者正处于启动或重启状态成功(Successed):Pod 中的所有容器都被成功终止,并...

2019-05-31 22:26:34 513

原创 k8s - 静态pod

静态pod介绍在Kubernetes中有一个DaemonSet类型的pod,这种类型的pod可以在某个节点上长期运行,这种类型的pod就是静态pod。静态pod直接由某个节点上的kubelet程序进行管理,不需要api server介入,静态pod也不需要关联任何RC,完全是由kubelet程序来监控,当kubelet发现静态pod停止掉的时候,重新启动静态pod。静态pod创建静态pod...

2019-05-31 22:19:49 2179

原创 k8s - 环境搭建指引

https://github.com/opsnull/follow-me-install-kubernetes-cluster

2019-05-31 21:27:02 37

原创 k8s - 容器生命周期内的Hook

Hook分类Kubernetes为容器在其生命周期内提供了两种钩子(hook),分别是postStart与preStop两种事件:PostStart:在容器启动之后,PostStart hook会立即被执行,但需要注意的是,容器里的ENTRYPOINT与PostStart hook的执行顺序谁先谁后并不确定。PreStop:在容器被终止之前被执行,采用一种阻塞式的方式,也就是必须在PreSt...

2019-05-31 16:59:24 749

原创 K8S - 容器探针(Probe)

对线上业务来说,保证服务的正常稳定是重中之重,对故障服务的及时处理避免影响业务以及快速恢复一直是开发运维的难点。Kubernetes提供了健康检查服务,对于检测到故障服务会被及时自动下线,以及通过重启服务的方式使服务自动恢复。使用Liveness及Readness探针Liveness探针:主要用于判断Container是否处于运行状态,比如当服务crash或者死锁等情况发生时,kubelet会...

2019-05-31 16:53:52 2660

原创 lsyncd 实时同步

https://linux.cn/article-5849-1.htmlhttps://www.cnblogs.com/hjfeng1988/p/8919679.html

2019-05-31 11:54:57 208

原创 CI/CD流程图

CI/CD实践在gitlab上定义WebHooc事件,若发生push到GitLab操作,则触发Jenkins的JobJenkins从GitLab拉取代码,静态分析,启动服务,单元测试,构建镜像,推送到Docker仓库:Harbor仓库等动作docker builddocker push在同一个Jenkins的pipeline中,docker push之后,定义一个新的stage用以发...

2019-05-26 23:25:47 3162

原创 Jenkins执行git命令报错:Host key verification failed.

Jenkins通过pipeline获取代码的时候,报错stderr: Host key verification failed.报错日志如下:[Pipeline] { (获取代码)[Pipeline] echostart fetch code from git: ssh://git@192.168.174.133:2222/Bruce/ops132.git[Pipeline] delet...

2019-05-26 15:44:46 4993

原创 Gitlab + Jenkins + Harbor

Jenkins:192.168.174.132/etc/init.d/./jenkins startGitLab192.168.174.133/home/wfq/gitlabsh start.sh

2019-05-26 15:36:10 247

原创 Jenkins的两个设置

系统管理 - 全局安全配置 - CSRF Protection把这个勾选项去掉,从Gitlab到Jenkins是跨站点的启用安全 - 授权策略 - 登录用户可以做任何事 匿名用户具有可读权限把这两项勾选上 登录用户可以做任何事 匿名用户具有可读权限如下截图所示...

2019-05-26 11:31:33 77

原创 pod一种访问方式

访问kubernetes-bootcamp-6b7849c495-9drpb这个podroot@server02:~# kubectl get podNAME READY STATUS RESTARTS AGEkubernetes-bootcamp-6b7849c495-9drpb 1/1 ...

2019-05-19 15:50:23 67

转载 k8s设计理念

摘自慕课1. API设计原则系统的api设计是一个系统的灵魂,整个复杂的系统都会隐藏在api下面,也都会随着api的变化而变化,如果api设计的不好,底层系统就不可能做的好K8s所有的api都是声明式的如,要pod扩容为2个实例,只需要将replicaset指定为2就可以了从概念上来说声明式,是对于重复的操作是稳定的,所有的api对象都是名词,而不是动词如,service/pod,以...

2019-05-12 12:33:14 176

原创 k8s各个服务和执行流程介绍

Master节点部署的都是kubernetes的核心模块APIServer提供资源操作的唯一入口,并且提供认证/授权/kubernets的访问控制可以通过kubectl和自己开发的客户端,通过http的请求通过restapi的形式来访问apiserver,从而实现对整个集群的控制ControllerManager负责维护整个集群的状态,如,故障检测/扩缩容/滚动更新等Schedule...

2019-05-12 11:45:26 1854

原创 k8s service

kubectl create service clusterip wfq-svc-cp --tcp=80:8080kubectl create service nodeport wfq-svc-np --tcp=1234:80kubectl create service clusterip wfq-svc-headless --clusterip="None"root@server02:~...

2019-05-08 20:28:31 73

转载 k8s Tolerations:允许Pod 调度到有特定taints 的Node 上

Tolerations:允许Pod 调度到有特定taints 的Node 上

2019-05-04 20:20:07 381

转载 k8s taints 避免Pod 调度到特定Node 上

Taints:避免Pod 调度到特定Node 上带effect的特殊label,对Pod有排斥性–硬性排斥NoSchedule–软性排斥PreferNoSchedule系统创建的taint附带时间戳–effect为NoExecute–便于触发对Pod的超时驱逐典型用法:预留特殊节点做特殊用途给node添加taintkubectl taint node node-n1 foo...

2019-05-04 20:14:57 1058

原创 k8s通过podAntiAffinity调度方式创建pod

官网136服务器,yaml文件:/root/demo/pod-anti-affinity.yamlapiVersion: v1kind: Podmetadata: name: pod-anti-affinity labels: anti-affinity-demo: anti-affinity-demo-yahahaspec: affinity: podAn...

2019-05-04 09:13:29 2981 4

原创 k8s通过nodeSelector调度方式创建pod

最好的指导是官网了为135服务器配置labelkubectl label node 192.168.174.135 label_key_135=label_value_135yaml文件:/root/demo/pod-nodeselector.yamlapiVersion: v1kind: Podmetadata: name: demo-node-selector label...

2019-05-04 08:26:53 5325

原创 k8s通过podaffinity调度方式创建pod

136服务器/root/demo/pod-affinity.yamlapiVersion: v1kind: Podmetadata: name: pod-affinityspec: affinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelec...

2019-05-03 17:24:25 827

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