- 博客(33)
- 收藏
- 关注
原创 软件包相关
1、查看已经安装的软件包:yum list installed | grep 关键字2、查看软件包提供的文件:安装yum-utils包yum -y install yum-utils通过repoquery -ql <package_name>查看
2022-03-30 16:41:43
823
原创 docker安装与配置
(一)docker安装大体的思路:使用存储库安装。设置存储库---从存储库中安装docker。在新机上首次安装docker engine之前,需要设置docker存储库。之后,可以从存储库安装和更新docker。依赖的基础环境:64 bits CPULinux kernel 3.10+Linux kernel cgroups and namespaces第一步:创建仓库(1)下载一个repo文件(不推荐直接下载,最好自己配置):wget https://mirrors
2021-11-10 14:15:05
345
原创 k8s单节点的部署脚本
#!/bin/bash#--------------------------------------------# 此脚本用于Centos8自动部署k8s服务# 安装K8S前先去查看k8s仪表板最新支持的版本# 因为仪表板支持的版本落后于最新版本# 得根据仪表板支持的最新版本进行安装# 2021年10月31日#--------------------------------------------#关闭seLinuxselinuxoff(){ sed -i "s/^SELINU.
2021-11-10 14:10:08
716
原创 Mysql的常用操作
一、MySQL复制(主从、主主)(一)简介1、mysql复制(概念):将mysql数据库的数据分布到多个系统上(1)以一台服务器作为主服务器,然后将主服务器数据库的数据复制到其他服务器上(slave)(2)主服务器将更改(包括更新,删除)写入到二进制日志文件,然后将更新的记录发送到其他服务器进行更新(不包括删除)2、mysql支持的复制类型:(1)基于语句的复制:在主服务器上执行sql语句,在从服务器上执行一遍(2)基于行的复制:把改变的内容复制过去,而不是把命令在从服务器上执行
2021-11-08 17:34:07
510
原创 mysql的基本操作
一、简介1、软件包mariadb-server软件包:提供MariaDB服务器和相关文件mariadb-client软件包:提供MariaDB客户端和相关软件2、安装MariaDB两种方法:yum install mariadb-serveryum groups install MariaDB Database Client MariaDB Database Server -y3、MariaDB的相关文件(1)MariaDB的配置文件:/etc/my.cnf 或者/etc
2021-11-08 15:06:53
116
原创 数据库简介
我们使用io流文件存储数据有很多弊端:(1)文件存储数据存储效率低,一般只能保存小量数据(2)读写操作比较麻烦为了解决这些弊端,便有这些数据库的出现,数据库存储数据可以很好地解决这些弊端DB的全称是data base,即数据库的意思(1)数据库依据“数据结构”来组织数据,存放起来的数据有条理性。数据库是分成了一个个库,库分成一个个表,表分成一条条记录(2)因为数据库有数据结构,因此有极高的查找速率。数据库跟普通文件的主要区别数据库能快速查找到对应的数据...
2021-11-08 14:33:25
994
原创 redis简单介绍
(一)redis简介what:Redis是一个开源的、基于内存的缓存数据库Redis:支持每秒十几万此的读/写操作场景:由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一旦涉及大数据量的需求,比如一些商品抢购的情景,或者是主页访问量瞬间较大的时候,单一使用数据库来保存数据的系统会因为面向磁盘,磁盘读/写速度比较慢的问题而存在严重的性能弊端,一瞬间成千上万的请求到来,需要系统在极短的时间内完成成千上万次的读/写操作,这个时候往往不是数据库能够承受的,极其容易造成..
2021-11-08 11:49:40
814
转载 Kafka基本概念
(一)什么是Kafka基于发布-订阅的消息引擎系统。(二)kafka的基本术语1、对消息的认识:(1)消息:kafka中的数据单元被称为消息,也被称为‘记录’,可以把它看作数据库表中某一行的记录。(2)副本(replica):kafka中消息的备份又叫做副本(replica),副本的数量是可以配置的,kafka定义了两类副本:领导者副本(leader replica)和追随者副本(follower replica),前者对外提供服务,后者只是被动跟随。(3)批次:为了提供效率,消
2021-11-05 16:03:59
281
原创 Nginx的简单介绍
一、简介概念:是一款轻量级、高并发的web服务器特性:高并发,理论上能够支持高达5万并发连接数;轻量级,占用内存少作用:(一)高并发(量)1、什么叫高并发:通过设计保证系统能够同时并行处理很多请求。参数(指标):响应时间(Response Time):系统对请求做出响应的时间。吞吐量:单位时间内处理请求的数量。并发用户数:同时承载正常使用系统功能的用户数量。2、高并发的原理:为什么能够实行高并发---采用了“多进程+异步非堵塞”模式问题一:什么叫多进程.
2021-11-04 19:23:19
1666
原创 微服务简单介绍
一、概念微服务:一个单体应用分成多个小的功能单位。1、优点:(1)单体架构的代码过于集中臃肿,微服务化之后代码复杂性减少,逻辑结构更加清晰(结构本身的优点)(2)单体服务的部署速度较慢,微服务化之后部署速度更快(对技术人员而言)(3)单体的灵活性差,资源很难按需伸缩。微服务的灵活性更强,更加适合云计算架构总结:微服务的目的就是有效的拆分应用,实现敏捷开发和部署。2、特性:(1)每个微服务可独立运行在自己的进程里;(2)一系列独立运行的微服务共同构建起了整个系统(3
2021-11-04 16:55:19
218
原创 Ingress的概念和原理
一、What、Why(一)ingress诞生的背景:到达service所选中的节点上,然后负载均衡到每一个节点上。nodeport虽然提供了对外的方式但也有很大的弊端:由于servcie的实现方式use_space、iptables、ipvs这三种方式只支持4层协议通信,不支持7层协议,因此nodeport不能代理https(客户端的角度);nodeport需要暴露service所属每个node节点上端口,当需求越来越多,端口数量越多,导致维护成本过高,并且集群不好管理(运维的技术难度)。
2021-11-01 16:43:31
19556
2
原创 service的应用
一、service的基本操作(一)创建service命令创建创建service的命令kubectl export暴露服务。怎么暴露呢。格式:kubectl expose (-f FILENAME | TYPE NAME) [--port=port] [--protocol=TCP|UDP|SCTP] [--target-port=number-or-name] ernal-ip=external-ip-of-service] [--type=type] [options](.
2021-11-01 10:41:02
495
原创 service的原理机制
Service原理机制Kubernetes Pod 是有生命周期的,它们可以被创建,也可以被销毁,然而一旦被销毁生命就永远结束。 通过 ReplicationController 能够动态地创建和销毁 Pod(例如,需要进行扩缩容,或者执行 滚动升级)。 每个 Pod 都会获取它自己的 IP 地址,即使这些 IP 地址不总是稳定可依赖的。 这会导致一个问题:在 Kubernetes 集群中,如果一组 Pod(称为 backend)为其它 Pod (称为 frontend)提供服务,那么那些 fronten
2021-11-01 10:19:33
1119
原创 shell基础
(1)shell脚本:一个可执行并实现某种预设功能的文本文件;(2)作用:命令集合起来,批量地去执行(3)脚本的规范:①脚本文件命名:自定义名称.sh(shell脚本)②脚本的三要素:第一,声明环境:#!/bin/bash第二,必要的注释:作者信息(姓名,练习方式),代码结构与重要代码的解释第三,可执行代码(命令+逻辑结构)③测试脚本办法1:chmod +x /路径/脚本.sh /路径/脚本.sh(./脚本.sh)作用: 作用:...
2021-10-20 14:49:50
515
原创 对控制器statefulset的深入理解
特性:(1)稳定而且唯一的网络标识:pod的hostname模式为(statefulset名称)-(序号)(2)稳定而且持久的存储:通过volumeclaimtemplate为每个pod创建一个PV。删除、减少副本,不会删除相关的卷(3)有序、平滑地部署和扩展:比如redis主从集群应该先启动主节点,在启动从节点(4)有序、平滑地删除和终止:比如我们要缩减redis规模,我们要先关闭从节点(5)有序地滚动更新。一般要先更新从节点。组成:三个组件:headless servic
2021-10-19 16:32:42
957
原创 对POD的认识
(一)POD的生命周期:Pending ---- running ---- succeded ----failed ---unkown(二)应用自我修复:监控检查+重启策略配置了pod的健康检查之后,一旦检查失败,k8s就会将容器所在的pod进行重启(1)pod生命周期中的重要行为1)初始化容器2)容器健康探测:lveness、Readinessliveness和readiness作为k8s的探针,可以对应用进行健康探测。两者支持的探测方式相同。主要的探测方...
2021-10-19 16:23:08
163
原创 pod控制器
问题:此前使用配置清单创建Pod,直接在配置清单指明创建的pod是什么,然后提交给apiserver,由apiserver转交给schuduler完成调度,由目标节点的kubelete和容器引擎完成对pod和容器的创建与启动。如果我们把pod资源意外删除,他会重建吗?答案:不会。因为我们用手动配置清单创建出来的pod属于自主式pod。不是由控制器控制管理的pod。不是由控制器控制管理的pod,这种pod资源删除之后就没了。我们此前用kubectl run创建的pod,删除之后会被重建,因
2021-10-19 15:23:51
178
原创 k8s资源清单定义入门
k8s上所有的内容都抽象为资源。资源的实例化后被称为对象。资源:对象(一)以下是常见的资源类型以及具体的对象(1)工作负载型资源(workload):1)运用程序,对外提供服务:pod2)很少单独运行pod,需要通过控制器来管理:deployment(无状态)、replicaset、statefulset(有状态)、daemonset(系统守护进程)、job、cronjog(2)服务发现及均衡:service、ingress(3)配置与存储...
2021-10-18 16:50:56
334
原创 PVC、PV、StorageClass(sc)
一、PVC:(1)背景:k8s到底支持多少种存储。我们使用kubectl explain pods.spec.kubectl explain pods.spec.volumes 查看pod支持哪些存储当一个用户去使用K8s功能,在集群中创建pod时,为了实现持久能力,我们得在Pod中定义持久卷。我们需要定义一些参数,以rbd为例:kubectl explain pods.spec.volumes.rbd为例我们为了写一个pod的配置清单,.
2021-10-18 16:28:09
876
原创 K8S存储
Volume前言:根据应用本身是否需要持久存储数据,以及某一次请求跟此前的请求之间是否有关联性,可以分为四类应用:有状态要持久存储、有状态无持久存储、无状态持久存储、无状态要持久存储。大多数与数据存储服务相关的应用如果为有状态,几乎都需要持久存储。pod运行的时候是运行在某个节点上,只要不出故障,pod就一直在某个节点上运行,节点或者pod故障才会重新调度。一旦这个pod故障了被删除,那么久被重构,重构的原因就在于pod故障,这个故障可能是用户手动删除了或者pod所在的节点挂了,然后po
2021-10-18 15:57:46
524
原创 K8s网络之flannel
一、简介flannel是coreos团队针对k8s设计的一个网络规划服务,简单来说,他的功能是让集群中的不同节点主机创建的docker容器具有全集群唯一的虚拟IP地址。在默认的docker配置中,每个节点上的docker服务会分别负责所在节点容器的IP分配。这样导致的一个问题是,不同节点上容器可能获得相同的内外IP地址。并使这些容器之间能够通过IP地址相互找到,也就是互相ping通。flannel的设计目的就是为集群中的所有节点重新规划IP地址的使用规...
2021-10-18 15:30:16
604
原创 k8s网络组件
网络组件(一)Kube-proxy介绍kube-proxy是一个简单的网络代理和负载均衡器,他的主要作用是负责service的实现,具体来说,就是实现了从内部从pod到server和外部的从nodeport向server的访问(nodeport和pod之间的代理)实现方式:(1)userspace是在用户空间,通过Kube-proxy实现LB的代理服务,这个是kube-proxy的最初版本,较为稳定,但是效率也自然不太高。(2)iptables是采用netfilter来实现LB(LB是负
2021-10-18 15:17:42
1263
原创 k8s网络规划、网络通信的认识
一、k8s网络规划(一)、k8s网络设计1、每个Pod都拥有一个独立IP地址,Pod内所有容器共享一个网络命名空间。2、集群内所有pod都在一个直接联通的扁平网络中,可通过IP直接访问。(1)所有的Pod之间可以在不使用NAT网络地址转换的情况下相互通信。(2)所有的Node之间可以在不使用NAT网络地址转换的情况下相互通信(3)每个pod自己看到的自己的IP和其他pod看到的一致(二)、k8s网络要求k8s对网络的要求总的来说主要有两个基本要求,分别是:(1)要能够
2021-10-18 15:13:33
1773
原创 kubectl相关命令
kubectl客户端的认识kubectl是k8s集群内客户端程序,这个客户端程序是通过master节点上的AIPserver对应的应用程序,也是k8s集群内唯一的管理入口。kubectl就是集群管理入口的客户端工具,它能够连接apiserver实现各种k8s相关对象资源的增删改查等基本操作。在k8s集群可管理的资源对象有很多,比如很重要的资源类别:node;pod,service,replicaset、deployment、statefulet、daemonset、job、cronjobku
2021-10-18 14:53:47
339
原创 K8S部署
前言:具体步骤:(一)系统环境初始化(1)关闭防火墙、selinux:systemctl stop firewalld && systemctl disable firewalldsed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config && setenforce 0(2)设置主机名以及域名映射(hosts)hostnamectl set-hostnamemaster、n..
2021-10-14 16:01:01
136
原创 docker安装与配置
(一)docker安装大体的思路:使用存储库安装。设置存储库---从存储库中安装docker。在新机上首次安装docker engine之前,需要设置docker存储库。之后,可以从存储库安装和更新docker。依赖的基础环境:64 bits CPULinux kernel 3.10+Linux kernel cgroups and namespaces第一步:创建仓库(1)下载一个repo文件(不推荐直接下载,最好自己配置):wget https://mirro
2021-10-13 18:11:52
245
原创 腾讯私有云TStack 自动化部署
一、前期准备 1、项目情况了解 1.1 项目信息 1.2 了解整体技术方案 1.3 具体实施细节确认 2、项目前期调研 2.1业务调研 2.2自助平台信息前期信息收集 3、部署材料列表二、环境准备 1、服务器 1.1 操作系统的配置 1.2软件驱动版本 1.3操作系统安装...
2021-08-01 20:58:53
2607
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人