自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 收藏
  • 关注

原创 云原生之K8s—yaml文件

portport是k8s集群内部访问service的端口,即通过clusterIP:port可以从pod所在的node上访问到service。nodeportnodeport是外部访问k8s集群中service的端口,通过nodeip:nodeport可以外部访问到某个servicetargetporttargetport是pod的端口,从port或nodeport来的流量经过kube-proxy反向代理负载均衡转发到后端pod的targetport上,最后进入容器。

2022-11-07 16:56:10 1606 1

原创 云原生之K8s的亲和、反亲和、污点与容忍

在 Kubernetes 中 Pod 的调度都是由组件来完成的,整个调度过程都是自动完成的,也就是说我们并不能确定 Pod 最终被调度到了哪个节点上。而在实际环境中,可能需要将 Pod 调度到指定的节点上。这时,我们便可以通过 K8s 提供的节点、亲和、反亲和等配置来实现 Pod 到节点的定向调度。

2022-11-06 15:52:33 787

原创 云原生之K8s管理工具—kubectl 详解(二)

将Deployment的nginx创建Service,并通过Service的80端口转发至容器的80的端口上,Service的名称为nginx,类型为NodePort。Kubectl是管理k8s集群的命令行工具,通过生成的json格式传递给apiserver进行创建、查看、管理的操作。处于动态监听pod状态,由于使用的是滚动更新方式,所以会先生成一个新的pod,然后删除一个旧的pod,往后以此类推。③kubectl run --help查看使用帮助。创建——》发布——》更新——》回滚——》删除。

2022-11-05 06:00:00 1550

原创 云原生之K8s管理工具—kubectl 详解(一)

resource可以是具体资源名称,如"pod nhinx-xxx";也可以是资源类型,如“pod,node,svc,deploy”多种资源使用逗号间隔;或者all(仅展示几种核心资源,并不完整)直接使用kubectl edit service nginx-service在线编辑配置资源清单并保存退出即时生效(如port: 888)注意:当apply不生效时,先使用delete清除资源,再apply创建资源。获取资源的相关信息,-n指定命名空间,-o指定输出格式。#namespace可以缩写成ns。

2022-11-04 16:29:58 3033

原创 [云原生k8s] k8s的CA证书创建和使用

Etcd 是一个分布式键值存储系统,Kubernetes 使用 Etcd 进行数据存储,所以先准备 一个 Etcd 数据库,为解决 Etcd 单点故障,应采用集群方式部署,这里使用 3 台组建集 群,可容忍 1 台机器故障,当然,你也可以使用 5 台组建集群,可容忍 2 台机器故障。ETCD_INITIAL_CLUSTER_STATE:加入集群的当前状态,new 是新集群,existing 表示加入 已有集群。ETCD_INITIAL_ADVERTISE_PEER_URLS:集群通告地址。

2022-11-03 20:06:59 1883

原创 【云原生之k8s】Kubeadm搭建K8S

-apiserver-advertise-address=10.0.0.116 \         #指定master监听的地址,修改为自己的master地址。--image-repository registry.aliyuncs.com/google_containers \   #指定为aliyun的下载源,最好用国内的。# service-cidr 和 pod-network-cidr 最好就用这个,不然需要修改后面的 kube-flannel.yaml 文件。

2022-11-01 17:58:14 578

原创 【云原生之k8s】kubernetes核心组件

在 K8S 集群中,

2022-10-29 23:57:01 391

原创 【云原生之k8s】kubernetes原理

运行在每个工作节点上的Kubelet也会定期与etcd同步bound pod信息,一旦发现应该在该工作节点上运行的bound pod对象没有更新,则调用Docker API创建并启动pod内的容器;而其他的组件,比如scheduler负责pod绑定的调度,从而完成整个pod的创建。5.主机打分:对第一步筛选出的符合要求的主机进行打分,在主机打分阶段,调度器会考虑一些整体优化策略,比如把一个Replication Controller的副本分布到不同的主机上,使用最低负载的主机等;

2022-10-29 23:45:32 112

原创 Prometheus加grafana监控之初探

Prometheus是一个开源监控系统,它的前身是SoundCloud的告警工具包。从2012年开始,许多公司合组织开始使用Prometheus。该项目的开发人员和用户社区非常活跃,越来越多的开发人员和用户参与到该项目中。目前它是一个独立的开源项目,且不依赖与任何公司。为了强调这点和明确该项目治理结构,prometheus在2016年继kurberntes之后,加入了Cloud Native Computing Foundation。

2022-10-25 07:00:00 1250

原创 Docker之Consul部署

