Docker | Kuebrnetes
文章平均质量分 89
容器技术:关于Container的全部资料和实验。例如Docker,Kubernets等等。
Dark_Ice_
游标卡尺为什么不寂寞——因为它不估读。
博客主要记录我日常学习的一些网络知识、编程、Linux和计算机等等有关的一切资料。本人热爱计算机技术,喜欢操作Linux系统,未来的目标是当一名运维工程师(网络知识也很强),一名技术大咖。记录博客,一是将知识点整理,方便以后查找;二是希望能帮助到有需要的人,共同学习交流。
也可以关注公众号“黑科技前哨站”,里面有许多文章以及相关的资源下载。
展开
-
【Docker】Docker 项目实战
想要在开发环境能够结合 maven 自动化构建镜像,就需要先给你自己的电脑安装一个 Docker,目前 Docker 针对 Windows 和 Mac 平台都推出了 Desktop 桌面版本,直接按照官方文档安装即可。官方文档:https://docs.docker.com/desktop/install/windows-install/原创 2023-08-20 22:46:21 · 1432 阅读 · 0 评论 -
【Docker】Docker 可视化图表 Portainer
Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便的管理Docker环境,包括单机环境和集群环境(毫不犹豫直接使用 K8S)。用于监控和统计。官网:https://www.portainer.io/原创 2023-08-20 22:41:51 · 335 阅读 · 0 评论 -
【Docker】Docker Swarm 容器编排
容器编排是什么?容器编排:就是针对容器生命周期的管理,对容器的生命周期进行更高效快速方便的方式进行管理[ 可以让管理员更简单的使用容器 ]容器编排为什么需要?容器编排能干什么?原创 2023-08-20 22:40:31 · 413 阅读 · 0 评论 -
【Docker】Docker 镜像仓库
NexusNexus 是一个强大的 Maven 仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用 Nexus 你可以只在一个地方就能够完全控制访问 和部署在你所维护仓库中的每个 Artifact。Nexus 是一套 “开箱即用” 的系统不需要数据库,它使用文件系统加 Lucene 来组织数据。Nexus 使用 ExtJS 来开发界面,利用 Restlet 来提供完整的 REST APIs,通过 m2eclipse 与 Eclipse 集成使用。原创 2023-08-20 22:33:59 · 13896 阅读 · 2 评论 -
【Docker】Dockerfile & 镜像构建
可以设置自己需要的signal,主要的目的是为了让容器内的应用程序在接收到signal之后可以先做一些事情,实现容器的平滑退出,如果不做任何处理,容器将在一段时间之后强制退出,会造成业务的强制中断,这个时间默认是10s。改镜像运行容器后,需要暴露给外部的端口,但仅仅表示该容器想要暴露某些端口,并不会与主机端口有映射关系,如果想将容器暴露的端口与主机映射则需要使用。以上为该命令的三种写法,第三种与普通 Shell 命令类似,第一、二两种都是可执行文件 + 参数的形式,另外数组内的参数必须使用双引号。原创 2023-08-20 22:28:55 · 698 阅读 · 0 评论 -
【Docker】Docker 高级进阶
不适用Docker自带的网络模式,而是自己去定制化自己特有的网络模式。过时的 Docker link案例Before### 案例# 上述成功启动并用docker exec进入各自的容器实例内部### 问题# 按照IP地址ping是否OK的?# 按照服务名ping结果为?#####After### 案例## 自定义桥接网络,自定义网络默认使用的是桥接网络 bridge## 新建自定义网络## 新建容器加入上一步新建的自定义网络NAMES## 互相ping测试......^C。原创 2023-08-20 22:27:06 · 264 阅读 · 0 评论 -
【Docker】Docker 入门
由于Docker默认下载镜像的仓库是在国外的,因此国内用户访问相对来说会较慢一些,目前国内一些大公司与学校搭建了一些国内的镜像仓库,可以让我们在下载镜像时更方便些。进入容器镜像服务页面后,点击左侧菜单栏中镜像中心下的镜像加速器菜单获取镜像加速器地址,在操作文档处选择Docker所在服务器的操作系统,并按照文档提示完成配置即可。进入控制台以后,找到左上方的三横的功能列表按钮,在弹出来的功能列表处选择弹性计算下的容器镜像服务。-p(小写)主机端口:容器端口 :宿主机端口映射到容器中的容器。原创 2023-08-20 22:21:15 · 125 阅读 · 0 评论 -
【Docker】认识 Docker
Docker技术现已成为大数据工程师、运维工程师、开发工程师、测试工程师、架构师职位必备的专业技能之一,特别是解决开发人员环境部署,部署升级等问题。原创 2023-08-20 22:19:40 · 108 阅读 · 0 评论 -
【Docker】Dockerfile 和 发布制作镜像
Docker Hub 中 99% 镜像都是从这个基础镜像过来的 FROM scratch ,然后配置需要的软件和配置来进行的构建。原创 2023-07-15 11:22:07 · 891 阅读 · 0 评论 -
【Docker】Docker 容器数据卷和 Docker 网络
容器互联技术:–link 和 自定义网络#查看所有的Docker网络信息 $ docker network ls NETWORK ID NAME DRIVER SCOPEDocker 网络模式网络模型简介bridge为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,默认为该模式host容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口none。原创 2023-07-15 11:15:24 · 249 阅读 · 0 评论 -
【Docker】Docker 常用命令和 Docker 镜像
attachAttach to a running container — 当前Shell下attach连接指定运行容器buildBuild an image from a Dockerfile — 通过Dockerfile定制镜像commitCreate a new image from a container’s changes — 提交当前容器为新的镜像cp。原创 2023-07-15 11:09:06 · 636 阅读 · 0 评论 -
【Docker】Docker 概述和 Docker 安装
一款产品:开发 - 上线,三套环境(开发,测试,生产),应用配置开发人员,运维人员。问题:我在我的电脑上可以运行的!版本更新,导致服务不可用,对于运维来说,考验就十分大了?开发即运维!环境配置是十分的麻烦,每一个机器都是要部署环境(集群 Redis,ES,Hadoop…)!费时费力发布一个项目的 Jar (Redis,MySQL,JDK,ES)包。项目能不能带上环境安装打包!之前在服务器配置一个应用的环境Redis MySQL jdk ES Hadoop,配置超麻烦了,不能够跨平台。原创 2023-07-15 10:56:02 · 160 阅读 · 0 评论 -
轻量级工业级容器管理工具 Containerd
但是随着Kubernetes在全球技术市场的广泛应用,有更多的容器管理工具的出现,它们都想能够借助于Kubernetes被用户所使用,所以就提出标准化容器运行时接口,只要适配了这个接口就可以集成到Kubernetes生态当中,所以Kubernetes取消了对shim的维护,并且由于Containerd技术的成功,可以实现无缝对接Kubernetes,所以接下来Kubernetes容器运行时的主角是Containerd。显然,它的主要受众是测试守护进程的容器开发人员。Kubernetes集群里需要用到此包。原创 2023-02-23 02:01:47 · 476 阅读 · 0 评论 -
CentOS 7.9.2009 安装 Kubernetes 1.22.版本
角色 IP地址 k8s-master 192.168.237.5 k8s-node01 192.168.237.15 k8s-node02 192.168.237.25 1.1 关闭SWAP交换分区# 关闭防火墙$ systemctl stop firewalld.service$ systemctl disable firewalld.service# 关闭 SELinux$ sed -i.bak -r 's@(SELINUX=)e...原创 2021-10-02 20:24:00 · 1750 阅读 · 0 评论 -
巧用 Docker 快速部署 GPU 环境
目录Nvidia 驱动安装 gcc 和 kernel-dev安装 Nvidia 驱动CUDA 驱动nvidia-docker2在 Linux 服务器上使用 GPU 跑深度学习的模型很正常不过。如果我们想用 Docker 实现同样的需求,就需要做些额外的工作。本质上就是我们要在容器里能看到并且使用宿主机上的显卡。在这篇文章里我们就介绍一下 Docker 使用 GPU 的环境搭建。Nvidia 驱动某些命令以 Ubuntu 作为示例。首先宿主机上必现安装 Nvidia 驱动。转载 2021-02-09 23:51:30 · 1050 阅读 · 0 评论 -
详解Docker中Image、Container与 Volume 的迁移
目录ImageSaveLoadContainerExportImportVolumeBackupRestore结论已经部署的容器化服务,也不是不需要维护的。而且,由于生产环境往往有这样那样的严格要求,往往需要些非常规操作。Image(镜像)、Container(容器)和Volume(数据卷)的迁移,就是一类有用的非常规操作。以下镜像,均以最简单的Alpine为例。Image镜像的迁移,适用于离线环境。一般离线环境,都会自建Docker Regist原创 2020-09-10 21:03:03 · 404 阅读 · 0 评论 -
Kubernetes容器之间的通信浅谈
作者: Matt Zand和Jim Sullivan译者: 穿过生命散发芬芳FKubernetes是一个容器化的解决方案。它提供了称为Pods的虚拟化运行环境,该环境容纳一个或多个容器以提供虚拟运行环境。Kubernetes的一个重要方面是Pod内的容器间通信。此外,管理Kubernetes网络的一个重要领域是在内部和外部转发容器端口,以确保Pod中的容器之间能够正确通信。为了管理此类通信,Kubernetes提供以下四种联网模型: 容器到容器通信 Pod到Pod通信 ...原创 2021-02-09 23:55:35 · 530 阅读 · 0 评论 -
浅析 k8s 容器运行时演进
目录典型的K8S Runtime架构容器历史小叙OCI, CRIContainerd和CRI-O强隔离容器:Kata,gVisor,Firecracker在docker/k8s时代,经常听到CRI, OCI,containerd和各种shim等名词,看完本篇博文,您会有个彻底的理解。典型的K8S Runtime架构从最常见的Docker说起,kubelet和Docker的集成方案图如下:当kubelet要创建一个容器时,需要以下几步: Kubelet ...原创 2021-02-09 23:58:23 · 694 阅读 · 0 评论 -
K8S实战之环境部署1.18(一)
安装要求,准备环境#系统centos7.6#硬件:2个CPU,2G内存#可以访问外网,禁用swap#提前安装docker环境准备三台服务器服务器ip 服务器名称 192.168.106.102 k8s-master 192.168.106.103 k8s-node01 192.168.106.104 k8s-node02 1. 初始化系统环境,以下命令三台服务器全部执行1.1 关闭防火墙systemct...原创 2021-01-24 22:01:31 · 508 阅读 · 0 评论 -
Kubernetes常见问题总结
目录如何删除双向状态下的rc,部署,服务删除不了后如何重置etcd启动apiserver失败出现权限被拒绝的情况基于ServiceAccount的配置ETCD启动不起来-问题(1)ETCD启动不起来-超时问题(2)CentOS下配置主机互信CentOS主机名的修改Virtualbox实现CentOS复制和粘贴功能删除Pod一直处于终止状态删除namespace一直处于终止状态容器包含有效的CPU /内存请求且没有指定限制可能会出现什么问题?如何删除双向转载 2021-01-04 23:08:01 · 985 阅读 · 0 评论 -
Docker中级篇,看这篇就对了
目录Docker容器数据卷DockerFile创建Tomcat镜像本地镜像上传阿里云Docker总结Docker部署SpringBoot项目Docker镜像是什么镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时库、环境变量和配置文件Docker镜像加载原理UnionFs:联合文件系统UnionFs(联合文件系统):Union文件系统(UnionFs)是一种分层、轻量级并且高性能的原创 2020-10-24 21:45:45 · 273 阅读 · 0 评论 -
【重要】kubeadm高可用master节点(三主两从)
目录1、安装要求2、安装步骤2.1、安装前预处理操作2.2、安装docker2.3、安装kubernetes2.4、Haproxy+Keepalived配置高可用VIP2.5、部署Master节点2.6、其他master节点加入kubernetes集群中2.7、node节点加入kubernetes集群中2.8、安装网络插件3、测试kubernetes集群3.1、kubernetes集群测试3.2、安装dashboard报错1、安装要求在开始之前原创 2020-10-01 23:37:11 · 1660 阅读 · 2 评论 -
【重要】kubernetes二进制部署单master节点
目录3.1、分步骤操作3.2、一键执行脚本4.1、安装cfssl证书生成工具4.2、创建认证中心(根CA中心)4.3、使用自签CA签发Etcd证书4.4、部署Etcd集群5、部署Docker6.1、创建认证中心(根CA中心)6.2、使用自签CA签发kube-apiserver HTTPS证书6.3、部署kube-apiserver组件6.4、部署kube-controller-manager6.5、部署kube-scheduler6.6、查看集群状态7原创 2020-10-01 23:34:19 · 611 阅读 · 0 评论 -
Kubernetes-一文详解ServiceAccount与RBAC权限控制
目录一,服务帐号1.ServiceAccount介绍2.Secret与SA(ServiceAccount)的关系3.默认的服务帐户4.使用自定义SA5.ServiceAccount中添加图片拉秘诀二,RBAC1.RBAC介绍2,角色和集群角色3,角色绑定和集群角色绑定实践:创建一个用户只能管理称为vfan的NameSpace一,服务帐号1.ServiceAccount介绍首先,Kubernetes中账户区分为:用户帐户(用户帐户)和服务帐户(服务帐原创 2020-10-01 23:32:11 · 2563 阅读 · 0 评论 -
Docker的三种网络代理配置
目录dockerd代理Container代理docker build代理有时因为网络原因,比如公司NAT,或其它啥的,需要使用代理。Docker的代理配置,略显复杂,因为有三种场景。但基本原理都是一致的,都是利用Linux的http_proxy等环境变量。dockerd代理在执行docker pull时,是由守护进程dockerd来执行。因此,代理需要配在dockerd的环境中。而这个环境,则是受systemd所管控,因此实际是systemd的配置。sudomkdir-..原创 2020-09-26 23:05:22 · 1338 阅读 · 0 评论 -
kubernetes二进制部署单master节点
目录1、安装要求2、安装规划3.1、分步骤操作3.2、一键执行脚本4.1、安装cfssl证书生成工具4.2、创建认证中心(根CA中心)4.3、使用自签CA签发Etcd证书4.4、部署Etcd集群5、部署Docker6.1、创建认证中心(根CA中心)6.2、使用自签CA签发kube-apiserver HTTPS证书6.3、部署kube-apiserver组件6.4、部署kube-controller-manager6.5、部署kube-schedule原创 2020-09-19 22:19:42 · 1000 阅读 · 1 评论 -
k8s之Service资源
目录Service为四层调度器svc类型Ingress资源,7层代理|调度Service资源是为动态管理的Pod对象添加一个固定访问入口。Service为四层调度器service通过标签选择器关联至拥有相关标签的Pod对象客户端向Service进行请求,而非目标Pod对象,当Service资源变动时,有kube-proxy控制器将规则应用至本机iptables或者ipvs规则。而kube-proxy为DaemonSet 控制器将会在集群中每个节点运行一个Pod或者守护进程原创 2020-09-21 20:10:27 · 345 阅读 · 0 评论 -
用Python操作Kubernetes的Job
目录初始化创建Job直接使用YAML使用dict监控Job运行V1Job的使用列出Job读取Job列出一个Job的Pod删除Job更新Job总结关于Kubernetes的Python SDK,几乎只有官方项目的examples。关于Job的基本增删改查操作,可以参考job_crud.py。但是,这只是基本用法,缺乏一些实用细节。本文给出Python SDK操作Kubernetes Job的更多示例代码,以及相关解释。pipinstallk..原创 2020-09-12 11:14:37 · 2270 阅读 · 0 评论 -
详解Docker中Image、Container与 Volume 的迁移
目录ImageContainerVolume结论已经部署的容器化服务,也不是不需要维护的。而且,由于生产环境往往有这样那样的严格要求,往往需要些非常规操作。Image(镜像)、Container(容器)和Volume(数据卷)的迁移,就是一类有用的非常规操作。以下镜像,均以最简单的Alpine为例。Image镜像的迁移,适用于离线环境。一般离线环境,都会自建Docker Registry。无论官方的,还是最近流行的Harbor,都是不错的选择。但是,这个世界上就是有些原创 2020-09-12 11:13:49 · 323 阅读 · 0 评论 -
Docker的三种网络代理配置
目录dockerd代理Container代理docker build代理有时因为网络原因,比如公司NAT,或其它啥的,需要使用代理。Docker的代理配置,略显复杂,因为有三种场景。但基本原理都是一致的,都是利用Linux的http_proxy等环境变量。dockerd代理在执行docker pull时,是由守护进程dockerd来执行。因此,代理需要配在dockerd的环境中。而这个环境,则是受systemd所管控,因此实际是systemd的配置。sudomkdir-..原创 2020-09-12 11:12:32 · 3776 阅读 · 0 评论 -
kubeadm部署单Master节点
目录1、安装要求(提前确认)2、安装步骤3、测试kubernetes集群4、集群报错总结5、参考1、安装要求(提前确认)在开始之前,部署Kubernetes集群机器需要满足以下几个条件: 三台机器,操作系统 CentOS7.5+(mini) 硬件配置:2GBRAM,2个CPU,硬盘30GB 2、安装步骤角色 IP master 192.168.50.128 node1 192.168.50.131 node2 192.1原创 2020-09-12 11:11:36 · 964 阅读 · 0 评论 -
Kubernetes v1.19版本来了,有哪些重磅更新?
目录将 Kubernetes 支持窗口增加到一年储存容量追踪通用临时存储CSI Volume 健康监测Ingress 升级为 GA结构化日志新的 klog 方法Kubelet 的客户端 TLS 证书轮转其他更新Kubernetes 1.19 版本终于来啦!这是2020年的第二个版本,也是迄今为止最长的发布周期,总共持续20周。它由33项增强功能组成。12个增强功能进入稳定版,18个增强功能进入测试版,13个增强功能进入alpha版。将 Kubernetes 支原创 2020-09-12 11:09:29 · 1073 阅读 · 0 评论 -
Docker Swarm概念与基本用法
目录概念操作从1.12.0版本开始,已经是Docker安装后自带的一部分(捆绑软件)了,又称为Swarm模式,无需额外安装。与Kubernetes相比,Docker Swarm是一个简单的软件,似乎不堪大用。但是它与搬运工-撰写兼容的优点,可以弥补一切。对于没有集群使用经验的小白,用多克尔群起步,是一个很好的选择。概念Docker Swarm,主要包含以下概念: 一群 节点 叠放 服务 任务 负载均衡 Swarm本身就是原创 2020-09-12 11:08:47 · 2703 阅读 · 0 评论 -
Docker环境部署Prometheus实践
目录一、Prometheus简介二、部署PrometheusServer三、部署监控组件Exporter四、部署Alertmanager报警组件五、Grafana展示组件六、PromQL语句七、使用Concul HTTP注册方式实现服务发现一、Prometheus简介Prometheus是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB)。Prometheus使用Go语言开发,是Google BorgMon监控系统的开源版本。2016年由Goo原创 2020-09-12 11:08:16 · 3999 阅读 · 1 评论 -
如何在Kubernetes中配置基于NFS的持久卷
目录配置基于NFS的PV(永久卷)配置持久卷声明在Pod中使用基于NFS的持久卷建议将Pod的数据放入某个持久卷中,以便即使Pod终止后也可以使用这些数据。在Kubernetes(k8s)中,可以在Pod中使用基于NFS的持久卷。在本文中,我们将学习如何配置持久卷和持久卷声明,然后我们将讨论如何通过k8s pod中的声明名称使用持久卷。我假设我们有一个功能正常的k8s集群和NFS Server。以下是实验室设置的详细信息: NFS服务器IP = 192.168.1.40原创 2020-09-12 11:07:12 · 453 阅读 · 0 评论 -
使用Kubeadm设置Kubernetes合并的高可用性
当我们为生产环境在本地设置Kubernetes(k8s)部署时,建议以高分配部署它。高可用性意味着在HA中安装Kubernetes主例程或工作堆栈。在此处,我将演示如何使用kubeadm实用程序设置高可用性的Kubernetes配置。为了进行演示,我使用了五个具有以下详细信息的CentOS 7系统: k8s-master-1 –最低CentOS 7 – 192.168.1.40 – 2GB RAM,2vCPU,40 GB磁盘 k8s-master-2 –最低CentOS 7 – 192.原创 2020-09-12 11:06:37 · 492 阅读 · 2 评论 -
详解k8s的4种Service类型
目录Services 和 PodsUserspaceiptablesIPVSClusterIPNodePortLoadBalancerExternalNameServices 和 PodsKubernetesPods是有生命周期的。他们可以被创建,而且销毁不会再启动。如果您使用Deployment来运行您的应用程序,则它可以动态创建和销毁 Pod。一个Kubernetes的Service是一种抽象,它定义了一组Pods的逻辑集合和一个用于访问它们的策略 - 有原创 2020-08-08 23:16:04 · 20120 阅读 · 3 评论 -
Kubernetes如何高效管理节点的资源
目录Kubelet如何确定资源不足?Kubelet如何回收资源?最低驱逐收回一个简单的资源短缺处理方案结论kubelet是Kubernetes中的主要节点组件,它执行许多关键任务。Kubelet主要职责在:•向kube-apiserver注册节点•watch kube-apiserver中已经调度完成的Pod,并在Pod被调度完成之后告诉容器运行时(例如Docker)启动容器•监视运行中的容器并将其状态报告给kube-apiserver•执行活动性探针并在容器失败后重新启动容器•原创 2020-08-08 23:14:10 · 518 阅读 · 0 评论 -
用 Docker 构建 MySQL 主从环境
目录前言介绍配置前言本篇文章记录使用 docker-compose 以及 dockerfile 来构建基于 binlog 的 MySQL 主从环境。如果你严格按照文中的步骤进行配置,相信很快就可以搭建好一个基础的 MySQL 主从环境。介绍MySQL 主从同步分为 5 个步骤:1.master 节点将数据的更新记录写到 binary log 中。2.slave 节点开启 IO 线程连接 master 节点,请求获取指定 binary log 文件的指定位置之后的日志。3.原创 2020-08-08 12:54:36 · 331 阅读 · 0 评论 -
10 分钟看懂 Docker 和 K8S!
2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司。这家公司主要提供基于PaaS的云计算技术服务。具体来说,是和LXC有关的容器技术。LXC,就是Linux容器虚拟技术(Linux container)后来,dotCloud公司将自己的容器技术进行了简化和标准化,并命名为——Docker。Docker技术诞生之后,并没有引起行业的关注。而dotCloud公司,作为一家小型创业企业,在激烈的竞争之下,也步履维艰。正当他们快要坚...原创 2020-07-28 21:44:52 · 383 阅读 · 0 评论