
Kubernetes
文章平均质量分 75
Kubernetes
草莓甜甜圈
天道酬勤
展开
-
Jenkins-pipeline自动化构建Java应用
在GitLab创建的Group为kubernetes,可以认为其是一个项目,同一个项目可以部署至Kubernetes集群中的同一个Namespace中,本示例为kubernetes命名空间。yaml文件app.yaml,资源限制部分请按照业务需求调整。原创 2023-06-19 17:25:22 · 1701 阅读 · 0 评论 -
containerd做为k8s的容器运行时配置先决条件
v1.24 之前的 Kubernetes 版本直接集成了 Docker Engine 的一个组件,名为。这种特殊的直接整合不再是 Kubernetes 的一部分 (这次删除被作为 v1.20 发行版本的一部分你可以阅读以了解此删除可能会如何影响你。要了解如何使用 dockershim 进行迁移, 请参阅。如果你正在运行 v1.27 以外的 Kubernetes 版本,查看对应版本的文档。转载 2023-06-12 10:12:46 · 693 阅读 · 0 评论 -
kubectl远程访问内网中的k8s集群(更新证书,添加master ip或域名)
本文我们将了解如何将一个新的 DNS 名称或者 IP 地址添加到 Kubernetes APIServer 使用的 TLS 证书中。在某些情况下默认的证书包含的名称可能不能满足我们的要求,又或者是 APIServer 地址有所变化,都需要重新更新证书。Kubernetes APIServer 使用数字证书来加密 APIServer 的相关流量以及验证到 APIServer 的连接。所以如果我们想使用命令行客户端(比如 kubectl)连接到 APIServer,并且使用的主机名或者 IP 地址不包括在证转载 2021-10-29 13:52:11 · 2029 阅读 · 0 评论 -
【问题解决】k8s删除namespace一直处于Terminating
清理高可用安装的rancher时,遇到namespace无法delete删除,一直处于Terminating的状态。所以就寻找了各种方法解决。现整理如下:方法一:kubectl patch namespace cattle-system -p '{"metadata":{"finalizers":[]}}' --type='merge' -n cattle-systemkubectl delete namespace cattle-system --grace-period=0 --forc转载 2021-03-26 11:40:06 · 1536 阅读 · 0 评论 -
k8s集群中部署kong网关与konga
kong官方文档中的部署方案因为某种奇葩的原因,不能对helm文件中的镜像拉取,所以我这里对kong的docker镜像部署。首先要搭建postgresql:可以选择集群外搭建,也可以集群内搭建。参考dockerhub上的postgres镜像文档搭建:https://hub.docker.com/_/postgresdocker run -d \ --name some-postgres \ -e POSTGRES_PASSWORD=mysecretpassword \原创 2021-01-27 15:27:19 · 5406 阅读 · 2 评论 -
jenkins-k8s-Pipeline 流水线模板
pipeline { agent {label 'local-slave'} environment { def imageName = "${project_name}/${single_project_name}" def build_tag = "${registry_url}/${group_id}/${single_project_name}:${BUILD_NUMBER}" } parameters { string(na.原创 2020-11-06 14:35:00 · 811 阅读 · 0 评论 -
k8s部署java服务yaml
k8s.yamlkind: ServiceapiVersion: v1metadata: name: <PROJECT_NAME> namespace: <SPACE>spec: selector: app: <PROJECT_NAME> type: ClusterIP ports: - protocol: TCP port: 80 targetPort: 8080---apiVersion: .原创 2020-11-06 14:11:17 · 1765 阅读 · 0 评论 -
RKE搭建k8s高可用集群
官方文档https://docs.rancher.cn/docs/rke/_indexhttps://www.bookstack.cn/books/rancher-rke配置清单 hostname ip 配置 rancher-lb 192.168.0.80 2核2G rancher-node1 192.168.0.81 2核4G rancher-node2 192.168.0.82 2.转载 2020-11-06 14:03:42 · 1640 阅读 · 0 评论 -
Rancher中创建只有访问项目权限的用户
背景:防止开发人员误操作,导致修改rancher中k8s的配置造成生产事故,开发日常操作只需要查看容器日志,所以只给他们访问项目的权限,不给修改创建等操作的权限。在rancherUI中,在全局下选择“用户”标签,点击“添加用户”。在项目集群中,选择“成员”标签,点击“添加成员”。这里只需给予查看节点和项目的权限。创建成功:测试一下:增删pod副本的请求被拒绝。...原创 2020-10-12 10:57:43 · 2013 阅读 · 0 评论 -
docker中部署skywalking链路监控
Docker运行skywalking参考命令:安装oap-server:docker run --name oap --restart always -d \-e TZ=Asia/Shanghai \-p 12800:12800 \-p 11800:11800 \--link es7:es7 \-e SW_STORAGE=elasticsearch \-e SW_STORAGE_ES_CLUSTER_NODES=es7:9200 \apache/skywalking-oap-serv原创 2020-09-21 14:18:47 · 2174 阅读 · 0 评论 -
Rancher中设置钉钉告警
背景:现在的办公都使用钉钉,告警很多地方也用到了钉钉机器人的webhook,但是研究了rancher的告警好一会才知道rancher原来是不支持钉钉webhook。真的是吐血~系统环境centos7.8rancher v2.4.5docker 19.03.12步骤rancher-ui启用集群监控 rancher-ui启用项目监控 (这里注意如果启用持久化存储,grafana pvc挂载的权限问题,会导致grafana异常,创建的pv目录权限给足就行)我这里使用开源大佬的tim原创 2020-09-07 16:05:26 · 2020 阅读 · 16 评论 -
Rancher使用--K8S中搭建jumpserver跳板机
K8s配置文件搭建参考https://blog.youkuaiyun.com/s7799653/article/details/88903545jumpserver文档https://docs.jumpserver.org/zh/master/install/docker_install/创建数据库create database jumpserver default charset 'utf8' collate 'utf8_bin';grant all on jumpserver.* to 'jumps原创 2020-08-27 16:09:47 · 991 阅读 · 2 评论 -
Rancher安装配置
官方文档https://docs.rancher.cn/首先要安装要docker,参考https://blog.youkuaiyun.com/qq_39626154/article/details/82753412安装Rancher2.Xsudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher结果:Rancher 已经安装在了 Linux 主机上。登录 Rancher 界面并配置初始设置..原创 2020-08-23 11:57:23 · 1445 阅读 · 0 评论 -
k8s认证及serviceaccount、RBAC
目前RBAC是k8s授权方式最常用的一种方式。在k8s上,一个客户端向apiserver发起请求,需要如下信息:1)username,uid,2) group,3) extra(额外信息)4) API5) request path,例如:http://127.0.0.1:8080/apis/apps/v1/namespaces/kube-system/d6)HTTP...原创 2020-01-16 16:42:46 · 2077 阅读 · 0 评论 -
K8s statefulset控制器
概述RC、Deployment、DaemonSet都是面向无状态的服务,它们所管理的Pod的IP、名字,启停顺序等都是随机的,而StatefulSet是什么?顾名思义,有状态的集合,管理所有有状态的服务,比如MySQL、MongoDB集群等。StatefulSet本质上是Deployment的一种变体,在v1.9版本中已成为GA版本,它为了解决有状态服务的问题,它所管理的Pod拥有固定的Po...原创 2019-12-31 14:33:52 · 423 阅读 · 0 评论 -
K8s configmap和secret
secret和configmap可以理解为特殊的存储卷,但是它们不是给Pod提供存储功能的,而是提供了从集群外部向集群内部的应用注入配置信息的功能。ConfigMap扮演了K8S集群中配置中心的角色。ConfigMap定义了Pod的配置信息,可以以存储卷的形式挂载至Pod中的应用程序配置文件目录,从configmap中读取配置信息;也可以基于环境变量的形式,从ConfigMap中获取变量注入到Po...原创 2019-12-24 15:07:35 · 1197 阅读 · 0 评论 -
Kubernetes存储卷PV及PVC
K8S上可用的存储卷类型:emptyDir空目录,只在节点本地使用,一旦Pod被删除,则这个存储卷也会随之删除;所以,emptyDir这种存储卷不是做为持久化而设计的,可以做为临时目录,按需创建。也可以当做缓存空间来使用。emptyDir存储卷的生命周期同Pod容器。示例:apiVersion: v1kind: Podmetadata: name: pod-demo ...原创 2019-12-23 17:54:52 · 865 阅读 · 0 评论 -
K8s ingress资源和ingress controller
什么是Ingress?Ingress:就是能利用 Nginx(不常用)、Haproxy(不常用)、Traefik(常用)、Envoy(常用) 等负载均衡器暴露集群内服务的工具。Ingress提供七层负载均衡能力,可以通过 Ingress 配置提供外部可访问的 URL、负载均衡、SSL、基于名称的虚拟主机等。作为集群流量接入层,Ingress 的高可靠性显得尤为重要。我们知道service的...原创 2019-12-19 17:19:06 · 1104 阅读 · 0 评论 -
Kubernetes Service
什么是Service (服务)Service是Kubernetes里最核心的资源对象之一,Service定义了一个服务的访问入口地址,前端的应用(Pod)通过这个入口地址访问其背后的一组由Pod副本组成的集群实力。 Service与其后端Pod副本集群之间则是通过Label Selector来实现"无缝对接"。而RC的作用实际上是保证Service 的服务能力和服务质量处于预期的标准。...原创 2019-12-18 14:26:09 · 425 阅读 · 0 评论 -
K8S Pod控制器应用进阶
一、Pod控制器类别1.1 ReplicaSetReplicaSet控制器用来管理无状态的Pod资源,核心作用在于代用户创建指定数量的Pod副本,并确保Pod副本数量一直等于用户期望的数量。而且还支持Pod滚动更新、及自动扩缩容等机制;它被称新一代的ReplicationCtroller。ReplicaSet主要有三个组件组成:用户期望的Pod副本数量; 标签选择器,用来选定由自...原创 2019-12-17 16:46:49 · 405 阅读 · 0 评论 -
K8s资源清单定义入门
一、K8S中常见的资源Kubernetes中把资源实例化以后称之为对象,这里先介绍K8S中常见的核心资源有哪些:工作负载型资源(workload):Pod、ReplicaSet、Deployment、StatefulSet、DaemonSet、Job、CronJob。(ReplicationController在v1.11版本被废弃) 服务发现及负载均衡型资源(ServiceDiscov...原创 2019-12-16 16:40:27 · 300 阅读 · 0 评论 -
使用kubeadm安装kubernetes(单master)
搭建环境:三台CentOS7.6虚拟机(2核 4G)。hosts文件解析,s1为master节点,其余n1,n2为node节点:192.168.100.49 s1192.168.100.50 n1192.168.100.51 n2准备工作:关闭selinux及关闭防火墙systemctl stopfirewalldcat /etc/selinux/config ...原创 2019-12-05 15:34:07 · 2451 阅读 · 0 评论 -
K8S应用快速入门
一、获取资源命令:kubectl get <资源名称>帮助:kubectl get --help使用kubectl api-resources获取支持的资源的完整列表。以node资源为例:kubectl get nodes参数:-o wide 输出格式,常用格式:json | yaml | wide; -w 监控输出结果,类似tail命令的-f选...原创 2019-12-16 15:05:38 · 536 阅读 · 0 评论