自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用kubeadm搭建K8S

文章目录一、环境准备二、master部署三、node节点一、环境准备master 192.168.195.180node01 192.168.195.181node02 192.168.195.1821:在所有节点上安装Docker和kubeadm2:部署Kubernetes Master3:部署容器网络插件4:部署 Kubernetes Node,将节点加入Kubernetes集群中5:部署Dashboard Web页面,可视化查看Kubernetes资源//所有节点,关

2021-05-23 22:14:17 545 2

原创 K8S之安全机制(角色授权)

文章目录一、安全机制(一)、Service Account详解(二)、apiserver使用的是token认证二、第一模块:认证(一)、https证书认证(二)、httpd的token认证三、第二模块:授权四、第三模块:准入控制一、安全机制1.kubernetes的安全框架2.传输安全,认证,授权,准入控制3.使用RBAC授权1)kubernetes安全框架流程:kubectl先请求api资源,然后是过三关,第一关是认证(Authentication),第二关是授权(Authorization

2021-05-23 22:07:40 801

原创 K8S之配置管理

文章目录一、Secret方式一:方式二:第一种:使用secret中的变量导入到pod中第二种:以volume的形式挂载到pod的某个目录下二、ConfigMap创建方式一:kubectl第二种变量参数形式一、Secret加密数据并存放在Etcd中,让Pod的容器以挂载Volume方式访问应用场景:凭据https://kubernetes.io/docs/concepts/configuration/secret/方式一:[root@localhost demo]# echo -n 'admin

2021-05-23 16:53:13 433

原创 K8S之控制器

文章目录一、控制器二、Pod与控制器之间的关系(一)、Deployment(二)、SatefulSet(三)、DaemonSet(四)、Job(五)、CronJob一、控制器控制器:又称之为工作负载,分别包含以下类型控制器1:Deployment2:StatefulSet3:DaemonSet4:Job5:CronJob二、Pod与控制器之间的关系controllers:在集群上管理和运行容器的对象通过label-selector相关联Pod通过控制器实现应用的运维,如伸缩,升级等(

2021-05-23 16:09:06 390

原创 K8S之调度约束

文章目录一、调度方式示例1:nodeName示例2:nodeSelector二、故障排除Kubernetes通过watch的机制进行每个组件的协作,每个组件之间的设计实现了解耦。一、调度方式nodeName用于将Pod调度到指定的Node名称上(跳过调度器直接分配)nodeSelector用于将Pod调度到匹配Label的Node上示例1:nodeNameapiVersion: v1 kind: Pod metadata: name: pod-example labels:

2021-05-23 15:36:43 173

原创 K8S中的pod资源之资源限制与重启策略

文章目录一、资源限制(一)、Pod和Container的资源请求和限制:(二)、示例1二、健康检查:又称为探针(Probe)一、资源限制https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/(一)、Pod和Container的资源请求和限制:spec.containers[].resources.limits.cpu //cpu上限 spec.containers[].r

2021-05-23 10:39:23 1119

原创 简单易懂的Kubernetes(K8S)之Pod资源管理与harbor创建

文章目录Pod资源管理特点:Pod容器分类:1:infrastructure container 基础容器2:initcontainers 初始化容器3:container 业务容器镜像拉取策略(image PullPolicy)部署harbor创建私有项目1、首先需要安装docker引擎2、新建harbor私有项目3、node节点配置连接私有仓库(注意后面的逗号要添加)4、登录harbor私有仓库5、下载Tomcat镜像进行推送6、node2也需要登录harbor7、在master01上创建凭据资源8、创

2021-04-18 14:10:38 497 1

原创 Kubernetes支持YAML和JSON格式创建资源对象

Kubernetes支持YAML和JSON格式创建资源对象JSON格式用于接口之间消息的传递YAML格式用于配置和管理YAML是一种简洁的非标记性语言语法格式:缩进标识层级关系不支持制表符缩进,使用空格缩进通常开头缩进两个空格字符后缩进一个空格,如冒号,逗号,短横杆等“—”表示YAML格式,一个文件的开始“#”表示注释[root@master1 ~]# kubectl api-versionsadmissionregistration.k8s.io/v1beta1apiextens

2021-04-18 14:01:28 386 1

原创 简单易懂的Kubernetes(K8S)之kubectl管理

文章目录1、帮助信息2、创建 kubectl run 命令3、发布nginx service提供负载均衡的功能4、查看资源对象简写5、查看关联后端的节点6、网络状态详细信息7、服务暴露的端口8、在两台node节点安装ipvs9、在node02操作 同样安装ipvsadmin工具查看10、在master01操作 查看访问日志(注意:如果访问其他node无法访问检查proxy组件)11、更新nginx 为1.14版本12、获取修改模板13、回滚nginx14、查看历史版本15、执行回滚16、检查回滚状态1

2021-04-15 20:03:45 381

原创 报错集-----K8S中使用kubectl get nodes报错NotReady

报错现象:解决方案:1、节点状态为notready,检查node节点的VIP,发现VIP不见了2、在两台node节点上执行以下操作:pkill nginxsystemctl restart nginxsystemctl restart keepalived3、然后在master节点上kubectl get nodes就可以查看到了...

2021-04-15 11:00:54 1236

原创 简单易懂的Kubernetes(K8S)网站页面部署详细步骤

文章目录==-----在master01上操作-----==1、创建dashborad工作目录2、拷贝官方的文件3、完成后查看创建在指定的kube-system命名空间下4、访问nodeIP就可以访问(火狐浏览器可以直接访问)5、重新部署(注意:当apply不生效时,先使用delete清除资源,再apply创建资源)6、使用谷歌浏览器访问:https://192.168.200.40:30001/7、生成令牌8、查看令牌-----在master01上操作-----1、创建dashborad工作目录[r

2021-04-14 23:25:13 1545

原创 报错集------部署K8S负载均衡时,在node节点上访问nginx网页出现不了页面

报错现象:在master节点上查看pod网络获得IP后,在node节点上自带的浏览器中访问时出现不了nginx的页面1、获取pod网络的IP[root@master1 ~]# kubectl get pods -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODEnginx-dbddb74b8-fskqq 1/1 Ru

2021-04-14 22:17:04 1829

原创 简单易懂的Kubernetes(K8S)负载均衡部署详细步骤

文章目录==-----lb01 lb02两台负载均衡服务器均执行以下操作-----==1、关闭防火墙2、安装nginx服务,把nginx.sh和keepalived.conf脚本拷贝到家目录3、添加四层转发4、部署keepalived服务5、修改配置文件6、编写监控脚本7、查看lb01地址信息,检查VIP是否出来8、验证VIP==-----在两台node节点上进行操作-----==1、、开始修改node节点配置文件统一VIP(bootstrap.kubeconfig,kubelet.kubeconfig)2

2021-04-14 21:53:00 3019

原创 简单易懂的Kubernetes(K8S)多节点二进制部署详细步骤

文章目录==-----master02部署-----==1、关闭防火墙和selinux服务==-----在master01上操作-----==1、复制kubernetes目录到master022、复制master中的三个组件启动脚本kube-apiserver.service 、 kube-controller-manager.service 、kube-scheduler.service3、拷贝master01上已有的etcd证书给master02使用(==特别注意:master02一定要有etcd证书=

2021-04-14 16:35:39 308

原创 报错集-----Kubernetes(K8S)中node节点网卡莫名消失解决办法

报错现象:当将挂起的node节点重新启动时,发现网卡莫名奇妙的消失了,出现如下报错:使用ifconfig找不到ens33网卡重启网卡发现报错,检查网卡状态发现failed:解决办法:service NetworkManager stop #关闭 NetworkManger 服务chkconfig NetworkManager off #永久关闭 Manager网卡service network restart #重启network网卡发现问题得

2021-04-14 16:17:48 827

原创 报错集----------K8S部署启动etcd报错

报错现象:在K8S部署时,启动etcd服务时出现如下报错:解决思路:检查相关的配置文件,发现/opt/etcd/cfg/etcd文件修改错误,将NAME修改为本机node节点名称即可

2021-04-13 20:05:21 751

原创 简单易懂的Kubernetes(K8S)单节点二进制部署详细步骤

文章目录一:环境部署官网地址:https://github.com/kubernetes/kubernetes/releases?after=v1.13.1二:K8S部署Master1:192.168.200.10/24 kube-apiserver kube-controller-manager kube-scheduler etcdNode01:192.168.200.40/24 kubelet kube-proxy docker flannel etcdNode02:192.168.

2021-04-10 23:55:43 1639 4

原创 简单认识Kubernetes

文章目录一、Kubernetes简介二、Kubernetes特点1、自我修复2、弹性伸缩3、自动部署和回滚4、服务发现和负载均衡5、机密和配置管理6、存储编排7、批处理三、Kubernetes集群架构与组件1、Master组件(1)、kube-apiserver(2)、kube-controller-manager(3)、kube-scheduler(4)、etcd2、Node组件(1)、kubelet(2)、kube-proxy(3)、docker或rocket四、Kubernetes核心概念1、Pod2

2021-04-09 17:41:40 466 4

原创 MongoDB数据库基本操作

文章目录1、创建库2、创建集合3、插入、查看数据4、查找内容5、设置别名6、查看数据类型7、更改数据内容8、删除集合9、删除数据库10、统计集合中数据条数11、导出数据库中的数据12、导入数据库外的数据到数据库中13、限制条件的导出数据14、备份与恢复数据1、创建库[root@localhost ~]# mongo> use school #创建库schoolswitched to db school> show dbs #不在创建的库里创建集合时,使用show是

2021-04-08 23:18:32 856 2

原创 MongoDB的安装(简单易懂)

文章目录1、创建mongodb源仓库2、安装mongodb3、更改配置文件4、关闭防火墙5、多实例创建1、创建mongodb源仓库[root@localhost ~]# cd /etc/yum.repos.d/[root@localhost yum.repos.d]# lsCentOS-Base.repo CentOS-Media.repoCentOS-CR.repo CentOS-Sources.repoCentOS-Debuginfo.repo CentOS-V

2021-04-08 20:05:22 258 1

原创 自动化运维 ansible角色管理

文章目录一、Templates模块1、获取模板2、定义变量3、传入变量4、编写剧本二、tags 模块1、编写tags标签剧本2、编写always标签剧本三、role模块(一)、roles内各目录含义解释:(二)、在一个playbook中使用roles的步骤1、创建以roles命令的目录。2、创建全局变量目录。3、在roles目录中分别创建以各角色名称命令的目录,如httpd.4、在每个角色命令的目录中分别创建files. handlers. tasks. templates. meta、 defaults和

2021-04-08 17:52:12 458 7

原创 ansible的脚本---playbook剧本相关理论与实操

vi /etc/ansible/hosts[webserver] #方括号中设置组名www1.example.org #定义被监控主机,这边可以是主机名也可以是IP地址www2.example.org:2222 # 冒号后面定义远程连接端口,默认是ssh的22端口如果是名称类似的主机,可以使用列表的方式标识各个主机[webserver]www[01:50].example.org ansible_ssh_user=root ansible_ssh_pass=1[dbse

2021-04-07 19:17:14 1868 6

原创 ansible常用模块汇总

文章目录一、command 默认模块 - 执行命令二、cron - 定时任务模块三、user模块 - 用户管理四、group - 用户(组)模块五、copy - 复制模块六、file模块 - 指定文件属性七、ping模块 - 测试连通状态八、yum 模块 - 安装/卸载软件包九、service模块 - 管理服务状态十、shell 模块 - 免交互十一、script 模块 - 执行脚本十二、setup 模块 - 收集信息项目环境:管理端:192.168.200.20被管理端1:192.168.200.3

2021-04-06 11:38:40 702 1

原创 一看就会的ansible安装部署步骤

文章目录1、关闭防火墙2、安装相关软件3、修改主机清单4、创建密钥对,进行远程连接5、将公钥上传到被监控端6、设置ssh免交互登录管理端:192.168.200.20被管理端1:192.168.200.30被管理端2:192.168.200.401、关闭防火墙[root@localhost ~]# systemctl stop firewalld[root@localhost ~]# systemctl disable firewalldRemoved symlink /etc/system

2021-04-02 11:36:18 3574 5

原创 能让你在睡梦中惊醒的Zabbix 监控平台配置邮件告警机制

文章目录一、Zabbix Server 端配置二、Web 页面配置监控机制①管理→报警媒介类型→创建媒体类型②用户→Admin→报警媒介③配置→动作→创建动作④动作→操作→恢复操作⑤Server 端重启 Zabbix 服务⑥配置→主机-client-01→模板→更新三、Client 端测试邮件告警机制一、Zabbix Server 端配置yum -y install mailxvim /etc/mail.rc#末尾添加以下内容set [email protected] smt

2021-04-02 10:03:28 3947 6

原创 将Zabbix监控部署在LNMP平台详细步骤

文章目录项目环境:服务端安装配置关闭防火墙一、LNMP安装环境1、安装nginx1.16(1)从官网上下载(2)手动创建nginx yum安装源(3)重新加载(4)安装nginx(5)开启服务(6)打开网页访问 http://192.168.200.402、安装mysql 5.7(1)安装服务(2)开启服务(3)进行设置3、安装PHP(1)安装PHP源(2)yum仓库的生成(3)安装软件包(4)查看PHP版本4、配置nginx支持php(1)修改php-fpm配置文件,把apache改为nginx(2)配置

2021-04-01 15:06:58 5123 10

原创 容器安全与Docker-TLS加密通讯

文章目录一、Docker 容器与虚拟机的区别1.隔离与共享2.性能与损耗二、Docker 存在的安全问题1.Docker 自身漏洞2.Docker 源码问题三、Docker 架构缺陷与安全机制1.容器之间的局域网攻击2.DDoS 攻击耗尽资源3.有漏洞的系统调用4.共享root用户权限四、Docker 安全基线标准1.内核级别2.主机级别3.网络级别4.镜像级别5.容器级别6.其他设置五、容器最小化六、Docker remote api 访问控制七、限制流量流向八、镜像安全九、Docker-TLS加密通讯

2021-03-31 15:30:31 1392 2

原创 使用Cgroup在Docker中进行资源配置

文章目录一、Cgroup资源配置方法二、使用stress工具测试CPU和内存三、CPU周期限制四、CPU Core控制五、CPU配额控制参数的混合使用六、内存限额七、Block IO 的限制八、bps和iops的限制一、Cgroup资源配置方法Docker通过Cgroup来控制容器使用的资源配额,包括CPU、内存、磁盘三大方面,基本覆盖了常见的资源配额和使用量控制。Cgroup是Control Groups的缩写,是Linux内核提供的一种可以限制、记录、隔离进程组所使用的物理资源(如CPU、内存、磁

2021-03-30 15:34:04 1534 1

原创 报错集-----在创建好私有仓库后,在客户机上更改/usr/lib/systemd/system/docker.service出现报错

报错现象:在使用Harbor创建好私有仓库以后,需要在一台非Harbor主机上连接到私有仓库并上传镜像。此时需要修改该客户机的/usr/lib/systemd/system/docker.service文件。更改如下:ExecStart=/usr/bin/dockerd -H fd:// --insecure-registry 192.168.200.60 --containerd=/run/containerd/containerd.sock更改好重启,出现如下报错:解决思路:首先查看日志,

2021-03-29 14:53:20 1475 2

原创 报错集-----Docker私有仓库创建时上传镜像出现报错:denied: requested access to the resource is denied

报错现象:在使用Harbor进行私有仓库创建时,上传镜像到私有仓库出现如下报错:解决思路:首先查看了是否是自己的防火墙没有关闭,发现防火墙已经关闭。接着查看自己创建的私有仓库项目的名称与自己镜像打的标签是否一致,发现镜像标签名(tag)和私有仓库的名称不一致,重新给镜像打上和私有仓项目名一样的标签后,上传成功。...

2021-03-29 14:44:15 1719 1

原创 使用Harbor进行可视化的Docker私有仓库部署和管理

文章目录一、Harbor(一)、Harbor概述(二)、Harbor组件(三)、Docker 私有仓库架构拓扑图二、Harbor 部署步骤安装 Docker-Compose 并查看版本判断安装是否成功关闭所有节点的防火墙(一)、部署 Harbor 服务1.下载 Harbor 安装程序2.配置 Harbor 参数文件3.启动 Harbor4.查看 Harbor 启动镜像(二)、维护管理Harbor1、修改 Harbor.cfg 配置文件2、创建 Harbor 用户3、创建项目开发人员一、Harbor(一)

2021-03-29 14:37:31 1842 2

原创 研究与实践 Docker Compose容器编排

文章目录一、Docker Compose(一)、Docker Compose概述(二)、Docker Compose容器编排(三)、Docker Compose配置常用字段(四)、Docker Compose常用命令(五)、Compose命令说明(六)、使用Docker Compose详解:使用步骤、环境准备、格式详解1、compose使用的三个步骤2、Docker compose环境准备3、Docker Compose文件结构举例:docker-compose.yml(七)、实践:使用Docker-Com

2021-03-26 16:24:33 1100 1

原创 构建自动发现的Docker架构(Consul、Consul Template、Registrator)

文章目录一、 Consul(一)、Consul简介(二)、Docker Consul容器服务更新与发现二、Docker Compose(一)、Docker Compose概述(二)、Docker Compose容器编排(三)、Docker Compose配置常用字段(四)、Docker Compose常用命令(五)、Compose命令说明三、构建自动发现的Docker 服务架构部署步骤项目需求:项目步骤:(一)部署consul步骤(192.168.200.40)(二)、容器服务自动加入nginx集群1.安装

2021-03-26 14:49:23 354 1

原创 Docker镜像的构建(手动构建与自动化构建:Dockerfile)

文章目录一、Docker镜像的分层理解二、Docker镜像的创建(一)、Docker镜像(二)、Docker镜像的创建方法三、基于已有镜像创建四、基于本地模板创建1、通过导入操作系统模板文件生成新的镜像2、使用wget命令导入为本地镜像3、导入成功后可查看本地镜像信息五、基于Dockerfile创建(一)、Dockerfile简介(二)、Dockerfile 操作指令(三)、Dockerfile 实践1、构建 apache 镜像2、构建SSH镜像3、构建Systmctl 镜像4、构建nginx镜像一、Do

2021-03-24 14:52:08 2227

原创 Docker公共镜像仓库与使用registry进行私有镜像仓库的构建

文章目录一、DockerHub公共镜像仓库的使用1、登录docker.com官网注册一个账号2、登录docker官网3、推送镜像至仓库二、Docker私有仓库的搭建及认证1.拉取私有仓库镜像2.修改配置3.创建私有仓库容器4.推送镜像至私有仓库5.配置私有仓库认证5.1.生成自签名证书5.2.生成鉴权密码文件5.3.创建私有仓库容器5.4.推送镜像至私有仓库失败5.5.登录账号5.6.推送镜像至私有仓库成功5.7.退出账号一、DockerHub公共镜像仓库的使用1、登录docker.com官网注册一个账

2021-03-23 15:28:08 2374 1

原创 Docker安装与镜像、容器基础命令

文章目录一、安装Docker1、安装docker的依赖环境2、设置docker的镜像源(此处是阿里源)3、安装docker4、启动并设置为开启自启动5、测试6、docker的中央仓库二、基础镜像命令三、容器命令1、运行启动容器2、查看正在运行的容器3、查看容器的日志4、进入到容器内部5、删除容器(删除容器前,需要先停止容器)6、启动容器7、退出容器8、显示容器的进程信息9、查看镜像的元数据10、从容器内拷贝文件到主机上11、目录挂载(容器数据卷操作)通过目录挂载,防止容器被误删造成数据丢失(1)、指定目录挂

2021-03-22 19:17:43 3002 2

原创 报错集------构建docker私有仓库时重启不了Docker

报错现象:在搭建私有仓库时,重启Docker失败,出现如下报错解决方案:通过检查修改的配置文档 /etc/docker/daemon.json ,发现是缺少一个逗号,加上之后报错解决。加上后重启成功:

2021-03-22 18:03:19 1397 1

原创 OpenStack-Dashboard 与 OpenStack-cinder 组件部署步骤

文章目录【OpenStack-Dashboard组件部署】● 修改local_setting本地控制台的配置文件● 重启服务● 重启 ct 节点的 memcache 服务● 验证操作【OpenStack-cinder 组件部署】一、创建数据库实例和角色二、创建用户、修改配置文件● 给v2和v3版本的api创建endpoint● yum 安装cinder 服务● 修改cinder 配置文件(ct节点)● 同步cinder数据库(填充块存储数据库)● 修改 Nova 配置文件,并重启服务。● 配置Cinder服

2021-03-22 15:04:32 669

原创 报错集-------docker中删除镜像时报错

报错现象:在Docker中使用镜像ID删除镜像时会出现镜像删除不了的错误,如下图所示解决方案:排查后发现是因为之前使用tag命令改过标签,导致同一ID具有两个不同名称的镜像。后来通过镜像名称成功地将镜像删除掉。...

2021-03-22 13:33:05 318

原创 第一次见Docker,原来你是这样的!

文章目录一、Docker的前世今生二、为什么选择 Docker三、容器与传统虚拟机之间的比较四、Docker 组成一、Docker的前世今生2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫 dotCloud 的公司。dotCloud 的平台即服务(Platform-as-a-Service, PaaS)提供商。底层技术上,dotCloud 平台利用了Linux 的LXC容器技术。为了方便创建和管理这些容器,dotCloud 基于Google公司推出的Go语言开发了一套内部工具,之后被命名为

2021-03-19 16:56:54 1530 3

空空如也

空空如也

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

TA关注的人

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