- 博客(158)
- 收藏
- 关注
原创 云原生Kubernetes:K8S配置资源管理
1.创建k8s集群2.创建管理的文件3.验证4.解码5.清理configmap创建有二种方式,一是命令行方式,分为从字面读取(--from-literal)和从目录(--from-file)读取。下面是二者区别:1. --from-literal从字面读取的好处就是快速和便捷,你可以通过关键字参数的形式(**kargs),将配置信息直接传递至configmap,然后在pod启动的时候进行加载;同时这个方式的弊端就是,变量不能实时更新到pod容器。
2023-09-25 18:52:48
189
原创 云原生Kubernetes:Pod控制器
service:一组Pod访问策略,提供cluster-IP群集之间通讯,还提供负载均衡和服务发现。Headless service:无头服务,不需要cluster-IP,而是直接以DNS记录的方式解析出被代理Pod的IP地址。注意:使用普通的 service 也可以解析出被代理Pod的IP地址job的重启策略要么Never, 要么OnFailure,绝对不能为Always1)部署无状态应用2)创建和管理 ReplicaSet 和 Pod 资源,并维护Pod副本数量与期望值相同。
2023-09-22 21:17:09
226
原创 云原生Kubernetes:K8S存储卷
容器崩溃不会导致Pod被删除,因此容器崩溃期间emptyDir中的数据是安全的。hostPath卷将node节点的文件系统中的文件或者目录挂载到集群中。
2023-09-20 16:22:28
296
原创 云原生Kubernetes:K8S资源控制之污点与容忍
NoSchedule:表示k8s将不会将Pod调度到具有该污点的Node上PreferNoschedule:表示k8s将尽量避免将Pod调度到具有该污点的Node上NoExecute:表示k8s将不会将Pod调度到具有该污点的Node上,同时会将Node上已经存在的Pod驱逐出去。
2023-09-19 18:02:19
333
原创 云原生Kubernetes:pod亲和性与反亲和性
批量删除之前的pod myapp10-myapp14,并创建pod myapp10-myapp14done。
2023-09-19 15:58:55
165
原创 云原生Kubernetes:K8S集群list-watch机制与 pod调度约束
有三个 List-Watch,分别是 Controller Manager(运行在 Master),Scheduler(运行在 Master),kubelet(运行在 Node)。他们在进程已启动就会监听(Watch)APIServer 发出来的事件。pod.spec.nodeName 将 Pod 直接调度到指定的 Node 节点上,会跳过 Scheduler 的调度策略,该匹配规则是强制匹配。topologyKey 是节点标签的键,值为node节点名称(例如node01、node02等)。
2023-09-18 19:43:08
303
原创 云原生Kubernetes:pod进阶之资源管理与探针
livenessProbe:(存活探针)判断容器是否正常运行,如果失败,则杀掉容器(注意,不是杀掉pod),再根据重启策略是否重启容器readinessProbe(就绪探针)判断容器是否能够进入ready状态。探针失败则进入noready状态,并从service的endpoints中剔除此容器判断容器内的应用是否启动成功。再success状态前,其他探针都处于无效状态exec:使用command 字段设置命令,在容器中执行次命令,如果命令返回状态码为0,则认为探测成功。httpget。
2023-09-15 18:00:08
246
原创 云原生Kubernetes:K8S集群使用带凭证的harbor仓库
(1)在docker harbor 上(192.168.204.176)上环境准备。(3) 在一个 node 节点下载 Tomcat 镜像进行推送。node节点删除之前在 node 节点下载的 Tomcat 镜像。查看 Pod 的描述信息,可以发现镜像时从 harbor 下载的。master 节点上 创建 harbor 登录凭据资源清单。(4)每个node节点登录harbor ,上传镜像。创建资源从 harbor 中下载镜像。(3)登录harbor,创建项目。(2)登录harbor,创建项目。
2023-09-15 09:49:22
40
原创 云原生Kubernetes:K8S实用插件和工具
值得一提的是如果你的kubernetes集群有GPU节点,采用view-allocations也可以快速查到你的GPU显卡分配状态.images插件允许你查看当前命名空间(甚至整个集群)Workload中使用的镜像信息。Krew 是一个由 Kubernetes SIG CLI 社区维护的 kubectl 命令行工具的插件管理器,Krew 默认以用户主目录下的隐藏目录 .krew 为工作目录。k8s每次查看指定命名空间的资源都需要加 -n 命名空间 来指定命名空间,我们可以通过开源项目。
2023-09-12 16:58:28
372
原创 云原生Kubernetes:pod基础与配置
Pod是kubernetes中最小的资源管理组件,Pod也是最小化运行容器化应用的资源对象。① 一个Pod中运行一个容器② 在一个Pod中同时运行多个容器。pause容器使得Pod中的所有容器可以共享两种资源:网络和存储。
2023-09-08 16:05:49
618
原创 云原生Kubernetes:Yaml文件编写
yaml文件的学习方法(1)多看别人(官方)写的,能读懂(2)能照着现场的文件改着用(3)遇到不懂的,善用kubectl explain ...命令查。
2023-09-07 13:44:00
566
原创 云原生Kubernetes:CRI 容器运行时接口
1)镜像管理:镜像拉取、查看和移除2)pod和容器的生命周期管理,以及与容器的交互(exec/attach/port-forward)1)高层级运行时(Dockershim、containerd 和 CRI-O ),主要是面向外部提供 gRPC 调用。2)低层级运行时(runC、kata和gVisor ),定义如何为新容器设置 Linux namespaces 和 cgroups,以及 rootfs 等操作。
2023-09-07 10:17:49
495
原创 云原生Kubernetes:kubectl管理命令
陈述式资源管理方法#查看版本信息#查看资源对象简写#查看集群信息#node 节点查看日志#或者直接查看日志1.临时生效2.永久生效.....source
2023-09-06 17:51:25
1005
原创 云原生Kubernetes:K8S常用服务端口
表2 prometheus监控集群端口。(2)prometheus监控集群。表1 K8S集群端口。
2023-09-05 17:07:28
609
原创 云原生Kubernetes:Kubeadm部署K8S单Master架构
K8S通过kubeadm安装出来以后都是以Pod方式存在,即底层是以容器方式运行,所以kubelet必须设置开机自启。
2023-09-04 19:58:30
1462
原创 云原生Kubernetes:二进制部署K8S多Master架构(三)
nginx实现负载均衡,keepalived实现双机热备。启动keepalived服务(一定要先启动了nginx服务,再启动keepalived服务)。
2023-09-02 01:36:10
1478
1
原创 云原生Kubernetes:二进制部署K8S单Master架构(二)
k8s通过kube- apiserver这 个进程提供服务,该进程运行在单个master节点上。默认有两个端口6443和8080:安全端口6443用于接收HTTPS请求,用于基于Token文件或客户端证书等认证本地端口8080用于接收HTTP请求,非认证或授权的HTTP请求通过该端口访问APIServer。
2023-09-01 23:25:18
1004
原创 云原生Kubernetes:二进制部署K8S单Master架构(一)
etcd就是etcd服务的启动命令,后面可跟各种启动参数;etcdctl主要为etcd服务提供了命令行操作。1、从etcd中获取network的配置信息2、划分subnet, 并在etcd中进行注册3、将子网信息记录到/run/flannel/subnet.env中。
2023-09-01 20:59:24
711
原创 云原生Kubernetes:K8S概述
在K8S集群中,一个资源对应一个控制器,而Controller manager就是负责管理这些控制器的。K8S中仅API Server 才具备读写权限,其他组件必须通过API Server的接口才能读写数据。资源对象Replication Controller是ReplicaSet 的前身,官方推荐用Deployment 取代Replication Controller来部署服务。
2023-08-31 15:19:20
943
原创 自动化运维:Ansible之playbook基于ROLES部署LNMP平台
用roles和不用roles的逻辑其实是一样的,要根据服务器的功能,先收集服务器所需要的文件,再进行安装,传输文件,启动服务或重启服务等操作。进入 /etc/yum.repos.d/目录中,在http://mirrors.163.com/.help/centos.html,在里面下载对应版本的repo文件,我下载了CentOS-Base.repo。在http://mirrors.kernel.org/centos/ 或者 http://mirrors.163.com/centos/里下载。
2023-08-30 18:38:01
894
1
原创 自动化运维:Ansible脚本之playbook剧本
vars: #定义变量- groupname: mysql #格式为 key: valuetasks:group: name={{groupname}} system=yes gid=306 #使用 {{key}} 引用变量的值copy: content="{{ansible_default_ipv4}}" dest=/opt/vars.txt #在setup模块中可以获取facts变量信息在命令行里定义变量dbservers验证(1)编写playbook(2)在命令行里定义变量。
2023-08-29 16:03:09
695
原创 自动化运维:Ansible基础与命令行模块操作
沟通是DevOps的关键。Ansible是第一款可以在整个IT范围读取和编写的自动化语言。它也是唯能够从头至尾自动化应用生命周期和持续交付管道的自动化引擎。Ansible用户无需编写复杂的脚本,而只要创建高级别play即可确保主机或主机组处于特定状态。Play按该play指定的顺序对主机执行一系列任务。这些play通过采用YAML格式的文本文件来表达。包含一个或多个play的文件称为playbook。
2023-08-28 16:27:37
771
原创 Linux系统:CentOS 7 CA证书服务器部署
证书请求文件:CSR是Cerificate Signing Request的英文缩写,即证书请求文件,也就是证书申请者在申请数字证书时由CSP(加密服务提供者)在生成私钥的同时也生成证书请求文件,证书申请者只要把CSR文件提交给证书颁发机构后,证书颁发机构使用其根证书的私钥签名就生成了证书文件,也就是颁发给用户的证书。HTTP 明文传输,数据都是未加密的,安全性较差,HTTPS(SSL+HTTP) 数据传输过程是加密的,安全性较好。功能:证书发放、证书更新、证书撤销和证书验证。
2023-08-27 19:09:14
1004
原创 Docker容器与虚拟化技术:Harbor私有仓库部署与迁移
no:默认策略,在容器退出时不重启容器on-failure:在容器非正常退出时(退出状态非0),才会重启容器on-failure:3 在容器非正常退出时重启容器,最多重启3次always:在容器退出时总是重启容器unless-stopped: 在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器将镜像打标签格式:docker tag 镜像:标签 仓库IP/项目名称/镜像名:标签修改 Harbor.cfg 配置文件vim harbor.cfg #只能修改可选参数。
2023-08-25 14:25:57
136
原创 Docker容器与虚拟化技术:Docker compose部署LNMP
Dockerfile配置目录主要存放Dockerfile构建脚本和一些配置文件,lnmp运行目录主要存放程序运行产生的一些数据,比如mysql数据等。(2) 上传 nginx-1.12.0.tar.gz、wordpress-4.9.4-zh_CN.tar.gz 到 /opt/nginx/ 目录中。(2) 上传 mysql-boost-5.7.20.tar.gz 到 /opt/mysqld 目录中。(2) 上传 软件包及配置文件到 /opt/nginx/ 目录中。
2023-08-23 18:56:37
543
原创 Docker容器与虚拟化技术:Gitlab账户注册
(5) 也可以与其他已有账户进行关联。点击下方的register now。(4) 进入注册页面填写。(6)关联github账户。GitLab 是一个用于。,并在此基础上搭建起来的。
2023-08-23 16:55:10
749
原创 Docker容器与虚拟化技术:GitHub账户注册
(9)验证后,点击“Create account”按钮后,出现如下界面,要求输入发到邮箱中的验证码。(11)在以两个问卷项中依次做出选择(不做选择也可以),点击“Continue”按钮,出现如下界面。(13)点击左下方的“Continue for free”按钮,出现如下界面。(12) 继续做出选择,之后点击下方的“Continue”按钮,出现如下界面。(8)填写n并点击“Continue”按钮后,出现如下界面,随后进行验证。(10)输入邮箱中收到的验证码后,跳转到如下界面。(6)完成后,密码已通过。
2023-08-23 16:22:40
605
原创 Docker容器与虚拟化技术:Docker consul 实现服务注册与发现
consul是google开源的一个使用go语言开发的服务管理软件。Consul-Template是基于Consul的自动替换配置文件的应用。8300:replication、leader farwarding的端口8301:lan cossip的端口8302:wan gossip的端口8500:web ui界面的端口8600:使用dns协议查看节点信息的端口curl 127.0.0.1:8500/v1/status/peers #查看集群server成员。
2023-08-22 16:39:05
496
原创 Docker容器与虚拟化技术:容器运行时说明与比较
真正的启动容器是通过 containerd-shim 去调用 runC 来启动容器的,runC 启动完成后会直接退出,containerd-shim 会成为容器进程的父进程,负责收集容器进程的状态,上报给 containerd,并在容器中 pid 为 1 的进程退出后接管容器中的子进程,确保不会出现僵尸进程。新项目汇集了最好的这两种技术都具有重构虚拟化,容器原生应用程序的共同愿景,为了提供容器的速度,和虚拟机的安全。CRI-O是由红帽发起并开源的一款容器运行时,本身比较新,没有太多的生产实践。
2023-08-21 23:26:42
211
原创 Docker容器与虚拟化技术:Docker-Compose单机编排工具
序列靠索引获取值映射靠key获取值。序列类型是有序的元素集合而映射类型则是键值对的无序集合。
2023-08-21 16:58:07
96
原创 Docker容器与虚拟化技术:Docker镜像创建、Dockerfile实例
容器=镜像+读写层指定前台运行(如果不指定前台运行,Docker则会自动退出)\s代表正则表达式中的一个空白字符(可能是空格、制表符、其他空白)只保留[ ]内的行,其它行全删除for i in *;done);rm -rf ...任何使用docker run 命令传入的参数都会附加在entrypoint指令之后,并且用此命令传入的参数会覆盖在Dockerfile中使用CMD指令设定的值。CMD指令的主要用意是设置容器的默认执行的命令。CMD 设定的命令会在entrypoint之后执行。
2023-08-17 21:58:38
357
原创 Linux系统管理:虚拟机ESXi安装
它是一款虚拟化管理软件,可以管理多台物理机上的虚拟机,支持Windows、Linux等操作系统,可以管理多台物理机上的虚拟机,可以管理多台物理机上的虚拟机之间的网络连接,可以管理多台物理机上的虚拟机之间的文件共享,可以管理多台物理机上的虚拟机之间的资源共享,可以管理多台物理机上的虚拟机之间的应用程序共享,可以管理多台物理机上的虚拟机之间的硬件共享,可以管理多台物理机上的虚拟机之间的网络访问,可以管理多台物理机上的虚拟机之间的虚拟网络。(14)创建完虚拟机时候,等待虚拟机进入系统。
2023-08-16 23:08:45
382
原创 Docker容器与虚拟化技术:Docker资源控制、数据管理
docker system prune -a #可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络。
2023-08-15 19:37:03
586
原创 Docker容器与虚拟化技术:Docker容器操作、网络模式
直接执行 docker run 命令, 等同于先执行 docker create 命令,再执行 docker start 命令。执行docker rm -f 命令,等同于先先执行 docker stop ,再执行docker rm命令。
2023-08-15 17:03:08
191
原创 Docker容器与虚拟化技术:Docker架构、镜像操作
(1) IT架构裸金属 → 虚拟机 → 容器→ 函数化、代码化云计算涌现出很多改变传统IT架构和运维方式的新技术,比如虚拟机、容器、微服务、Serverless(无服务),无论这些技术应用在哪些场景,降低成本、提升效率是云服务永恒的主题。①运行物理机,也称为裸金属②虚拟机VM,可以在一台物理机上创建多个虚拟机,并把物理配置分发成多个虚拟配置缺点:性能损耗大,大约损耗50%虚拟机常用软件:KVM(linux内核)③。
2023-08-14 23:13:19
740
原创 分布式应用:Zabbix监控MariaDB
配置–>主机–>点击server–>点击模板–>选择Template DB MySQL by Zabbix agent–>点击更新。(3)配置zabbix的userparameter_mysql.conf 文件模板。zabbix服务端:192.168.204.214。zabbix客户端:192.168.204.215。(2)MareaDB安装。(4)在Web配置模板。
2023-08-13 11:34:37
374
原创 分布式应用:Zabbix监控Tomcat
从 jre 的安装目录找到 jmxremote.access 和 jmxremote.password.template,复制到 $CATALINA_OPTS 中设置的认证文件位置,将 jmxremote.password.template 重命名为 jmxremote.password。权限问题,zabbix_agentd是zabbix用户启动的,默认不能执行netstat -p等命令,导致从服务器取到的自动发现脚本为空。LISTEN_IP定义被监控机器的地址,不指定默认监听全部机器。
2023-08-13 10:11:39
653
原创 分布式应用:Zabbix监控Nginx
把zabbix_agentd.conf中 的server把zabbix_server的公网和内网地址都加行。导入刚才创建的xml文件即可 导入成功后在主机列表页面选择被监控的机器(客户端)链接该模板即可开始监控nginx。直接在nginx子配置文件夹中创建一个新的子配置文件,因为是yum安装无须在主配置文件中指定子配置文件。zabbix server监听全网地址,agent监听内网地址。(6)编辑zabbix_agent配置文件。在zabbix前端页面点击配置→模板→导入。(3)编辑nginx子配置文件。
2023-08-12 15:27:32
259
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人