k8s Secret Secret 解决了密码、token、密钥等敏感数据的配置问题,而不需要把这些敏感数据暴露到镜像或者 Pod Spec 中。Secret 可以以 Volume 或者环境变量的方式使用 Secret 有三种类型: Service Account :用来访问 Kubernetes API,由 Kubernetes 自动创建,并且会自动挂载到 Pod 的
K8S-kubeadmin快速安装K8S集群 1.IP规划 节点 IP 组件 MASTER01(4C/6G,cpu核心数大于2) 192.168.80.20 docker、kubeadm、kubelet、kubectl、flannel node01(2C/2G) 192.168.80.30 docker、kubeadm、kubelet、kubectl、flannel node02(2C/2G) 192.168.80.35 docker、kubeadm
https://kubernetes.io/zh/docs/reference/kubectl/overview/ https://kubernetes.io/zh/docs/reference/kubectl/overview/#%E8%B5%84%E6%BA%90%E7%B1%B B%E5%9E%8B https://kubernetes.io/zh/docs/reference/kubectl/overview/#%E6%A0%BC%E5%BC%8F%E5%8C%9 6%E8%BE%93
# 本文主要介绍自建证书的方式创建user account 以及生成用户的token 绑定到Service Account上 查看dashboard权限 # 基于openssl 生产用户相关证书 1、生成用户的key文件 [root@master1 chen]# openssl genrsa -out chen.key 2048 Generating RSA private key, 2048 bit long
[root@k8s-master01 pv]# kubectl get podNAME READY STATUS RESTARTS AGEtest-pd 1/1 Running 1 (34h ago) 35hweb-0 0/1 ContainerCreating 0
pod 生命周期 我们一般将 pod 对象从创建至终的这段时间范围称为 pod 的生命周期,它主要包含下面的过程 pod 创建过程 运行初始化容器(init container)过程 运行主容器(main container) 容器启动后钩子(post start)、容器终止前钩子(pre stop) 容器的存活性探测(liveness probe)、就绪性探
一、K8S介绍 Kubernetes就是基于容器的集群管理平台 就在Docker容器技术被炒得热火朝天之时,大家发现,如果想要将Docker应用于具体的业务实现,是存在困难的——编排、管理和调度等各个方面,都不容易。于是,人们迫切需要一套管理系统,对Docker及容器进行更高级更灵活的管理。 K8s架构
# 概念 Servic Account(服务账号):是指由Kubernetes API管理的账号,用于为Pod之中的服务进程在访问Kubernetes API时提供身份标识。Service Account通常绑定于特定的名称空间,由API Server创建,或者通过API调用手动创建。 User Account(用户账号):独立于Kubernetes之外的其他服务管理用户
k8s cofigMap ConfigMap 功能在 Kubernetes1.2 版本中引入,许多应用程序会从配置文件、命令行参数或环境变量中读取配置信息。ConfigMap API 给我们提供了向容器中注入配置信息的机制,ConfigMap 可以被用来保存单个属性,也可以用来保存整个配置文件或者 JSON 二进制等对象 1.1 Config
一、k8s中的java资源限制与可能的问题 与以前单机跑单服务的情况相比,在k8s、docker容器化环境下的宿主机内存、cpu相对更大,所以当运行java类程序的时候,就必然有必要对容器进行内存限制,否则以java默认参数启动,一个程序就可能吃掉你四分之一的内存 但是怎么限制,就是一个值得考虑的问
系统初始化 1、关闭selinux setenforce 0 && sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config 2、关闭默认防火墙 systemctl stop firewalld && systemctl disable firewalld 3、设置hostname hostnamectl --static set-hostname mast
K8S适用场景及功能 1. 多台机器集群管理和配置(单机,直接docker + docker-compose) 2. Kubernetes 可以为你提供集中式的管理集群机器和应用,加机器、版本升级、版本回滚,那都是一个命令就搞定的事,不停机的灰度更新,确保高可用、高性能、高扩展。 Kubernetes 集群架构 master 主节点
前言 在传统的k8s集群中,我们都是使用docker engine做为底层的容器管理软件的,而docker engine因为不是k8s亲生的解决方案,所以实际使用中会有更多的分层。之前我们也讲过,k8s为了调用docker engine,专门写了一个dockershim做为CRI,而在1.20版本的时候,k8s就宣布停止更新dockershim了,也就
configMap 描述信息 ConfigMap是一种API对象,用来将非加密数据保存到键值对中。可以用作环境变量、命令行参数或者存储卷中的配置文件。 ConfigMap可以将环境变量配置信息和容器镜像解耦,便于应用配置的修改。如果需要存储加密信息时可以使用Secret对象。 ConfigMap 功能在 Kuber
pod 概述 Pod 是 K8S 系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最小资源对象模型,也是在 K8S 上运行容器化应用的资源对象,其它的资源对象都是用来支撑或者扩展 Pod 对象功能的,比如控制器对象是用来管控 Pod 对象的,Service 或者 Ingress 资源对象是用来暴
针对这个问题,分两步解决:1.k8s指定节点部署,目的是为了让docker容器始终部署在一台宿主机上。 后面我挂载目录的话,只要挂载到这台宿主机上就可以了。2.在yaml文件中配置挂载目录。 一开始我想的是在Dockerfile文件中配置,后来改了思路,认为在yaml文件中比较合理。至于Dockerfile
官方文档: https://kubernetes.io/docs 使用minikube可以在单机环境下快速搭建可用的k8s集群,此方法仅适用于开发环境或学习环境。 第一步安装docker 之前有写过安装docker,可以参考:https://www.cnblogs.com/mhSui/p/11791783.html 第二步安装kubectl 参考文档:https://kubernetes.io
使用kubeadm-ha脚本一键安装K8S 前情提示 以前安装k8s集群的时候使用的是k8s官网的教程 使用的镜像源都是国外的 速度慢就不说了 还有一些根本就下载不动 导致安装失败 ,使用一个开源的一键安装k8s的脚本就好了起来了 Github地址:https://github.com/TimeBye/kubeadm-ha 环境准备 官
本文主要介绍Kubernetes 的核心组件、架构、服务编排,以及在集群规模、网络&隔离、SideCar、高可用上的一些使用建议,尤其是在CICD中落地,什么是 GitOps. 通过此文可彻底了解 k8s 的整体核心技术以及如何应用在 DevOps 实践中。 荣辛是我的同事,阿里云过来的一位大佬,我也把他邀请
1.删除etcd节点 cd /root/etcd-v3.4.13-linux-amd64 cp etcd* /usr/local/bin # 查看etcd节点 [root@master etcd-v3.4.13-linux-amd64]# ETCDCTL_API=3 etcdctl --endpoints 127.0.0.1:2379 --cacert /etc/kubernetes/pki/etcd/ca.crt --cert /etc/kubernetes/pki/etcd/server
1.环境准备 k8s集群角色 IP 主机名 安装的组件 控制节点 192.168.1.10 master apiserver、controller-manager、scheduler、etcd、docker、keepalived、nginx 控制节点 192.168.1.11 pod1 apiserver、controller-manager、scheduler、etcd、docker、keepalived、nginx
Service 的概念 Kubernetes Service 定义了这样一种抽象:一个 Pod 的逻辑分组,一种可以访问它们的策略 —— 通常称为微服务。 这一组 Pod 能够被 Service 访问到,通常是通过 Label Selector Service能够提供负载均衡的能力,但是在使用上有以下限制: 只提供 4 层
Kubernetes介绍 目录Kubernetes介绍什么是Kubernetes?为什么需要K8S?K8S 的特性Kubernetes 集群架构与组件集群架构Kubernetes的核心组件Master 组件Kube-apiserverKube-controller-managerKube-scheduler配置存储中心 — etcdNode组件KubeletKube-proxydocker 或者 rocketk8s创建po
前面使用kind快速搭建本地k8s集群 介绍了使用kind搭建k8s集群,这节介绍使用kind搭建的k8s集群中部署.net core 的api应用程序。 1. 准备AspNetCore WebApi项目 项目结构如下: 添加一个Controller,返回当前其中一个IP: namespace WebApiK8S.Test.Controllers { [Rout
Master: 1.Kubenets里的集群控制节点,基本上 Kubernetes的所有控制命令都要发给它,它负责具体的执行过程。 2. Master通常占据一个独立的服务器,如果master宕机,那么集群内容器应用的管理都将失败 关键进程 - kube-apiserver: HTTP Rest接口的关键进程,Kubernetes里所有资源的