Consul是一套开源的分布式服务发现和配置管理系统,由HasiCorp公司用go语言开发的。提供了微服务系统中服务助力、配置中心、控制总线等功能,这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构造全方位的服务网络,总之,Consul提供了完整的服务网格解决方案。

2022-10-24 07:00:00 2849

原创 开机虚拟机出现Welcome to emergency mode!的解决方案

2、输入fsck -y 回车 即开始修复文件系统。时间不定,根据磁盘大小,读写速度,系统性能波动。紧急模式输入root密码后 输入命令——vi /etc/fstab。删除图片中多余的命令串,然后reboot重启就可以了。输入完成后输入reboot回车重启即可。

2022-10-23 08:00:00 4535 2

原创 Docker之cgroups资源限制

cgroups是一个非常强大的linux内核工具,他不仅可以限制被namespace隔离起来的资源,还可以为资源权重、计算使用量,操控进程启停等等,所以cgroups(control groups)实现了对资源的配额和度量。1、资源限制:可以对任务使用的资源总额进行限制2、优先级分配:通过分配CPU时间片数量以及磁盘io带宽大小,实际上相当于控制了任务运行优先级3、资源统计:可以统计系统的资源使用量,如CPU时长,内存用量等4、任务统计:cgroups可以对任务执行挂起,恢复等操作。

2022-10-23 07:00:00 638

原创 Docker之harbor私有仓库的部署与管理

1、基于角色的访问控制 - 用户与Docker镜像仓库通过“项目”进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限。2、镜像复制 - 镜像可以在多个Registry实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。3、图形化用户界面 - 用户可以通过浏览器来浏览,检索当前Docker镜像仓库,管理项目和命名空间。4、AD/LDAP 支持 - Harbor可以集成企业内部已有的AD/LDAP,用于鉴权认证管理。

2022-10-22 08:00:00 4383

原创 Docker之compose介绍

docker-compose项目是docker官方的开源项目, 负责实现对docker容器集群的快速编排。docker-compose将所管理的容器分为三层, 分别是工程(project),服务(service)以及容器(containner)docker-compose运行目录下的所有文件(docker-compose.yml文件、extends文件或环境变量等)组成一个工程,如无特殊指定,工程名即为当前目录名。一个工程当中,可以包含多个服务,每个服务中定义了容器运行的镜像、参数、依赖。

2022-10-21 06:00:00 80532 7

原创 Docker之dockerfile构造镜像

要想了解cmd和entrypoint的区别,首选必须了解exec模式和shell模式的区别。

2022-10-20 05:00:00 281 1

原创 Docker容器之网络模式

1、Host :与宿主机共享网络名称空间/网络协议栈2、Container:多个容器之间共享一个network namespaces3、None :自闭空间4、bridge:默认模式通过Veth对连接容器与docker0网桥,网桥分配给容器IP,同时docker 0作为“局域网”内容器的网关,最后和宿主机网卡进行通讯5、overlay:叠加网络模式。

2022-10-19 06:00:00 5395 2

原创 Docker容器之数据卷和数据卷容器

本文介绍了通过数据卷和数据卷容器对容器内数据进行共享、备份和恢复等操作,通过这些机制,即使容器在运行中出现故障,用户也不必担心数据发生丢失,只需要快速地重新创建容器即可。在生成容器的同时,加上-v选项,指定把当前服务器的目录映射到容器中。命令 说明docker run -v 数据卷 创建数据卷docker run -v 宿主机目录:数据卷 挂载宿主机目录docker run --volumes-from 数据卷容器 挂载数据卷容器(挂载点路径不变)

2022-10-18 16:32:16 200

原创 Docker容器--镜像、容器操作

镜像:类似虚拟机镜像容器:类似linux系统环境,运行和隔离应用。容器从镜像启动的时候,docker会在镜像的最上一层创建一个可写层,镜像本身是只读的,保持不变。仓库:每个仓库存放某一类镜像。

2022-10-17 01:11:06 14011 1

原创 Docker容器——安装和镜像加速

本质就是宿主机的一个进程,docker是通过namespace(命名空间)实现资源隔离,通过cgroup实现资源限制,通过写时复制技术(copy-on-write)实现了高效的文件操作(类似虚拟机的磁盘比如分配500g并不是实际占用物理磁盘500g)。

2022-10-14 12:31:06 152 1

原创 ELFK日志分析系统之Filebeat

Filebeat有两个主要组成部分组成:prospector(探勘者)和harvesters(矿车)。这些组件一起来工作来读取文件并将时间数据发送到指定的output。

2022-10-12 16:58:08 1017

