05 2021 档案
摘要:基于Kubernetes的DevOps平台实践 持续集成工具: Jenkins gitlabci Tekton DevOps、CI、CD介绍 Continuous Integration (CI) / Continuous Delivery (CD) 软件交付流程 一个软件从零开始到最终交付,大概包
阅读全文
摘要:Prometheus实现k8s集群的服务监控 Prometheus 是一个开源监控系统,它本身已经成为了云原生中指标监控的事实标准 。 k8s集群监控体系演变史 第一版本:Cadvisor+InfluxDB+Grafana 只能从主机维度进行采集,没有Namespace、Pod等维度的汇聚功能 第二
阅读全文
摘要:k8s日志收集架构 https://kubernetes.io/docs/concepts/cluster-administration/logging/ 总体分为三种方式: 使用在每个节点上运行的节点级日志记录代理。 在应用程序的 pod 中,包含专门记录日志的 sidecar 容器。 将日志直接
阅读全文
摘要:认识Helm 为什么有helm? Helm是什么? kubernetes的包管理器,“可以将Helm看作Linux系统下的apt-get/yum”。 对于应用发布者而言,可以通过Helm打包应用,管理应用依赖关系,管理应用版本并发布应用到软件仓库。 对于使用者而言,使用Helm后不用需要了解Kube
阅读全文
摘要:PV与PVC快速入门 k8s存储的目的就是保证Pod重建后,数据不丢失。简单的数据持久化的下述方式: emptyDir apiVersion: v1 kind: Pod metadata: name: test-pd spec: containers: - image: k8s.gcr.io/tes
阅读全文
摘要:HPA控制器介绍 当系统资源过高的时候,我们可以使用如下命令来实现 Pod 的扩缩容功能 $ kubectl -n luffy scale deployment myblog --replicas=2 但是这个过程是手动操作的。在实际项目中,我们需要做到是的是一个自动化感知并自动扩容的操作。Kube
阅读全文
摘要:APIServer安全控制 Authentication:身份认证 这个环节它面对的输入是整个http request,负责对来自client的请求进行身份校验,支持的方法包括: basic auth client证书验证(https双向验证) jwt token(用于serviceaccount)
阅读全文
摘要:Kubernetes集群的网络实现 CNI介绍及集群网络选型 容器网络接口(Container Network Interface),实现kubernetes集群的Pod网络通信及管理。包括: CNI Plugin负责给容器配置网络,它包括两个基本的接口: 配置网络: AddNetwork(net
阅读全文
摘要:Kubernetes调度 为何要控制Pod应该如何调度 集群中有些机器的配置高(SSD,更好的内存等),我们希望核心的服务(比如说数据库)运行在上面 某两个服务的网络传输很频繁,我们希望它们最好在同一台机器上 ...... Kubernetes Scheduler 的作用是将待调度的 Pod 按照一
阅读全文
摘要:纯容器模式的问题 业务容器数量庞大,哪些容器部署在哪些节点,使用了哪些端口,如何记录、管理,需要登录到每台机器去管理? 跨主机通信,多个机器中的容器之间相互调用如何做,iptables规则手动维护? 跨主机容器间互相调用,配置如何写?写死固定IP+端口? 如何实现业务高可用?多个容器对外提供服务如何
阅读全文
摘要:1. 节点规划 部署k8s集群的节点按照用途可以划分为如下2类角色: master:集群的master节点,集群的初始化节点,基础配置不低于2C4G slave:集群的slave节点,可以多台,基础配置不低于2C4G 本例为了演示slave节点的添加,会部署一台master+2台slave,节点规划
阅读全文
摘要:###Kubectl 常用操作 如何查找非 running 状态的 Pod 呢? kubectl get pods -A --field-selector=status.phase!=Running | grep -v Complete 如何查找 running 状态的 Pod 呢? kubectl
阅读全文
摘要:version: '3' services: rocketmq-namesrv: container_name: rocketmq-namesrv image: xxx/base/rocketmq-namesrv:latest network_mode: host ports: - 9876:987
阅读全文
摘要:#!/bin/bash #判断是否输入了参数 #注意① if [ $# != 3 ]; then usage fi #获取脚本名称 SCRIPT=$0 #获取操作符 JAR_NAME=$1 #获取操作符 OPERATOR=$2 #获取环境变量 ACTIVE=$3 # <<开始>> 环境变量配置 #
阅读全文
摘要:grep grep [-acinv] [--color=auto] '搜寻字符串' filename 选项与参数: -a :将 binary 文件以 text 文件的方式搜寻数据 -c :计算找到 '搜寻字符串' 的次数 -i :忽略大小写的不同,所以大小写视为相同 -n :顺便输出行号 -v :反
阅读全文
摘要:1.1安装流程 1.1.1 系统如无特殊要求一律采用小化安装方式进行安装。 1.1.2 安装过程开始之前需要根据实际情况进行CPU数量、磁盘容量、内存分配、文件系统、目录结构、磁盘分区规划、磁盘管理方案进行分析与设计,并按照方案进行系统的安装。 1.1.3 安装过程中,需要按照实际情况设置恰当的主机
阅读全文
摘要:Istio下载及安装 进入Istio发布页面,下载适配本文操作系统的最新版本istio-1.8.1-osx.tar.gz,然后解压到/data/istio-1.8.1,可以看到下面包含bin及samples文件夹,bin里包含istioctl命令,samples里包含Istio自带的样例应用的部署配
阅读全文
摘要:###Istio 是什么? 云平台令使用它们的公司受益匪浅。但不可否认的是,上云会给 DevOps 团队带来压力。为了可移植性,开发人员必须使用微服务来构建应用,同时运维人员也正在管理着极端庞大的混合云和多云的部署环境。 Istio 允许您连接、保护、控制和观察服务。 从较高的层面来说,Istio
阅读全文
摘要:###1 什么是服务网格? 服务网格是分布式软件系统内部用于管理所有“服务到服务”通信的一个系统。 聊服务网格为什么会出现之前,可以聊聊服务架构的演进过程。起初,我们使用一个单体应用来提供服务。 比如我们在做一个电商系统,采用典型的MVC三层架构,在单体架构中,组成这个系统的购物车功能,库存查询功能
阅读全文

浙公网安备 33010602011771号