『RHCA-OpenS&K8S 』
文章平均质量分 62
DO280
Mr. Sun_
欢迎小伙伴来到博客,共同学习,一同进步。
展开
-
Docker-可视化管理工具总结-推荐使用Portainer
当然如果发现LazyDocker挺好用,准备经常使用的话,还可以把它做成缩写添加到shell配置文件中,这样就可以将它变成一个简单的命令。如果使用Portainer管理本地Docker主机的话,需要绑定/var/run/docker.sock**(这里是个知识点,涉及docker 之间通信的问题,以及docker 里运行docker )**的web接口,目的是提供一个简洁纯净的客户端实现,为了连接和管理Docker;之后就可以看到本机上运行的Docker容器了,点击它们还可以进行容器的管理。转载 2023-10-30 22:48:47 · 362 阅读 · 0 评论 -
OpenShift 之 Image Registry、Image 和 ImageStream 概念和相关操作
概念篇1. Container Image(容器镜像)不用再解释了,就是容器镜像。以前叫Docker Image,现在叫Container Image更准确些,因为有了OCI容器规范后,容器不再是Docker一家的了。2. ImageStreamImageStream是OpenShift独有的一种对象,在Kubernetes中没有对应的对象。它主要目标是简化容积镜像管理,机制就是通过使用标签实现镜像指针。ImageStream包括一系列”标签指针“指向实际的容器,例如下图有latest、8和7版本的转载 2020-06-30 14:07:49 · 2019 阅读 · 0 评论 -
k8s的yaml写法
本文引入三个链接,个人感觉对k8s的yaml写法很有帮助。https://www.kubernetes.org.cn/ 这里面的文章很全https://gitee.com/jasonminghao/kubernetes-docker-yaml/tree/master 这位git的作者写了很多的yaml值得学习https://blog.csdn.net/Ay_Ly/article/details/89393281 这篇博客包含了dc,svc,pod,ingress的详解...原创 2020-06-23 12:45:02 · 819 阅读 · 0 评论 -
一文说清 KubeSphere 容器平台的价值
官网https://kubesphere.com.cn/zh-CN/KubeSphere (github.com/kubesphere)作为云原生家族后起之秀,开源近两年的时间以来收获了诸多用户与开发者的认可。本文通过大白话诠释 KubeSphere的定位与价值,以及不同团队为什么会选择 KubeSphere。对于企业 KubeSphere是什么KubeSphere是在 Kubernetes之上构建的多租户容器平台,以应用为中心,提供全栈的 IT自动化运维的能力,简化企业的 DevOps工作..转载 2020-06-07 11:54:01 · 1417 阅读 · 0 评论 -
rancher AND Kubernetes
K8s:实实在在的Docker容器编排工具,包括对于Docker容器网络的管理,资源的管理等,它解决了多容相互依赖,相互隔离的场景需求,与此类似的还有Swarm等。早期的K8s甚至没有界面,完全命令行交互,安装也较为繁琐,并不是非常友好。Rancher:更上层管理框架,更像是一个微容器云的管理平台,它支持容器编排框架的选择(早期版本),可见可以把它看作K8s更上层的管理平台,界面化做的更好,它让对于K8s的操作和K8s之外的操作都变得更加友好。一、环境准备1.准备至少3台CentOS7版本的虚转载 2020-06-07 11:16:46 · 584 阅读 · 0 评论 -
Kubernetes学习之K8S组件运行原理详解总结
目录一、看图说K8S 二、K8S的概念和术语 三、K8S集群组件 1、Master组件 2、Node组件 3、核心附件 四、K8S的网络模型 五、Kubernetes的核心对象详解 1、Pod资源对象 2、Controller 3、Service 一、看图说K8S先从一张大图来观看一下K8S是如何运作的,再具体去细化K8S的概念、组件以及网络模型。从上图,我们可以看到K8S组件和逻辑及其复杂,但是这并不可怕,我们从宏观上先了解K8S是怎么用的,.转载 2020-05-31 10:44:13 · 948 阅读 · 1 评论 -
docker入门(利用docker部署web应用)
前言:本课程是在慕课网上学习 第一个docker化的java应用 课程时所做的笔记,供本人复习之用目录第一章 什么是docker1.1 docker的发展史1.2 docker国内应用史1.3 什么是Docker第二章 了解docker2.1 docker思想2.1.1 集装箱2.1.2 标准化2.1.3 隔离2.2 docker解决的问题2.2.1 系统环境不一致2.2.2 系统好卡,哪个哥们又写死循环了2.2.3 双11来了,服务器撑不住了第三转载 2020-05-09 17:27:29 · 476 阅读 · 0 评论 -
docker 三剑客
docker-machinedocker-machine是解决docker运行环境问题。docker技术是基于Linux内核的cgroup技术实现的,那么问题来了,如果在非Linux平台上使用docker技术需要依赖安装Linux系统的虚拟机。docker-machine就是docker公司官方提出的,用于在各种平台上快速创建具有docker服务的虚拟机的技术。你可以把它理解为virtual...转载 2020-04-26 13:25:55 · 285 阅读 · 0 评论 -
docker-compose的用法
docker-compose是什么?假如,你有一个java镜像,一个mysql镜像,一个nginx镜像。如果没有docker-compose,那么每次启动的时候,你需要敲各个容器的启动参数,环境变量,容器命名,指定不同容器的链接参数等等一系列的操作,相当繁琐。而用了docker-composer之后,你就可以把这些命令一次性写在docker-composer.yml文件中,以后每次启动这一整个...原创 2020-04-26 09:05:44 · 1201 阅读 · 0 评论 -
深入理解 Docker 构建上下文
本文通过具体实践深入解读 Docker 构建上下文的含义,解惑或者纠正很大一部分人对 Docker 构建上下文的理解误区。本文主要讨论如下主题:对 Docker 构建上下文的理解误区 理解 Docker 的架构 理解 docker build 的工作原理 正确理解 Docker 构建上下文对 Docker 构建上下文的理解误区我们都知道,构建一个 Docker 镜像非常简单,大家一...转载 2020-04-24 11:14:12 · 768 阅读 · 0 评论 -
docker的container和image之间的关系
Image与Container之间的联系?答:镜像的概念更多偏向于一个环境包,这个环境包可以移动到任意的Docker平台中去运行;而容器就是你运行环境包的实例。你可以针对这个环境包运行N个实例。换句话说container是images的一种具体表现形式。你也可以认为镜像与你装载操作系统iso镜像是一个概念,容器则可理解为镜像启动的操作系统。一个镜像可以启动任意多个容器,即可以装载多个操作系统。...转载 2020-04-23 15:32:01 · 1421 阅读 · 0 评论 -
k8s集群——PodNamespace
Kubernetes可以使用Namespaces(命名空间)创建多个虚拟集群。当团队或项目中具有许多用户时,可以考虑使用Namespace来实现多租户的资源隔离。Namespace为名称提供了一个范围。资源的Names在Namespace中具有唯一性。Namespace是一种将集群资源划分为多个用途(通过 resource quota)的方法。在未来的Kubernetes版本中,默认情...原创 2020-04-14 17:46:31 · 848 阅读 · 0 评论 -
k8s集群——Volume
(1)Volume概要知识默认情况下容器中的磁盘文件是非持久化的,对于运行在容器中的应用来说面临两个问题:第一:当容器挂掉kubelet将重启启动它时,文件将会丢失;第二:当Pod中同时运行多个容器,容器之间需要共享文件时。Kubernetes的Volume解决了这两个问题。Kubernetes Volume具有明确的生命周期,与pod相同。因此,Volume的生命周期比Pod中运...原创 2020-04-14 17:45:22 · 575 阅读 · 0 评论 -
k8s集群——Service
(1)Service的概念k8s的Service定义了一个服务的访问入口地址,前端的应用通过这个入口地址访问其背后的一组由Pod副本组成的集群实例。Service与其后端Pod副本集群之间则是通过Label Selector来实现对接的。RC的作用相当于是保证Service的服务能力和服务质量始终处于预期的标准。一个 Service 在 Kubernetes 中是一个 REST 对象。...转载 2020-04-14 17:38:39 · 566 阅读 · 0 评论 -
k8s集群——Deployment
Deployment为Pod和Replica Set(升级版的 Replication Controller)提供声明式更新。注意:您不该手动管理由 Deployment 创建的 Replica Set,否则您就篡越了 Deployment controller 的职责!Deployment的典型的用例如下:1、创建一个Deployment对象来生成对应的ReplicaSet,并...转载 2020-04-14 17:01:45 · 2180 阅读 · 0 评论 -
k8s集群——Replication Controller与Replica Set
ReplicationController(简称RC),定义了一个期望的场景,即声明某种Pod的副本数量在任意时刻都符合某个预期值。通过RC,k8s实现了用户应用集群的高可用性,同时大减少了系统管理员在传统IT环境中需要完成的许多手工运维工作(如主机监控、应用监控和故障恢复等)。ReplicationController是早期k8s版本中主要使用的一项技术,在较新版本中,RC的功能已经逐渐被功...原创 2020-04-14 15:48:33 · 749 阅读 · 0 评论 -
k8s集群——Label和Label Selector
Label是一个key/value的键值对,可以附加到各种资源对象上。一个资源对象可以定义任意数量的Label,同一个Label也可以被添加到任意数量的资源对象上去。通常是在资源对象定义时确定Label,也支持在对象创建后动态添加或删除。Label和Lable Selector构成了k8s系统中最核心的一个应用模型,可以对被管理对象进行精细分组,以实现整个集群的高可用。通过给指定的...原创 2020-04-14 15:42:27 · 3611 阅读 · 0 评论 -
k8s集群Pod的几个关键知识点
一、Pods提供两种共享资源:网络和存储。(1)网络,每个Pod被分配一个独立的IP地址,Pod中的每个容器共享网络命名空间,包括IP地址和网络端口。Pod内的容器可以使用localhost相互通信。当Pod中的容器与Pod 外部通信时,他们必须协调如何使用共享网络资源(如端口)。k8s要求底层网络支持集群内任意两个Pod之间的TCP/IP直接通信,这一般是采用虚拟二层网络技术来实现的,如Op...原创 2020-04-14 15:38:41 · 1246 阅读 · 0 评论 -
k8s集群最小资源调度管理单位——Pod
一般情况下,Pod是Kubernetes创建或部署的最小/最简单的基本单位,一个Pod代表集群上正在运行的一个进程。注:在单个Pod中共同管理多个容器是一个相对高级的用法,应该只有在容器紧密耦合的特殊实例中使用此模式。Kubernetes中的Pod使用可分两种主要方式:Pod中运行一个容器。“one-container-per-Pod”模式是Kubernetes最常见的用法。在这种情况...原创 2020-04-14 15:25:01 · 1586 阅读 · 0 评论 -
k8s集群管理角色——Node
Node是k8s集群中的工作负载节点,当某个Node宕机时,其上的工作负载会被Master自动转移到其他节点上去。Node节点上运行着以下关键进程或服务:Kubelet,负责Pod对应的容器的创建、启停管理,与Master节点协作,实现集群管理的基本功能。kube-proxy,是提供k8s的通信与负载均衡功能的重要组件。Docker Engine,docker引擎。Node节点...原创 2020-04-14 15:21:06 · 1261 阅读 · 0 评论 -
k8s集群管理角色——Master
每个k8s集群里需要一个Master节点来负责整个集群的管理和控制,通常要占据一个独立的服务器,从高可用角度考虑则建议使用3台服务器。Master节点上运行着以下关键进程或服务:k8s API Server,提供了HTTP Rest接口的关键服务进程,是集群中所有资源增、删、改操作的唯一入口,也是控制集群的唯一入口。k8s Controller Manager,是集群中所有资源对象的运...原创 2020-04-14 15:12:08 · 2318 阅读 · 0 评论 -
Docker:docker 拉取镜像及查看pull下来的image在哪里
一:拉取镜像1、国内连接docker官网很慢修改docker中配置,添加对应中国docker加速器。vi /etc/docker/daemon.json{ "registry-mirrors": ["https://registry.docker-cn.com"], "live-restore": true}2、运行以下命令(本处以hello-world为例),将imag...转载 2020-04-02 13:30:14 · 30439 阅读 · 2 评论 -
你必须知道的Docker镜像仓库的搭建
一、官方标配:Registry私有镜像仓库 Docker Hub作为Docker默认官方公共镜像,如果想要自己搭建私有镜像残酷,官方也提供Registry镜像,使得我们搭建私有仓库变得非常简单。 所谓私有仓库,也就是在本地(局域网)搭建的一个类似公共仓库的东西,搭建好之后,我们可以将镜像提交到私有仓库中。这样我们既能使用 Docker 来运行我们的项目镜像,也避免了商业项目暴露出去的风...转载 2020-04-02 13:13:24 · 696 阅读 · 0 评论 -
Docker镜像保存save、加载load
(1)查看要要保存的镜像的ID[root@localhost docker]# docker images(2)保存镜像[root@localhost docker]#dockersavespring-boot-docker -o /home/wzh/docker/spring-boot-docker.tar(3)加载镜像可以在任何装 docker 的地方加载 刚保...原创 2020-04-02 11:59:37 · 340 阅读 · 0 评论 -
Kubernetes对象之Service
通过以前的学习,我们已经能够通过ReplicaSet来创建一组Pod来提供具有高可用性的服务。虽然每个Pod都会分配一个单独的Pod IP,然而却存在如下两问题:Pod IP仅仅是集群内可见的虚拟IP,外部无法访问。 Pod IP会随着Pod的销毁而消失,当ReplicaSet对Pod进行动态伸缩时,Pod IP可能随时随地都会变化,这样对于我们访问这个服务带来了难度。因此,Kuberne...转载 2020-03-30 15:10:21 · 307 阅读 · 0 评论 -
k8s重要的Deployment
一、官方介绍https://kubernetes.io/docs/concepts/workloads/controllers/deployment/Deployment为Pod和Replica Set提供声明式更新。你只需要在 Deployment 中描述您想要的目标状态是什么,Deployment controller 就会帮您将 Pod 和ReplicaSet 的实际状态改变到您的目...转载 2020-03-30 11:35:35 · 596 阅读 · 0 评论 -
flannel原理简析及安装
flannel是CoreOS提供用于解决Dokcer集群跨主机通讯的覆盖网络工具。它的主要思路是:预先留出一个网段,每个主机使用其中一部分,然后每个容器被分配不同的ip;让所有的容器认为大家在同一个直连的网络,底层通过UDP/VxLAN等进行报文的封装和转发。flannel项目地址:https://github.com/coreos/flannelflannel架构介绍flannel默...转载 2020-03-25 11:12:28 · 445 阅读 · 0 评论 -
Etcd 配置详解
配置标记etcd 可以通过命令行标记和环境变量来配置。命令行上设置的选项优先于环境变量。对于标记 --my-flag 环境变量的格式是 ETCD_MY_FLAG。 适用于所有标记。正式的ectd端口 是 2379 用于客户端连接,而 2380 用于伙伴通讯。etcd 端口可以设置为接受 TLS 通讯,non-TLS 通讯,或者同时有 TLS 和 non-TLS 通讯。为了在 lin...转载 2020-03-25 08:58:36 · 5789 阅读 · 2 评论 -
etcd数据库集群部署
1、下载安装二进制下载:https://github.com/coreos/etcd/releases/download/v3.3.13/etcd-v3.3.13-linux-amd64.tar.gz 1 [root@k8s-master01 ~]# tar xf etcd-v3.3.13-linux-amd64.tar.gz 2 [root@k8s-master01 ~]# c...转载 2020-03-25 08:57:05 · 476 阅读 · 0 评论 -
Etcd 高可用分布式键值数据库
1、Etcd简介etcd是CoreOS团队于2016年6月发起的开源项目,他的目标是构建一个高可用的分布式键值(key_value)数据库。Etcd内部采用raft协议作为一致性算法,Etcd是基于Go语言实现的。目前很火的kubernetes等项目都用到etcd组件作为一个高可用分布式键值存储。etcd作为服务发现系统,有以下特点:简单: 安装配置简单,而且提供了HTTP API进...转载 2020-03-25 08:55:56 · 1181 阅读 · 0 评论 -
公钥基础设施(PKI)/CFSSL证书生成工具的使用
公钥基础设施(PKI)基础概念CA(Certification Authority)证书,指的是权威机构给我们颁发的证书。密钥就是用来加解密用的文件或者字符串。密钥在非对称加密的领域里,指的是私钥和公钥,他们总是成对出现,其主要作用是加密和解密。常用的加密强度是2048bit。RSA即非对称加密算法。非对称加密有两个不一样的密码,一个叫私钥,另一个叫公钥,用其中一个加密的数据只能用...转载 2020-03-20 17:30:23 · 973 阅读 · 0 评论 -
k8s缩放应用程序
参考:https://kubernetes.io/docs/tutorials/kubernetes-basics/步骤1:扩展部署要列出部署,请使用GET部署命令:kubectl get deployments我们应该有一个POD。如果没有,请再次运行该命令。这显示:所需的状态显示的是已配置的副本数量,当前的状态显示了现在运行的副本的数量,最新的是更新以匹配所需(配置的)状态的副本的...原创 2020-03-07 13:46:57 · 289 阅读 · 0 评论 -
kubernetes笔记: Resource Quotas
在一个多用户、多团队的k8s集群上,通常会遇到一个问题,如何在不同团队之间取得资源的公平,即,不会因为某个流氓团队占据了所有资源,从而导致其他团队无法使用k8s。k8s的解决方法是,通过RBAC将不同团队(or 项目)限制在不同的namespace下,通过resourceQuota来限制该namespace能够使用的资源。资源分为以下三种。计算资源配额:cpu,memory 存储资源配置...转载 2020-03-06 10:41:23 · 612 阅读 · 0 评论 -
kubernetes笔记: LimitRanges
Resource Quota区分的粒度是namespace,其目的是为了不同namespace之间的公平,防止某些流氓team占用了太多的资源。而limitRange区分的粒度则是container,则是在为了在同一个namespace下,限制container的最大最小值。另外, 在设置了resourceQuota的namespace下,如果用户创建Pod时没有指定limit/request,默...转载 2020-03-06 10:35:45 · 803 阅读 · 0 评论 -
ResourceQuota和LimitRange
ResourceQuota和LimitRange目的:能控制特定命名空间中的资源使用量,最终实现集群的公平使用和成本的控制需要实现的功能如下:限制运行状态的Pod的计算资源用量 限制持久存储卷的数量以控制对存储的访问 限制负载均衡器的数量以控制成本 防止滥用网络端口 提供默认的计算资源Requests以便于系统做出更优化的调度1. 创建命名空间[root@t71 quo...原创 2020-03-06 10:06:42 · 986 阅读 · 0 评论 -
git使用简易指南
转载 2020-03-05 16:17:29 · 224 阅读 · 0 评论 -
openshift S2I构建过程及应用部署流程
openshift提供三种build策略1、S2I(source to image)build:一个为重复build产生的docker格式的container工具,它将application source装进一个容器镜像并组合生产出一个read-to-run的新镜像。这个新镜像随时准备好接收docker run指令,同时支持增量build,也就是对之前版本的image再build操作。...转载 2020-03-05 12:46:31 · 697 阅读 · 0 评论 -
openshift 之 secret
1、用户认证openshift通过OAuth进行用户认证,OAuth是一个开源的认证和授权框架,OAuth通过用户登录认证以后,返回一个token,用户可以在有效的时间内对系统进行访问。获取token:oc whoami -t获取tokenAPI:/oauth/token/request2、身份验证 identity provideropenshift提供不同的适配器链接不同的用户...原创 2020-03-05 12:18:10 · 1073 阅读 · 0 评论 -
openshift的核心组件
一、master 节点介绍master 主控节点,管理组件都运行在master节点上。节点上运行着众多集群的服务组建:api server :提供集群的web console以及restful api 服务。data store:数据源,集群的所有动态信息都存储在后端的一个etcd分布式数据库中,默认etcd安装在master上,也可以将etcd部署在集群之外。scheduler:调度控...原创 2020-03-05 10:13:44 · 1008 阅读 · 0 评论 -
简述Kubernetes Deployment 的实现原理
首先Kubernetes Deployment与OpenshiftDeployment的原理一致,这里以Kubernetes Deployment为例子说明。Deployment 提供了一种对Pod和ReplicaSet的管理方式,每一个 Deployment 都对应集群中的一次部署,是非常常见的 Kubernetes 对象。概述作为最常用的 Kubernetes 对象,De...原创 2020-03-04 09:19:42 · 1394 阅读 · 0 评论