原创 ELK日志分析系统之ELK工作原理

ELK是三个软件的统称,即、Logstash和Kibana三个开源软件的缩写。这三款软件都是开源软件,通常配合使用,并且都先后归于Elastic.co企业名下,故被简称为ELK协议栈。ELK主要用于部署在企业架构中,收集多台设备上多个服务的日志信息,并将其统一整合后提供给用户。它可以从任何来源、任何格式进行日志搜索、分析与可视化展示。提供了一个分布式多用户能力的全文搜索引擎—款强大的数据处理工具可实现数据传输、格式处理、格式化输出。

2022-10-11 23:45:00 519

原创 GFS分布式文件系统

查看分布式条带卷分布(node1:/dev/sdd1、node2:/dev/sdd1、node3:/dev/sdd1、node4:/dev/sdd1)查看分布式复制卷分布(node1:/dev/sde1、node2:/dev/sde1、node3:/dev/sde1、node4:/dev/sde1)Node1节点:node1/192.168.100.3 磁盘: /dev/sdb1 挂载点: /data/sdb1。一个逻辑卷是一组Brick的集合,卷是数据存储的逻辑设备。

2022-10-10 07:00:00 652

原创 Rsync远程同步+inotify监控

可以监控文件系统的变动情况,并作出通知响应调整inotifu内核参数(优化)vim /etc/sysctl.conf(内核参数文件)max_queue_events #监控事件队列大小max_user_instances #最多监控实例数max_user_watches #每个实例最多监控文件数sysctl -p #让修改的参数生效#命令工具inotifywait #用于持续监控,时实输出结果。

2022-10-08 03:30:14 353 1

原创 Redis不同数据类型下的基础查询命令

2、充分利用Set类型的服务端聚合操作方便、高效的特性,可以用于维护数据对象之间的关联关系。比如所有购买某–电子设备的客户ID被存储在一个指定的Set中,而购买另外一种电子产品的客户ID被存储在另外一个Set中,如果此时我们想获取有哪些客户同时购买了这两种商品时,Set的intersections 命令就可以充分发挥它的方便和效率的优势了。redis 127.0.0.1:6379> llen mykey #获取表中元素数量,在执行lpop命令两次后,链表头部的两个元素已经被弹出,此时链表中元素的数量是2。

2022-10-08 01:36:05 149

原创 Redis(主从复制、哨兵模式、集群)概述及部署测试

1、Redis高可用有四种实现方法:持久化、主从复制、哨兵模式、集群模式2、持久化适用于单台服务器,主要作用是数据备份,即将数据存储在硬盘,保证数据不会因进程退出而丢失。其是最简单的一种高可用方式3、主从复制适用于数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。4、哨兵模式基于主从复制,部署哨兵模式必须先部署主从复制,其在主从复制基础上提供了自动化的故障恢复。但是其写操作无法负载均衡,存储能力受到单机的限制。

2022-10-03 16:54:45 281

原创 Redis高可用与持久化

Redis 高可用含义:高可用是指服务器以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务。组成:实现高可用的技术主要包括持久化、主从复制、哨兵和集群。高可用中的持久化:RDB与AOFRDB:周期性的快照AOF:接近实时的持久化(以everysec方式)redis启用的优先级AOF > RDB 同时仅当AOF功能关闭的情况下,redis才会再重新启动时使用RDB的方式进行恢复RDB和AOF中的持久化模式。

2022-10-03 01:40:01 128 2

原创 Redis介绍、安装、基础命令

Redis基于内存运行并支持持久化采用key-value(键值对)的存储形式Redis是一个开源的、使用C语言编写的NoSQL数据库Redis基于内存运行并支持持久化,采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环Redis服务程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程,Redis的实际处理速度则完全依赖于主进程的执行效率。若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降。

2022-10-02 17:35:48 151

原创 MHA高可用配置及故障切换

MySQL服务器中,单台服务器无法承受服务量就配置多台MySQL服务器,多台MySQL服务器或者MySQL服务器五冗余的情况下,配置主从复制。没有上去看服务器的读和写的压力不均衡可使用MySQL的读写分离,MySQL的读写分离中Master存在单点故障,就得用到MHA。

2022-09-29 08:48:21 383

原创 MySQL读写分离

读写分离,基本的原理是让主数据库处理事务性增、改、删操作( INSERT、UPDATE、 DELETE) ,而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。

2022-09-27 01:58:01 552

原创 MySQL主从复制以及会出现的幺蛾子问题、解决方法

读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。

2022-09-27 01:45:55 1764

