- 博客(30)
- 收藏
- 关注
转载 在k8s+jenkins+github+dockerhub环境中用pipeline部署应用
用k8s+jenkins+github+dockerhub部署应用:jenkins有两种方式实现CI/CD1、自由风格,通过shell代码实现2、pipeline流水线,通过jenkins代码或者jenkinsfile文件实现Pipeline 有两种创建方法:1、可以直接在 Jenkins 的 Web UI 界面中输入jenkins代码;2、也可以通过创建一个 Jenkinsfile 脚本文件放入...
2019-09-05 16:59:17
724
转载 在k8s中安装jenkins并实现动态生成 jenkins slave
安装jenkins1、创建一个命名空间$ kubectl create namespace kube-ops2、为jenkins创建pvc(也可以使用存储类创建)apiVersion: v1kind: PersistentVolumemetadata: name: opspvspec: capacity: storage: 2Gi accessModes: - Re...
2019-09-04 11:34:22
2156
转载 用heapster实现HPA
Horizontal Pod Autoscaling(Pod水平自动伸缩),简称HPA。HAP通过监控分析RC或者Deployment控制的所有Pod的负载变化情况来确定是否需要调整Pod的副本数量,这是HPA最基本的原理。HPA在kubernetes集群中被设计成一个controller,HPA Controller默认30s轮询一次(可通过kube-controller-manager的标志-...
2019-08-31 20:16:28
245
转载 k8s中的pod控制器之Deployment、DaemonSet、StatefulSet
pod控制器分类:1、ReplicationController2、ReplicaSet3、Deployment4、StatefulSet5、DaemonSet6、Job,Cronjob7、HPApod控制器:一般包括3部分1、标签选择器2、期望的副本数(DaemonSet控制器不需要)3、pod模板deploy控制器构建于rs控制器之上,新特性包括:1、事件和状态查看2、回滚3、版本记录4、暂停...
2019-08-31 10:26:10
4243
转载 k8s集群中的rbac权限管理
启用RBAC,需要在 apiserver 中添加参数--authorization-mode=RBAC,如果使用的kubeadm安装的集群,1.6 版本以上的都默认开启了RBAC查看是否开启:$ cat /etc/kubernetes/manifests/kube-apiserver.yamlspec: containers: - command: - kube-apiserve...
2019-08-30 12:24:31
783
转载 配置Grafana用于prometheus
安装Grafana$ docker pull grafana/grafana:5.3.41、准备pvcapiVersion: v1kind: PersistentVolumemetadata: name: grafanaspec: capacity: storage: 1Gi accessModes: - ReadWriteOnce persistentVolu...
2019-08-28 09:01:45
578
转载 用prometheus监控容器、apiserver以及自动发现并监控服务
使用内置的cAdvisor监控容器cAdvisor已经内置在了 kubelet 组件之中,所以我们不需要单独去安装,cAdvisor的数据路径为/api/v1/nodes/<node>/proxy/metrics1、增加job,更新prometheus配置- job_name: 'kubernetes-cadvisor' kubernetes_sd_configs: - ro...
2019-08-26 20:08:55
1265
转载 使用prometheus监控traefik、redis、k8s集群各节点、各节点kubelet
1、Prometheus的数据指标是通过一个公开的 HTTP(S) 数据接口获取到的,我们不需要单独安装监控的 agent,只需要暴露一个 metrics 接口,Prometheus 就会定期去拉取数据;对于一些普通的 HTTP 服务,我们完全可以直接重用这个服务,添加一个/metrics接口暴露给 Prometheus2、有一些服务即使没有原生集成该接口,也完全可以使用一些 exporter 来...
2019-08-26 12:10:43
2607
转载 在k8s集群中安装prometheus
在早期的版本中 Kubernetes 提供了 heapster、influxDB、grafana 的组合来监控系统,现在更加流行的监控工具是 prometheus,prometheus 是 Google 内部监控报警系统的开源版本Kubernetes 集群的监控方案目前主要有以下几种方案:1、Heapster:Heapster 是一个集群范围的监控和数据聚合工具,以 Pod 的形式运行在集群中。...
2019-08-24 14:14:28
417
转载 k8s集群中的EFK日志搜集系统
Kubernetes 集群本身不提供日志收集的解决方案,一般来说有主要的3种方案来做日志收集:1、在每个节点上运行一个 agent 来收集日志由于这种 agent 必须在每个节点上运行,所以直接使用 DaemonSet 控制器运行该应用程序即可这种方法也仅仅适用于收集输出到 stdout 和 stderr 的应用程序日志简单来说,本方式就是在每个node上各运行一个日志代理容器,对本节点/var/...
2019-08-24 07:42:45
119
转载 使用nfs在k8s集群中实现持久化存储
准备NFS服务192.168.1.244$ yum -y install nfs-utils rpcbind$ systemctl start nfs-server rpcbind$ systemctl enable nfs-server rpcbind$ mkdir -p /data/k8s$ cd /data/k8s$ echo 11111111 > index.html$ vim /e...
2019-08-22 15:46:39
472
转载 k8s集群中的存储持久化概述
存储分类:直连式存储,集中式共享存储,分布式存储文件存储,块存储,对象存储DAS,NAS,SANDAS属于直连式存储,将存储设备通过SCSI接口或者光纤通道直接和主板连接,不能实现数据共享NAS和SAN属于集中式共享存储NAS使用NFS和CIFS(原来叫SMB,微软的)协议SAN分为FC SAN和IP SANIP SAN使用iSCSI技术NFS实现linux之间共享,smaba基于CIFS协议,实...
2019-08-22 10:56:29
402
转载 k8s集群中的ingress----基于nginx实现
基于nginx创建ingress1、创建基于nginx的ingress控制器pod及svc$ docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller:0.25.0$ wget https://github.com/kubernetes/ingress-nginx/blob/ma...
2019-08-21 13:09:00
137
转载 k8s集群中的ingress---基于traefik
为了对外发布pod内的应用,k8s支持两种负载均衡机制1、一种是service,用于实现四层TCP负载均衡service主要实现集群内部通信,以及基于四层的内外通信(如端口)2、另一种是ingress,用户实现七层HTTP负载均衡ingress主要实现基于七层的内外通信(如URL)ingress仅仅是一组路由规则的集合,它需要借助ingress控制器才能发挥作用ingress控制器不受contro...
2019-08-21 08:48:17
698
转载 k8s集群中的service
k8s集群内部服务发现的方式有两种:1、通过变量发现只能获取相同namespace里的变量变量的获取有先后顺序,引用的变量必须要先创建2、通过DNS的方式发现在kube-system里有dns,可以自动发现所有命名空间里的服务的clusterIP所以,在同一个命名空间里,一个服务访问另外一个服务的时候,可以直接通过服务名来访问只要创建了一个服务(不管在哪个ns里创建的),都会自动向kube-sys...
2019-08-19 09:49:34
821
转载 k8s集群架构和概念简述
k8s集群一般由master节点、node节点、etcd数据库、独立存储组成。生产环境总,master节台至少有3台,etcd可以安装在单独的服务器上,也可以安装在master节点上。etcd是保存集群状态的数据库。k8s调度的最小逻辑单元是pod,而pod由一个或多个业务容器和一个根容器(Pause 容器)组成,主要有4类pod:1、kube-system空间内的系统pod2、在master上...
2019-08-17 18:43:59
1008
转载 ELK操作手册----安装elasticssearch
基础架构测试kibana1.244----elasticsearch1.21和1.22----logstash(tomcat)1.23将软件上传到服务器192.168.1.21上$ cd /usr/local/src/$ lselasticsearch-6.5.1.rpm jdk-8u191-linux-x64.rpm准备硬盘用于存储日志数据$ fdisk -l$ fdisk /dev/sdb...
2019-08-11 10:41:26
166
转载 常用的ELK/EFK架构
基础架构:1/ Kibana---->elasticsearch---->Logstash(收集)2/ Kibana---->elasticsearch---->filebeat(收集)3/ Kibana---->elasticsearch---->Logstash(过滤)---->filebeat(收集)扩展架构:1/ Kibana---->...
2019-08-10 12:22:46
593
转载 docker容器资源限制及监控
docker stats name #查看容器的资源使用情况限制内存docker run -d -p 8088:8080 --name=monitor -m 200M hub.c.163.com/xbingo/cadvisor:latest限制容器运行在某个cpu上docker run -d -p 8088:8080 --name=monitor -m 200M --cpuset-cpus=...
2019-08-03 11:15:08
356
转载 Docker基础操作
有关镜像的操作#docker search centos #搜索镜像#docker image ls#docker images#docker image rm name/id #删除镜像查看镜像、容器、数据卷所占用的空间 # docker system dfdocker history nginx #查看镜像修改历史有关容器的操作docker contai...
2019-07-31 19:02:38
97
转载 用registry搭建私有镜像仓库
在192.168.1.244上搭建私有仓库#docker pull registry#docker run -d -p 5000:5000 -v /data/myregistry:/var/lib/registry --restart=always --name myregistry registry#vim /etc/docker/daemon.json{ "registry-...
2019-07-30 19:49:05
163
转载 Docker数据持久化简述
Docker中的数据持久化方式有两种:数据卷(Data Volumes)挂载主机目录 (Bind mounts)数据卷:数据卷可以在容器之间共享和重用对数据卷 的修改会立马生效对数据卷 的更新,不会影响镜像数据卷默认会一直存在,即使容器被删除$ docker volume create my-vol #创建数据卷$ docker volume ls #查看有哪些卷$ docker v...
2019-07-30 16:57:49
136
转载 Docker的网络模式简述
创建docker容器时,可选的网络模式有4种Bridge模式(默认模式)Host 模式Container 模式None模式bridge模式是 docker 的默认网络模式,不写–net参数,就是bridge模式。当Docker进程启动时,会在主机上创建一个名为docker0的虚拟网桥,此主机上启动的Docker容器会连接到这个虚拟网桥上。docker0网桥的ip是172.17.0.1/24,该网...
2019-07-30 15:41:42
123
转载 传统云环境下的CI/CD操作手册(七)用slave节点实现分布式jenkins
在jenkins-slave上操作cd /usr/local/srctar xvf jdk-7u79-linux-x64.tar.gzln -sv /usr/local/src/jdk1.7.0_79 /usr/local/jdkvim /etc/profileexport JAVA_HOME=/usr/local/jdkexport PATH=$JAVA_HOME/bin:$JAVA_HOME/...
2019-07-26 09:54:23
416
转载 传统云环境下的CI/CD操作手册(六)jenkins手动构建示例及实现自动触发构建
构建项目位置/var/lib/jenkins/workspace/jenkins_project_name手动构建:1 新建自由风格jenkins项目---构建---执行shellrm -rf project1/git clone git@192.168.1.14:group1/project1.git ssh 192.168.1.17 "/etc/init.d/tomcat stop"ssh ...
2019-07-25 21:15:16
278
转载 传统云环境下的CI/CD操作手册(五)配置jenkins
安装配置jenkinscd /usr/local/src/tar xvf jdk-7u79-linux-x64.tar.gzln -sv /usr/local/src/jdk1.7.0_79 /usr/local/jdkvim /etc/profileexport JAVA_HOME=/usr/local/jdkexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/b...
2019-07-25 18:43:44
112
转载 传统云环境下的CI/CD操作手册(四)配置gitlab
版本控制(代码管理)工具1 CVS2 SVN 集中式版本控制系统只有一个远程代码库,所有程序员都需要联网才能把代码推送到服务器上3 Gitlab 分布式版本控制系统有一个远程代码库,每个程序员都可以从远程克隆一个本地代码库,可以离线工作,当然,每个程序员都是有限定权限的,只能克隆有权限的代码部分安装配置下载gitlab-ce上传到服务器上yum -y install gitlab-ce...
2019-07-25 13:19:26
232
转载 传统云环境下的CI/CD操作手册(三)配置keepalived和haproxy
准备yum源cd /etc/yum.repos.d/rm -rf *wget http://mirrors.aliyun.com/repo/Centos-7.repowget http://mirrors.163.com/.help/CentOS7-Base-163.repowget http://mirrors.aliyun.com/repo/epel-7.repoyum repolist配置...
2019-07-24 13:58:44
205
转载 传统云环境下的CI/CD操作手册(二)配置tomcat
首先准备jdk环境mkdir /apps && cd /apps上传jdk压缩包到/apps内tar xvf jdk-7u79-linux-x64.tar.gzln -sv /apps/jdk1.7.0_79 /apps/jdkvim /etc/profileexport export LANG="en_US.utf-8"export JAVA_HOME=/apps/jdkexpo...
2019-07-23 22:11:19
169
转载 传统云环境下的CI/CD操作手册(一)系统架构概述
系统逻辑架构:git客户端----gitlab----主jenkins----从jenkins----两台haproxy----两台tomcat物理架构:git客户端----192.168.1.244gitlab----192.168.1.14主从jenkins和两台haproxy共用----192.168.1.15和192.168.1.16两台tomcat----192.168.1.17和19...
2019-07-23 21:35:54
257
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人