![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
云计算-虚拟化
文章平均质量分 85
将x台物理机虚拟成y台虚拟机,以使用其资源,实现需求的功能
Friends of the wind
拥有k8s、阿里云领域的多项证书,从事央企项目,擅长以幽默易懂的方式讲授知识,精通Linux系统、云计算、k8s、docker、等主流技术,熟练编程语言shell、懂Python、Java、网络设备:思科、华为、H3C,尤擅案例分析、问题解决,方案创作。
展开
-
Ubuntu搭建harbor仓库
学习目标:提示:这里可以添加学习目标如何给root用户设定密码: 只需执行命令:sudo passwd root然后根据提示一步一步来。学习内容:提示:这里可以添加要学的内容例如:1、 搭建 Java 开发环境2、 掌握 Java 基本语法3、 掌握条件语句4、 掌握循环语句学习时间:提示:这里可以添加计划学习的时间例如:1、 周一至周五晚上 7 点—晚上9点2、 周六上午 9 点-上午 11 点3、 周日下午 3 点-下午 6 点学习产出:提示:这里统计学习计划的总原创 2022-02-06 09:34:10 · 2370 阅读 · 0 评论 -
【精品】Ubuntu轻松搭建k8s集群报错解决
文章目录环境一、安装docker1.获取docker版本列表2.安装并优化配置二、部署k8s1.引入库2.读入数据总结环境主机角色名称1、关闭系统swap ;sudo swapoff -asudo sed -i ‘/swap/ s/^/#/’ /etc/fstab验证:2、开启内核ipv4转发开启sudo vim /etc/sysctl.confnet.ipv4.ip_forward = 1 #开启ipv4转发,允许内置路由sudo sysctl -原创 2022-02-03 16:42:06 · 1617 阅读 · 2 评论 -
docker file的优化及常见错误排查
为什么?增强dockerfile可读性(部门同事,理解不一,做到别人也能看懂,或者,出现bug,方便别人排查)更快的构建速度(坚持更小的镜像大小、更少的镜像层,充分利用镜像缓存)使用更简单是什么提示:从哪几个方面着手,不要出现问题再排查,而要通过合理规划,避免不必要的问题。1、 规划合理顺序,COPY与ADD(优先及其顺序)把变化最少的放在 Dockerfile 的前面,可以充分利用镜像缓存COPY指令简单,仅用于将文件拷贝到镜像中。ADD相对来讲复杂一些,执行效率低。2、 选择最优原创 2022-01-01 21:18:46 · 835 阅读 · 2 评论 -
docker故障词典
Docker是一种相对使用较简单的容器,通过以下几种方式获取信息:1、通过docker run执行命令,或许返回信息2、通过docker logs 去获取日志,做有针对性的筛选3、通过systemctl status docker查看docker服务状态4、通过journalctl -u docker.service 查看日志常见问题:一、启动类故障1、docker: Cannot connect to the Docker daemon at?unix:///var/run/docker.s原创 2021-12-24 12:15:58 · 3117 阅读 · 0 评论 -
开心学k8s无需登录自动下载harbor镜像
目标:实现k8s下载镜像无需登录harbor环境规划主机名IPmaster172.16.0.168node01172.16.0.169node02172.16.0.170提示:软件及环境必须一致,否则,某些版本可能不支持,此项功能各服务版本K8s v1.18.0docker-compose version 1.28.2下载地址:https://github.com/docker/compose/releasesharbor-offline-in原创 2021-12-18 22:40:15 · 1156 阅读 · 0 评论 -
精讲docker应用部署mysql及dockerfile编写
是什么?dockerfile 是用来构建docker镜像的文件,命令参数脚本!构建步骤:1、 编写一个dockerfile文件2、 docker build 构建称为一个镜像3、 docker run运行镜像DockerFile常用指令语法:1、每个保留关键字(指令)都是必须是大写字母2、执行从上到下顺序3、#表示注释4、每一个指令都会创建提交一个新的镜像层,并提交!FROM # 基础镜像MAINTAINER # 镜像是谁写的, 姓名+邮箱原创 2021-12-17 22:56:48 · 2058 阅读 · 0 评论 -
轻松部署Jenkins+harbor+gitlab实现docker的CICD
利用Jenkins+gitlab实现代码自动上线,自动部署服务到应用服务器难点:如何把新构建镜像自动拉取到应用服务器并自动部署容器?一、环境流程:服务器列表提示:harbor、应用测试主机安装docker19.03.10,需要Java环境,本例为java-1.8.0。角色主机名IP软件持续集成jenkins192.168.42.4git、jenkins-2.222代码托管git192.168.42.原创 2021-12-08 22:08:36 · 1673 阅读 · 0 评论 -
轻松学Kubernetes 的包管理器-Helm
为什么用它?包管理器类似于我们在 Ubuntu 中使用的apt、Centos中使用的yum 或者Python中的 pip 一样,能快速查找、下载和安装软件包。Helm 由客户端组件 helm 和服务端组件 Tiller 组成, 能够将一组K8S资源打包统一管理, 是查找、共享和使用为Kubernetes构建的软件的最佳方式。是什么?提示:Helm有什么特性1、查找要安装和使用的预打包软件(Chart);2、轻松创建和托管自己的软件包;3、将软件包安装到任何 K8s 集群中;4、查询集群以查原创 2021-12-06 20:55:22 · 721 阅读 · 1 评论 -
k8s重点知识Ingress技法精讲
k8s的负载均衡ingress原创 2021-11-30 20:36:00 · 2382 阅读 · 1 评论 -
部署k8s集群存储类 必懂storageclass
是什么storageclass连接存储插件,根据PVC的消费动态生成PV,简言之,就是在创建pod之前,NFS的另一种形式存储,只要一次定义一个类,以后不用声明,会自动挂载此类NFS示例提示:node节点也要下载 nfs-utils,否则将不能挂载步骤:1、 开启NFSvim /etc/exports/nfsdata *(rw,sync,no_root_squash)[root@master ~]# systemctl start rpcbind[root@master ~]# sys原创 2021-11-26 17:37:33 · 1421 阅读 · 3 评论 -
部署k8s集群存储-数据卷
学习目标:Volume: 数据卷kubernetes Pod中多个容器访问的共享目录。volume被定义在pod上,被这个pod的多个容器挂载到相同或不同的路径下。volume的生命周期与pod的生命周期相同,pod内的容器停止和重启时一般不会影响volume中的数据。所以一般volume被用于持久化pod产生的数据。volume类型:emptyDirhostPath学习内容:提示:这里可以添加要学的内容例如:1、 搭建 Java 开发环境2、 掌握 Java 基本语法3、 掌握条件原创 2021-11-25 17:26:36 · 1487 阅读 · 0 评论 -
玩kubernetes(K8S)面试必懂知识要点
1、什么是Kubernetes?开源容器管理工具,用于自动化容器部署、扩缩容等管理;是多容器管理解决方案。原理:它将组成应用程序的容器分组为逻辑单元,以便于管理和发现,用于管理云平台中多个主机上的容器化应用;作用:Kubernetes 的目标是让部署容器化的应用简单、高效,很多细节都不需要运维人员去进行复杂的手工配置和处理。2、Kubernetes特点自动修复:某个容器崩溃,控制器能够迅速启动新的容器弹性伸缩:根据需要,自动对集群中正在运行的容器数量调整服务发现:服务通过自动发现的形式找到所原创 2021-11-18 17:28:36 · 479 阅读 · 1 评论 -
部署k8s集群及报错完美解决方案
目录部署环境一、master操作二、node01操作部署环境Linux版本CPUMEMCentOS7双核4G/nodemasternode01172.16.0.168172.16.0.1691、更改主机名hostnamectl set-hostname masterhostnamectl set-hostname node012、添加对应域名解析cat >> /etc/hosts << EOF172.16.0原创 2021-11-16 11:49:53 · 7140 阅读 · 1 评论 -
从零开始轻松部署Docker Swarm集群
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据报错前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码原创 2021-11-13 13:14:52 · 1517 阅读 · 1 评论 -
轻松构建docker服务发现机制
目录前言一、环境二、部署步骤1.Docker01操作2.docker02、docker03加入consul集群总结前言服务发现在SOA(Service-Oriented Architecture)架构中是一个很重要的概念,是支撑大规模 SOA 的核心服务,在应用Docker容器集群的实践中也是非常重要的功能。对于Docker容器之间跨主机访问这个难题,服务发现是目前较为实用的解决方案。服务发现的功能是管理集群中的进程或服务之间的通信,涉及到服务列表,在服务列表中注册服务,并且能够在服务列表中查找并连原创 2021-11-12 10:34:29 · 3890 阅读 · 0 评论 -
Docker-Compose部署tomcat与redis及mysql
部署流程:导入镜像安装docker-compose容器编排工具创建配置文件运行验证步骤:技巧:镜像也可不事先下载,执行命令会自动下载,但是那样会很慢!!!1、 导入镜像提示:实验环境导入前先保证,防火墙关闭,安全策略关闭,docker正常启动;版本不要过高,有些版本部分场景会报错!docker load -i tomcat163.tar //tomcat镜像docker load -i mysql5.7.tar //MySQL镜像docker load -i red原创 2021-11-11 10:04:35 · 2308 阅读 · 1 评论 -
轻松搭建Prometheus监控容器服务
目录环境一、它是什么?二、使用步骤1.引入库2.读入数据总结环境角色主机名IP组件管理端repository01172.16.0.154NodeEXporter、cAdvisor、Prometheus Server、Grafana、AlertManager被管理节点repository02172.16.0.155NodeEXporter、cAdvisor被管理节点repository03172.16.0.145NodeEXporter、cAdvis原创 2021-11-10 20:21:28 · 1462 阅读 · 2 评论 -
简单好用的容器监控工具-Weave scope
简介Weave scope 获知集群的实时状态,并为故障排查提供及时和准确的数据支持。是一款 Docker 和 Kubernetes 可视化监控工具。提供了至上而下的集群基础设施和应用的完整视图,用户可以对分布式的容器应用进行实时监控和问题诊断,以确保容器应用程序的稳定性和性能。通过查看容器上下文的度量/标记,以及原数据,在容器内部的进程之间可以轻松的确定运行服务消耗最多CPU/内存资源的容器。组件由App和Probe两部分组成:Probe Agent:收集容器和宿主的信息,并发送给 App原创 2021-11-10 09:50:02 · 1147 阅读 · 1 评论 -
简单实用的docker监控工具-sysdig
简介它是系统监控、分析和排障的工具,官方网址https://sysdig.com/特性:三优点一缺点整合虽然 linux 有很多系统分析和调优的工具,但是它们一般都负责单个的功能,如果要分析和定位问题,需要熟练掌握需要多种命令。而且这些工具的数据相互独立,无法进行共享。sysdig 一个工具就能实现所有工具的功能,并且提供了统一的使用语法。强大监控信息全,包括Linux操作系统和容器。能获取实时的系统数据,也能把信息保存到文件中以供后面分析。捕获的数据包含系统的个个方面:系统参数:CPU、原创 2021-11-10 09:14:49 · 1385 阅读 · 2 评论 -
畅享docker-compose之旅及编排wordpress报错解决
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档目录理论一、部署Nginx服务1.安装docker-compose2.compose编排Nginx3.docker-compose管理命令二、搭建wordpress的博客1.引入库2.读入数据总结理论1.是什么?docker容器的批量管理工具但没有资源管理功能(给某个容器多分或少分内存、存储空间)。官网文档地址: https://docs.docker.com/compose/overview/2.为什么用它?解决复杂依赖关原创 2021-11-09 09:30:04 · 579 阅读 · 1 评论 -
docker妙用SpringBoot构建微服务实战
它是啥?Spring Boot 是 Spring 开源组织的子项目,是 Spring 组件一站式解决方案,主要是简化了使用 Spring 的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。为啥用它?五大优点:1、起步依赖 官方为我们整合了大量的起步依赖,简化了我们搭建项目的工作,同时,起步依赖提供了可靠的依赖管理,降低了项目引入问题版本和依赖冲突的风险。2、 自动配置 开启组件扫描和自动配置。 通过exclude参数关闭特定 的自动配置。3、 应用监控 Spring Boot原创 2021-11-08 10:22:57 · 390 阅读 · 1 评论 -
docker发布微服务lnmp综合应用
目录环境一、搭建harbo镜像仓库二、docker02操作1.docker自定义网络2.容器运行服务3.登录网页安装WordPress三、docker02操作1.下载镜像2.容器运行服务3.登录网页安装WordPress总结环境角色主机名IP安装服务镜像服务器docker01172.16.0.128harbo应用服务器docker02172.16.0.144lnmp、WordPress应用服务器docker03172.16.0.145consul、原创 2021-11-07 12:01:15 · 235 阅读 · 1 评论 -
docker搭建服务及报错解决-elk
学习目标:一 安装Elasticsearch1.下载ES镜像docker pull elasticsearch:7.7.12.运行镜像docker run -itd --name es1 -p 9200:9200 -p 9300:9300 -v esdata:/usr/share/elasticsearch/data -v esconfig:/usr/share/elasticsearch/config -v esplugins:/usr/share/elasticsearch/plugin原创 2021-11-05 14:09:54 · 1109 阅读 · 3 评论 -
轻松学透docker数据卷
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档目录前言一、创建普通数据卷二、数据卷管理命令1.引入库2.读入数据三、Dockerfile创建镜像并挂载数据卷总结前言docker数据卷:类似于Linux的一种卷,挂载到目录,实现数据备份,修改配置。特点:数据卷可以在容器之间共享和复用对数据卷的修改会立即影响到对应容器对数据卷的修改不会影响镜像即使容器被删除,只要不删除数据卷的本机目录,数据卷一直存在一、创建普通数据卷实例1:1.创建数据卷目录mkdir /r原创 2021-11-04 10:19:40 · 184 阅读 · 6 评论 -
精讲docker跨主机通信
目录概述一、Docker overlay案例1.环境2.配置二、Macvlan案例1.环境同上2.docker01和docker02操作概述跨主机网络意味着将不同主机上的容器用同一个虚拟网络连接起来。这个虚拟网络的拓扑结构和实现技术叫网络模型。提示:本节介绍最常用两种,Docker overlay、Macvlan一、Docker overlay是 overlay 网络,建立主机间 VxLAN 隧道,原始数据包在发送端被封装成 VxLAN 数据包,到达目的后在接收端解包。案例1.环境暂时不原创 2021-11-03 10:25:30 · 479 阅读 · 1 评论 -
docker硬核知识-容器部署redis集群
部署redis集群环境步骤1.创建一个redis网络2.编写redis配置文件3.启动六个redis4.进入一个容器,并创建redis集群5.启动集群,生成存储数据6.测试高可用环境1.关闭防火墙、selinux2.启动dockersystemctl start docker3.保证可以连接互联网步骤1.创建一个redis网络1)创建目录mkdir -p /home/redis/node0{1…6}/data2.编写redis配置文件3.启动六个redis4.进入一个容器,并创建r原创 2021-11-02 09:51:41 · 392 阅读 · 0 评论 -
玩会基于registry的私有仓库
目标:1、理解概念。2、学会搭建使用方法。内容:1、为什么用它?公司服务器大部分都是私网,为了安全和方便可以搭建私有仓库,而不用完全手动的去导入导出镜像,因为是局域网拉取速度非常快,可以节省带宽和大量时间。 有时候使用 Docker Hub 这样的公共仓库可能不方便(隐私文件),用户可以创建一个本地仓库供私人使用。2、是什么?docker-registry是官方提供的工具,可以用于构建私有的镜像仓库。一般情况下,不论是通过commit容器得到的镜像,或者是用dockerfile 制作的镜像原创 2021-10-29 10:25:21 · 404 阅读 · 1 评论 -
教你轻松玩Harbor-常用的企业级私有仓库
本节目标:了解harbor是什么?掌握常用的harbor搭建方法内容:1、 Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是Docker Registry的更高级封装。harbor还是由一个个镜像组成一个架构,实现私有仓库的功能。它除了提供友好的Web UI界面,角色和用户权限管理,用户操作审计(用户都做了哪些操作)等功能外,它还整合了K8s(谷歌的产品)的插件(Add-ons)仓库。即 Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可原创 2021-10-29 09:21:36 · 694 阅读 · 1 评论 -
脚本一键构建docker镜像
思考三个问题1、镜像是什么?2、如何上传、下载镜像?3、怎么自己创建镜像?问题答案:1、镜像 是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。2、 上传命令语法: docker push [OPTIONS] NAME[:TAG]下载命令语法:docker pull [OPTIONS] NAME[:TAG]3、 用两种方式创建自己的镜像:第一种:用下载的镜像进行二次修改,创建成自己的原创 2021-10-28 13:09:34 · 785 阅读 · 1 评论 -
教你轻松记重要的docker命令
目标:必须解决的几个问题?1、精准定位问题根源 是记住命令太难,还是难以找到匹配自己记忆习惯的方法?2、分清长时记忆与短时记忆 根据艾宾浩斯理论知识遗忘是有规律的,根据其规律,可制定最佳攻克遗忘的方法。记命令实战提示:根据现阶段实际需要对记忆方法进行调整分类1、 使用频率高(面试、工作中),属于长时间记忆范畴怎么记住这类命令?简化、分解、编码、多练1)编码:增删查增:下载镜像 docker pull 镜像名;例如:docker pull centos:7新建容器并启动原创 2021-10-26 17:47:41 · 200 阅读 · 1 评论 -
重要到不要不要的-docker底层知识
概念Namespace(名称空间):名字空间是Linux内核一个强大的特性。每个容器都有自己单独的名字空间,运行在其中的应用都像是在独立的操作系统中运行一样。名字空间保证了容器之间彼此互不影响。namespec六项隔离,实现了容器与宿主机、容器与容器之间的隔离。IPC: 共享内存、消息列队MNT: 挂载点、文件系统NET: 网络栈PID: 进程编号USER: 用户、组UTS: 主机名、域名释义:ipc 名字空间容器原创 2021-10-25 17:58:39 · 228 阅读 · 1 评论 -
你的技术够用吗?学会docker基础知识
是什么?Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。简言之,只需要一次配置好环境,换到别的机子上就可以一键部署。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。Docker 从 17.03 版本之后分为 CE(Community Edition:原创 2021-10-22 17:41:32 · 224 阅读 · 1 评论 -
kvm那些事!你该学会存储池和网络管理
存储卷管理1.列出存储池的存储卷virsh vol-list kvm_store2.创建存储卷virsh vol-create-as kvm_store centos7.2.qcow2 10G --format qcow23.针对已有虚拟机添加磁盘设备(必须开机状态操作)vim add-disk2.xml virsh attach-device vmtest02 add-disk.xml4.查看虚拟机磁盘设备virsh domblklist vmtest02==原创 2021-10-21 20:58:56 · 281 阅读 · 1 评论 -
kvm的乾坤大挪移-虚拟机迁移
虚拟机迁移:冷迁移:关闭虚拟机,把虚拟机的配置和磁盘文件移动到其他kvm主机重新定义虚拟机热迁移: 把配置和磁盘文件放到共享存储,在开机状态下迁移到其他kvm主机,业务不中断热迁移步骤:1.开起两台图形化宿主机kvm:172.16.0.139kvm2:172.16.0.1402.搭建NFS服务:172.16.0.136yum install nfs-utils rpcbind -ymkdir /nfsdirvim /etc/exports/nfsdir 172.16.0.0/24(r原创 2021-10-21 17:37:47 · 657 阅读 · 1 评论 -
不信你不学!虚拟化技术之kvm宿主机、存储池管理命令用法及排错
宿主机命令前提:yum -y install libguestfs libguestfs-tools1.virt-inspector 查看虚拟磁盘文件所有信息注意:1)尽量输入绝对路径,否则提示找不到;后面可以加管道符more,以分页显示2)建议虚拟机关机操作,只有少数操作支持开机操作virt-inspector --format=qcow2 -a /kvm_store/centos7.1.qcow2 | more2.virt-cat 查看虚拟机内部文件信息virt-cat -a cent原创 2021-10-20 20:21:47 · 977 阅读 · 1 评论 -
跳过那些坑!太好用啦!虚拟化技术之kvm基础用法及排错
KVM原理qemu-img: 创建虚拟机磁盘文件磁盘文件类型:raw读写速度快,但无高级功能 ,不支持快照等qcow2:速度稍慢,但支持克隆、快照等高级功能小试牛刀-命令创建虚拟机案例1:使用qemu-img 以raw格式文件创建虚拟机 创建一个raw格式的磁盘文件qemu-img create /kvm_store/example01.img 8G 查看镜像文件信息qemu-img info /kvm_store/example01.img命令安装虚拟机1)输入命原创 2021-10-19 10:04:01 · 519 阅读 · 1 评论