原创 MySql数据库的存储过程以及一些常见区别问题

存储过程与函数的直接效果类似,只不过存储过程,封装的是一组sql语句。①mysql数据库过程是一组为了完成特定功能的sql语句的集合。② 存储过程这个功能时从5.0版本才开始支持的,它可以加快数据库的处理速度,增强数据库在实际应用中的灵活性。③ 存储过程在使用过程中是将常用或复杂的工作预先使用sql语句写好,并用一个指定的名称存储起来,这个过程编译和优化后存储在数据库服务器中,当需要使用该存储过程时,只需要调用它即可。

2022-09-26 00:09:31 1449

原创 MySQL进阶语句

在MySQL中,视图表与索引一样,都是MySQL数据库的一种优化,其可以加快查询速度,但需要注意的时,视图表一般只作查询使用,不对其进行增、删、改;视图表并不占用实际内存。在表中的NULL值与空值,NULL值是占用内存空间,但是不计入数据统计,而空值是不占内存空间,但是算数据,计入数据统计的。内连接inner join,显示的数据为左右表都同时满足条件。左连接 left join ,是以左表为基础显示,右表需满足条件。右连接right join ,是以右表为基础显示,左表需满足条件。

2022-09-24 17:11:34 19146 10

原创 MySQL备份与恢复

物理冷备份—》关闭mysqld服务----》tar命令打包data目录(恢复就是解压他的tar包即可)逻辑备份—》mysqldump -u(用户) -p(密码) --databases 库1 库2 > xxx.sqlmysqldump -u -p 库1 表1 表2 > xxx.sql完全恢复mysql -u -p < xxx.sql (恢复数据库)mysql -u -p 库名 < xxx.sql (恢复表)增量备份开启二进制日志,设置二进制格式MIXED(混合)

2022-09-20 20:56:33 415

原创 MYSQL 自动补全工具

MYSQL自动补全工具1、yum install -y python3 #安装Python更换PIP源[global][install]1、pip3 install --upgrade pip #更新1、pip3 install mycli #安装mycli1、mycli -uroot -p'Password' #启动mycll2、此时可能会提示缺少“ModuleNotFoundError: No module named 'dataclasses'”模块的错误。

2022-09-20 02:03:44 620

原创 MySQL存储引擎

MySQL中的数据用各种不同的技术存储在文件中,每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力,这些不同的技术以及配套的功能在MySQL中称为存储引擎存储引擎是MySQL将数据存储在文件系统中的存储方式或者存储格式。

2022-09-20 00:58:38 179

原创 mysql事务详解

ACID,是指在可靠数据库管理系统(DBMS)中,事务(transaction)中应该具有的四个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。事务就是是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。指在并发环境中,当不同的事务同时操纵相同的数据时,每个事务都有各自的完整数据空间。指事务是一个不可再分割的工作单位,事务中的操作要么都发生,要么都不发生。

2022-09-19 19:02:22 449

原创 MySQL索引

可以是单列上创建的索引,也可以是在多列上创建的索引。需要满足最左原则,因为 select 语句的 where 条件是依次从左往右执行的,所以在使用 select 语句查询时 where 条件使用的字段顺序必须和组合索引中的排序一致,否则索引将不会生效。因为索引本身会消耗系统资源,在有索引的情况下,数据库会先进行索引查询,然后定位到具体的数据行,如果索引使用不当,反而会增加数据库的负担。添加主键将自动创建主键索引。如果是用组合索引创建,则列值的组合必须唯一。与普通索引类似,但区别是唯一索引列的每个值都唯一。

2022-09-18 00:54:23 222

原创 MYSQL数据库之用户管理

如果同一个属性字段x在表一中数,而在表二中不是主主键,则字段称为表二的外键。唯一,可为空,空值允许出现一次。当为空时,默认值随着记录增加,基于最新的记录的id,进行自加1的增长。

2022-09-17 23:18:04 355

原创 Haproxy集群

默认haproxy的日志是输出到系统的syslog中,查看起来不是非常方便,为了更好的管理haproxy的日志,我们在生产环境中一般单独定义出来。需要将haproxy的info及notice日志分别记录到不同的日志文件中。需要修改rsyslog配置,为了便于管理。将haproxy相关的配置独立定义到haproxy.conf,并放到/etc/rsyslog.d/下,rsyslog启动时会自动加载此目录下的所有配置文件。修改配置文件#更改日志文件global。

2022-09-13 23:10:41 150

原创 MySQL数据库管理基操

用于创建数据库对象,如库、表、索引等1、creat2、drop3、alter。

2022-09-13 16:35:41 274

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除