- 博客(26)
- 资源 (69)
- 收藏
- 关注
原创 Pod的生命周期
一个pod可以有以一下几种状态挂起(Pending):Pod 已被 Kubernetes 系统接受,但有一个或者多个容器镜像尚未创建。等待时间包括Pod被调度时间和通过网络下载镜像时间。运行中(Running):该 Pod 已经绑定到了一个节点上,Pod 中所有的容器都已被创建。至少有一个容器正在运行,或者正处于启动或重启状态成功(Successed):Pod 中的所有容器都被成功终止,并...
2019-05-31 22:26:34 1225
原创 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 5374 6
原创 k8s - 环境搭建指引
https://github.com/opsnull/follow-me-install-kubernetes-cluster
2019-05-31 21:27:02 152
原创 k8s - 容器生命周期内的Hook
Hook分类Kubernetes为容器在其生命周期内提供了两种钩子(hook),分别是postStart与preStop两种事件:PostStart:在容器启动之后,PostStart hook会立即被执行,但需要注意的是,容器里的ENTRYPOINT与PostStart hook的执行顺序谁先谁后并不确定。PreStop:在容器被终止之前被执行,采用一种阻塞式的方式,也就是必须在PreSt...
2019-05-31 16:59:24 2291
原创 K8S - 容器探针(Probe)
对线上业务来说,保证服务的正常稳定是重中之重,对故障服务的及时处理避免影响业务以及快速恢复一直是开发运维的难点。Kubernetes提供了健康检查服务,对于检测到故障服务会被及时自动下线,以及通过重启服务的方式使服务自动恢复。使用Liveness及Readness探针Liveness探针:主要用于判断Container是否处于运行状态,比如当服务crash或者死锁等情况发生时,kubelet会...
2019-05-31 16:53:52 15263
原创 lsyncd 实时同步
https://linux.cn/article-5849-1.htmlhttps://www.cnblogs.com/hjfeng1988/p/8919679.html
2019-05-31 11:54:57 454
原创 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 9432
原创 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 12996
原创 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 475
原创 Jenkins的两个设置
系统管理 - 全局安全配置 - CSRF Protection把这个勾选项去掉,从Gitlab到Jenkins是跨站点的启用安全 - 授权策略 - 登录用户可以做任何事 匿名用户具有可读权限把这两项勾选上 登录用户可以做任何事 匿名用户具有可读权限如下截图所示...
2019-05-26 11:31:33 216
原创 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 176
转载 k8s设计理念
摘自慕课1. API设计原则系统的api设计是一个系统的灵魂,整个复杂的系统都会隐藏在api下面,也都会随着api的变化而变化,如果api设计的不好,底层系统就不可能做的好K8s所有的api都是声明式的如,要pod扩容为2个实例,只需要将replicaset指定为2就可以了从概念上来说声明式,是对于重复的操作是稳定的,所有的api对象都是名词,而不是动词如,service/pod,以...
2019-05-12 12:33:14 632
原创 k8s各个服务和执行流程介绍
Master节点部署的都是kubernetes的核心模块APIServer提供资源操作的唯一入口,并且提供认证/授权/kubernets的访问控制可以通过kubectl和自己开发的客户端,通过http的请求通过restapi的形式来访问apiserver,从而实现对整个集群的控制ControllerManager负责维护整个集群的状态,如,故障检测/扩缩容/滚动更新等Schedule...
2019-05-12 11:45:26 5100
原创 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 232
转载 k8s Tolerations:允许Pod 调度到有特定taints 的Node 上
Tolerations:允许Pod 调度到有特定taints 的Node 上
2019-05-04 20:20:07 800
转载 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 2616
原创 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 11526 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 10427
原创 k8s通过podaffinity调度方式创建pod
136服务器/root/demo/pod-affinity.yamlapiVersion: v1kind: Podmetadata: name: pod-affinityspec: affinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelec...
2019-05-03 17:24:25 2363
转载 Kubernetes基本概念之Label
转载并感谢Label是Kubernetes系统中的一个核心概念。Label以key/value键值对的形式附加到任何对象上,如Pod,Service,Node,RC(ReplicationController)/RS(ReplicaSet)等。Label可以在创建对象时就附加到对象上,也可以在对象创建后通过API进行额外添加或修改。在为对象定义好Label后,其他对象就可以通过Label来对对...
2019-05-03 16:15:34 507
转载 k8s查看容器日志---查看运行中指定pod以及指定pod中容器的日志
1、查看指定pod的日志kubectl logs <pod_name>kubectl logs -f <pod_name> #类似tail -f的方式查看(tail -f 实时查看日志文件 tail -f 日志文件log)2、查看指定pod中指定容器的日志kubectl logs <pod_name> -c <container_name>...
2019-05-03 14:45:54 21569
原创 k8s通过nodeaffinity调度方式创建pod
官网文档介绍通过下图简要介绍在node节点135上配置的label:key-affinity-label=value-affinity-labelroot@server01:~# kubectl label node 192.168.174.135 key-affinity-label=value-affinity-labelnode "192.168.174.135" labeled...
2019-05-03 14:39:18 1466
原创 k8s对node添加Label
参考在某些特殊情况下,需要将某些服务固定在一台宿主机上, k8s可以使用label给node节点打上标签来满足这种需求.Label添加删除和修改添加label语法kubectl label nodes <node-name> <label-key>=<label-value> 删除label语法kubectl label nodes <n...
2019-05-03 12:28:37 22146
原创 K8S手动调度Pod
手动调度Pod(不经过调度器)适用场景调度器不工作时,临时救急封装实现自定义调度器小故事过去几个版本的Daemonset都是由controller直接指定pod的运行节点,不经过调度器。直到1.11版本,DaemonSet的pod由scheduler调度才作为alpha特性引入136服务器/root/demo/manual_schedule.yamlapiVersion:...
2019-05-03 11:11:22 3388
转载 理解Kubernetes核心概念
转载本文将会简单介绍Kubernetes的核心概念。因为这些定义可以在Kubernetes的文档中找到,所以文章也会避免用大段的枯燥的文字介绍。相反,我们会使用一些图表(其中一些是动画)和示例来解释这些概念。我们发现一些概念(比如Service)如果没有图表的辅助就很难全面地理解。在合适的地方我们也会提供Kubernetes文档的链接以便读者深入学习。什么是Kubernetes?Kubern...
2019-05-01 12:59:58 130
csv.js导出csv格式文件
2016-01-05
struts2生成验证码_
2015-12-26
struts2生成验证码
2015-12-26
viewpagerindicator2
2015-06-30
viewpagerindicator
2015-06-30
contentprovider_demo
2015-06-30
android加载大图片
2015-06-25
Android中ListView分页加载数据
2015-06-13
android滑动菜单
2015-06-02
36个漂亮的各类型网站源代码
2013-06-26
实现一个函数来来对目标字符串进行校验,使其满足以下全部条件
2018-11-22
docker-compose运行python web服务相关资源
2018-11-04
redis cluster配置文件
2018-08-12
python国际化demo
2016-09-23
彗星dns优化器
2016-09-17
nginx安装相关
2016-04-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人