![](https://img-blog.csdnimg.cn/4b2018757d4a4e9aa09394fd13137a1f.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
云原生
文章平均质量分 83
云原生是基于分布部署和统一运管的分布式云 [1] ,以容器、微服务、DevOps等技术为基础建立的一套云技术产品体系。
鱼找水需要时间
千里之行,积于跬步;万里之船,成于罗盘
展开
-
Docker Service 创建
Docker Swarm 是由 Docker 公司推出的 Docker 的原生集群管理系统,它将一个 Docker主机池变成了一个单独的虚拟主机,用户只需通过简单的 API 即可实现与 Docker 集群的通信。Docker Swarm 使用 GO 语言开发。从 Docker 1.12.0 版本开始,Docker Swarm 已经 内置 于Docker 引擎中,无需再专门的进行安装配置。原创 2023-10-23 22:37:12 · 2008 阅读 · 5 评论 -
Docker Swarm 节点维护
Docker Swarm 是由 Docker 公司推出的 Docker 的原生集群管理系统,它将一个 Docker主机池变成了一个单独的虚拟主机,用户只需通过简单的 API 即可实现与 Docker 集群的通信。Docker Swarm 使用 GO 语言开发。从 Docker 1.12.0 版本开始,Docker Swarm 已经 内置 于Docker 引擎中,无需再专门的进行安装配置。原创 2023-10-23 22:31:41 · 1268 阅读 · 7 评论 -
Docker Swarm 集群搭建
Docker Swarm 是由 Docker 公司推出的 Docker 的原生集群管理系统,它将一个 Docker主机池变成了一个单独的虚拟主机,用户只需通过简单的 API 即可实现与 Docker 集群的通信。Docker Swarm 使用 GO 语言开发。从 Docker 1.12.0 版本开始,Docker Swarm 已经 内置 于Docker 引擎中,无需再专门的进行安装配置。原创 2023-10-23 22:28:30 · 919 阅读 · 6 评论 -
Docker Swarm Mode
Docker Swarm 是由 Docker 公司推出的 Docker 的原生集群管理系统,它将一个 Docker主机池变成了一个单独的虚拟主机,用户只需通过简单的 API 即可实现与 Docker 集群的通信。Docker Swarm 使用 GO 语言开发。从 Docker 1.12.0 版本开始,Docker Swarm 已经 内置 于Docker 引擎中,无需再专门的进行安装配置。原创 2023-10-23 22:24:51 · 539 阅读 · 1 评论 -
Containerd数据持久化和网络管理
Containerd设计的目的是为了嵌入到Kubernetes中使用,它是一个工业级的容器运行时,不提供给开发人员和终端用户直接使用,这样就避免了与Docker产生竞争,但事实上,Containerd已经实现大多数容器管理功能,例如:容器生命周期管理、容器镜像传输和管理、容器存储与网络管理等。原创 2023-08-06 21:39:44 · 973 阅读 · 22 评论 -
Containerd容器镜像管理
Containerd设计的目的是为了嵌入到Kubernetes中使用,它是一个工业级的容器运行时,不提供给开发人员和终端用户直接使用,这样就避免了与Docker产生竞争,但事实上,Containerd已经实现大多数容器管理功能,例如:容器生命周期管理、容器镜像传输和管理、容器存储与网络管理等。原创 2023-08-06 21:37:59 · 2092 阅读 · 3 评论 -
Containerd的两种安装方式
Containerd设计的目的是为了嵌入到Kubernetes中使用,它是一个工业级的容器运行时,不提供给开发人员和终端用户直接使用,这样就避免了与Docker产生竞争,但事实上,Containerd已经实现大多数容器管理功能,例如:容器生命周期管理、容器镜像传输和管理、容器存储与网络管理等。原创 2023-08-06 21:35:50 · 3022 阅读 · 0 评论 -
轻量级容器管理工具 Containerd
Containerd设计的目的是为了嵌入到Kubernetes中使用,它是一个工业级的容器运行时,不提供给开发人员和终端用户直接使用,这样就避免了与Docker产生竞争,但事实上,Containerd已经实现大多数容器管理功能,例如:容器生命周期管理、容器镜像传输和管理、容器存储与网络管理等。原创 2023-08-06 21:33:56 · 611 阅读 · 10 评论 -
Kubernetes高可用集群二进制部署(六)Kubernetes集群节点添加
Kubernetes,简称 k8s(k,8 个字符,s——明白了?)或者 “kube”,是一个开源的 Linux 容器自动化运维平台,它消除了容器化应用程序在部署、伸缩时涉及到的许多手动操作。换句话说,你可以将多台主机组合成集群来运行 Linux 容器,而 Kubernetes 可以帮助你简单高效地管理那些集群。构成这些集群的主机还可以跨越公有云、私有云以及混合云。原创 2023-08-03 22:59:25 · 1011 阅读 · 20 评论 -
Kubernetes高可用集群二进制部署(五)kubelet、kube-proxy、Calico、CoreDNS
Kubernetes高可用集群二进制部署kubelet、kube-proxy、Calico、CoreDNS原创 2023-08-03 22:56:23 · 1231 阅读 · 11 评论 -
Kubernetes高可用集群二进制部署(四)部署kubectl和kube-controller-manager、kube-scheduler
scheduler通过 kubernetes 的监测(Watch)机制来发现集群中新创建且尚未被调度到 Node 上的 Pod。 scheduler会将发现的每一个未调度的 Pod 调度到一个合适的 Node 上来运行。 scheduler会依据下文的调度原则来做出调度选择。Controller Manager作为集群内部的管理控制中心,负责集群内的Node、Pod副本、服务端点(Endpoint)、命名空间(Namespace)、服务账号(ServiceAccount)、资源定额(ResourceQuot原创 2023-08-03 22:50:38 · 1195 阅读 · 7 评论 -
Kubernetes高可用集群二进制部署(三)部署api-server
API Server 是K8s重要的管理API 层。它负责提供restful api访问端点, 并且将数据持久化到etcd server中。Kubernetes 集群中,API Server 扮演着交互入口的位置。API Server 不仅负责和 etcd 交互(其他组件不会直接操作 etcd,只有 API Server 这么做),并切对外提供统一的API调用入口, 所有的交互都是以 API Server 为核心的。原创 2023-08-03 22:46:42 · 850 阅读 · 6 评论 -
Kubernetes高可用集群二进制部署(二)ETCD集群部署
ETCD是用于共享配置和服务发现的分布式,一致性的KV存储系统。kubernetes用etcd来存储docker集群的配置信息等。原创 2023-08-03 22:44:08 · 836 阅读 · 2 评论 -
Kubernetes高可用集群二进制部署(一)主机准备和负载均衡器安装
Kubernetes(简称为:k8s)是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了资源调度、部署管理、服务发现、扩容缩容、监控,维护等一整套功能,努力成为跨主机集群的自动部署、扩展以及运行应用程序容器的平台。 它支持一系列容器工具, 包括Docker、Containerd等。原创 2023-08-03 22:40:30 · 782 阅读 · 0 评论 -
使用kubeadm快速部署一个k8s集群
Kubeadm 是一个 K8s 部署工具,提供 kubeadm init 和 kubeadm join,用于快速部署 Kubernetes 集群。原创 2023-08-03 22:34:12 · 915 阅读 · 0 评论 -
Kubernetes概述
kubernetes,简称 K8s,是用 8 代替 8 个字符“ubernete”而成的缩写。是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes 的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes 提供了应用部署,规划,更新,维护的一种机制。原创 2023-08-03 22:30:27 · 885 阅读 · 1 评论 -
SpringBoot3 整合Prometheus + Grafana
Grafana是一款开源的数据可视化工具,使用Grafana可以非常轻松的将数据转成图表(如下图)的展现形式来做到数据监控以及数据统计。 Grafana专注于时序类图表分析,而且支持多种数据源,如Graphite、InfluxDB、Elasticsearch、Mysql、K8s、Zabbix等。原创 2023-08-02 23:54:54 · 2049 阅读 · 31 评论 -
Prometheus + Grafana安装
Prometheus是一款基于时序数据库的开源监控告警系统,非常适合Kubernetes集群的监控。Prometheus的基本原理是通过HTTP协议周期性抓取被监控组件的状态,任意组件只要提供对应的HTTP接口就可以接入监控。不需要任何SDK或者其他的集成过程。这样做非常适合做虚拟化环境监控系统,比如VM、Docker、Kubernetes等。原创 2023-08-02 23:47:03 · 1511 阅读 · 4 评论 -
Docker网络模式
Docker网络作用:容器间的互联和通信以及端口映射,容器IP变动时候可以通过服务名直接网络通信而不受到影响常用基本命令docker newwork --helpdocker network ls #查看网络docker network inspect XXX网络名字 #查看网络源数据docker network rm XXX网络名字 #删除网络网络模式有五种bridge模式:使用–network bridge指定,默认使用docker0host模式:使用–network host原创 2022-01-20 23:54:05 · 1403 阅读 · 0 评论 -
Docker-compose(容器编排)
Compose 是 Docker 公司推出的一个工具软件,可以管理多个 Docker 容器组成一个应用。你需要定义一个 YAML 格式的配置文件docker-compose.yml, 写好多个容器之间的调用关系。然后,只要一个命令,就能同时启动/关闭这些容器。官网 下载安装curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)"原创 2022-01-21 16:18:47 · 1235 阅读 · 0 评论 -
Docker容器数据卷
Docker容器数据卷是什么?一句话:有点类似我们Redis里面的rdb和aof文件,就是将docker容器内的数据保存进宿主机的磁盘中。Docker容器数据卷能干什么?将运用与运行的环境打包镜像,run后形成容器实例运行 ,但是我们对数据的要求希望是持久化的Docker容器产生的数据,如果不备份,那么当容器实例删除后,容器内的数据自然也就没有了。为了能保存数据在docker中我们使用卷。特点:1:数据卷可在容器之间共享或重用数据2:卷中的更改可以直接实时生效,爽3:数据卷中的更改不会包含原创 2022-01-19 16:54:54 · 476 阅读 · 0 评论 -
Docker安装
docker是一个用Go语言实现的开源项目,可以让我们方便的创建和使用容器,docker将程序以及程序所有的依赖都打包到docker container,这样你的程序可以在任何环境都会有一致的表现,这里程序运行的依赖也就是容器就好比集装箱,容器所处的操作系统环境就好比货船或港口,程序的表现只和集装箱有关系(容器),和集装箱放在哪个货船或者哪个港口(操作系统)没有关系。原创 2022-01-16 13:48:20 · 394 阅读 · 0 评论 -
Docker安装Kafka(docker-compose)、EFAK监控
安装DockerDocker安装mysql EFAK监控面板会用到EFAK监控面板容器安装1、kafka需要zookeeper管理,所以需要先安装zookeeper。 (PS:2.8版本以后kafka-Kraft 模式不再依赖zk,目前别的很多组件都依赖zk注册,所以还是以zk举例)2、下载zookeeper镜像$ docker pull wurstmeister/zookeeper$ docker pull wurstmeister/kafka启动zk镜像生成容器docker run原创 2022-05-08 17:50:08 · 6827 阅读 · 4 评论 -
Docker安装tomcat, mysql,redis(单机版)
步骤搜索镜像拉取镜像查看镜像启动镜像 服务端口映射停止容器移除容器tomcat安装docker search tomcatdocker pull tomcatdocker images tomcat// tomcat镜像创建容器实例(也叫运行镜像)docker run -it -p 8080:8080 tomcatdocker run [OPTIONS]-p 小写,主机端口:docker容器端口-P 大写,随机分配端口i:交互t:终端d:后台即可通过 http:原创 2022-01-19 17:48:59 · 783 阅读 · 1 评论 -
微服务Docker部署jar包
Dockerfile内容# 基础镜像使用javaFROM java:8# 作者MAINTAINER zzyy# VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmpVOLUME /tmp# 将jar包添加到容器中并更名为zzyy_docker.jarADD docker_boot-0.0.1-SNAPSHOT.jar zzyy_docker.jar# 运行jar包RUN bash -c 'touch /zzyy_do原创 2022-01-20 23:08:26 · 1054 阅读 · 0 评论 -
Docker容器监控之 CAdvisor+InfluxDB+Granfana
CAdvisorInfluxDBGranfanaCAdvisor监控收集+InfluxDB存储数据+Granfana展示图表新建目录 /cigdocker-compose.yml新建3件套组合的docker-compose.ymlversion: '3.1' volumes: grafana_data: {} services: influxdb: image: tutum/influxdb:0.9 restart: always environment:原创 2022-01-21 17:11:05 · 814 阅读 · 0 评论 -
redis cluster(集群)模式-基于docker 哈希槽分区
哈希槽分区在数据和节点之间又加入了一层,把这层称为哈希槽(slot),用于管理数据和节点之间的关系,现在就相当于节点上放的是槽,槽里放的是数据。一个集群只能有16384个槽,编号0-16383(0-2^14-1)。这些槽会分配给集群中的所有主节点,分配策略没有要求。可以指定哪些编号的槽分配给哪个主节点。集群会记录节点和槽的对应关系。解决了节点和槽的关系后,接下来就需要对key求哈希值,然后对16384取余,余数是几key就落入对应的槽里。slot = CRC16(key) % 16384。以槽为单位移动原创 2022-01-20 13:19:41 · 1025 阅读 · 0 评论 -
Docker安装 Mysql主从同步
Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。Mysql主从原创 2022-09-18 20:42:21 · 2469 阅读 · 8 评论 -
Docker轻量级可视化工具Portainer
Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境。官网 linux安装docker命令安装docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/port原创 2022-01-21 16:33:08 · 839 阅读 · 0 评论 -
mysql主从复制(基于docker容器化)
拉取镜像不多说,直接从run开始,使用版本mysql 5.71. 新建主服务器容器实例3307docker run -p 3307:3306 --name mysql-master \-v /mydata/mysql-master/log:/var/log/mysql \-v /mydata/mysql-master/data:/var/lib/mysql \-v /mydata/mysql-master/conf:/etc/mysql \-e MYSQL_ROOT_PASSWORD=root.原创 2022-01-19 21:46:17 · 178 阅读 · 1 评论 -
Docker之Dockerfile实践
Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。官网构建步骤:1、编写Dockerfile文件2、ocker build命令构建镜像3、docker run依镜像运行容器实例Dockerfile内容指令知识1、每条保留字指令都必须为大写字母且后面要跟随至少一个参数2、指令按照从上到下,顺序执行3、#表示注释4、每条指令都会创建一个新的镜像层并对镜像进行提交Docker执行Dockerfile的大致流程1、docker从基础原创 2022-01-20 23:03:49 · 693 阅读 · 0 评论 -
Docker(常用命令)
帮助启动类命令启动docker: systemctl start docker停止docker: systemctl stop docker重启docker: systemctl restart docker查看docker状态: systemctl status docker开机启动: systemctl enable docker查看docker概要信息: docker info查看docker总体帮助文档: docker --help查看docker命令帮助文档: docker 具体命原创 2022-01-19 16:09:51 · 1884 阅读 · 2 评论 -
使用kubeadm搭建高可用的K8s集群
参考地址:kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。这个工具能通过两条指令完成一个kubernetes集群的部署:1. 安装要求在开始之前,部署Kubernetes集群机器需要满足以下几个条件:3. 所有master节点部署keepalived3.1 安装相关包和keepalived3.2配置master节点master1节点配置master2节点配置3.3 启动和检查在两台master节点都执行启动后查看master1的网卡信息4. 部署hapr原创 2022-07-27 07:00:00 · 778 阅读 · 0 评论 -
云原生架构的核心技术(微服务、DevOps、容器云、Service Mesh、Serverless、声明式API)
云原生、微服务、DevOps、容器云、Service Mesh、Serverless、Immutable Infrastructure、Declarative-API原创 2022-08-07 18:34:46 · 9975 阅读 · 217 评论