<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Cpureman的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Cpureman</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Cpureman]]></copyright><item><title><![CDATA[k8s---配置管理]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109107093</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109107093</guid><author>Cpureman</author><pubDate>Thu, 15 Oct 2020 22:52:06 +0800</pubDate><description><![CDATA[文章目录配置管理原理：Secret方式一：基于文件形式方式二：基于参数创建secretConfigMap方式一：基于kubectl形式方式二：基于变量参数形式
配置管理原理：
●当需要修改很多配置文件时，创建一个配置资源，将配置资源挂载到各个pod当中，给pod所使用，这样就只要修改配置资源就可以了

Secret
●Secret（机密）：

加密数据并存放在Etcd中，让Pod的容器以挂载Volume方式访问

●应用场景：

凭据

https://kubernetes.io/docs/concepts]]></description><category></category></item><item><title><![CDATA[k8s---控制器]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109095621</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109095621</guid><author>Cpureman</author><pubDate>Thu, 15 Oct 2020 14:15:57 +0800</pubDate><description><![CDATA[文章目录控制器1.Deployment2.SatefulSet3.DaemonSet4.Job5.CronJob
控制器
●控制器：又称之为工作负载，分别包含以下类型控制器

Deployment：无状态化服务
StatefulSet：有状态化服务
DaemonSet：不需要指明资源创建在某个节点，只要节点在集群中都会被创建资源（日志收集，监控）
Job：一次性创建任务，记录在pod日志中
CronJob：周期性创建任务

●Pod与控制器之间的关系

controllers：在集群上管理和运行容器的对象通]]></description><category></category></item><item><title><![CDATA[k8s---调度约束]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109094699</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109094699</guid><author>Cpureman</author><pubDate>Thu, 15 Oct 2020 12:04:25 +0800</pubDate><description><![CDATA[文章目录调度约束过程调度方式示例1：以nodeName调度方式创建示例2：以nodeSelector调度方式创建
调度约束过程

从创建资源开始：
●客户发起创建资源请求给api server；api server将请求过程写入到etcd数据库中，etcd会检查语法，语法正确就会记录在etcd中，并且会返回给api server，告诉用户刚刚创建资源的语法是否存在问题，要是存在问题就不会记录在etcd中，如果创建成功会继续下面的流程；
●因为各个组件之间是独立的所以想让各组件之间配合起来就依赖于watch机]]></description><category></category></item><item><title><![CDATA[k8s---pod高级管理（资源控制、重启策略与探针）]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109068063</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109068063</guid><author>Cpureman</author><pubDate>Wed, 14 Oct 2020 11:08:16 +0800</pubDate><description><![CDATA[文章目录一.pod资源管理：二.重启策略三.健康检查：又称为探针（Probe）
一.pod资源管理：
Pod和Container的资源请求和限制：
●CPU和内存的上限设定：

spec.containers[].resources.limits.cpu     //cpu上限
spec.containers[].resources.limits.memory   //内存上限
创建资源（初始化资源）：
spec.containers[].resources.requests.cpu   //创建时分配的基]]></description><category></category></item><item><title><![CDATA[k8s---pod资源管理和镜像拉取策略；实验：部署harbor创建私有项目]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109043915</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109043915</guid><author>Cpureman</author><pubDate>Tue, 13 Oct 2020 09:08:28 +0800</pubDate><description><![CDATA[文章目录Pod概述pod容器的分类一.infrastructure container 基础容器二.initcontainers 初始化容器三.container 业务容器镜像拉取策略（image PullPolicy）部署harbor创建私有项目
Pod概述
●在Kubernetes集群中，Pod是所有业务类型的基础，它是一个或多个容器的组合。这些容器共享存储、网络和命名空间，以及如何运行的规范。在Pod中，所有容器都被同一安排和调度，并运行在共享的上下文中。对于具体应用而言，Pod是它们的逻辑主机，Po]]></description><category></category></item><item><title><![CDATA[k8s---Kubernetes的文件形式管理]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109008687</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109008687</guid><author>Cpureman</author><pubDate>Sun, 11 Oct 2020 10:38:09 +0800</pubDate><description><![CDATA[文章目录Kubernetes的文件形式管理一．如何使用yaml文件创建某个资源二．测试命令的正确性三．查看生成yaml格式四．将格式生成到某个文件中
Kubernetes的文件形式管理
●Kubernetes支持YAML和JSON格式创建资源对象
●JSON格式用于接口之间消息的传递（用于开发层面）
●YAML格式用于配置和管理（用于创建资源）
●YAML是一种简洁的非标记性语言
●语法格式：

缩进标识层级关系
不支持制表符（tab键）缩进，使用空格缩进
通常开头缩进两个空格
字符后缩进一个空格，如冒号，]]></description><category></category></item><item><title><![CDATA[k8s---Kubectl 命令管理]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/109008240</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/109008240</guid><author>Cpureman</author><pubDate>Sun, 11 Oct 2020 10:13:36 +0800</pubDate><description><![CDATA[文章目录什么是kubectl：kubectl基本命令：创建  ：kubectl run命令删除：kubectl detele命令项目周期：一．创建资源二．发布资源三．更新资源版本信息四．回滚资源版本信息五．删除资源信息六．查看具体资源的详细信息
什么是kubectl：
●kubectl是管理k8s集群的命令行工具，通过生成的json格式传递给apiserver进行创建，查看，管理的操作
●帮助操作：
[root@master02 ~]# kubectl --help
kubectl controls the]]></description><category></category></item><item><title><![CDATA[k8s多节点仪表盘（web界面）部署，和谷歌浏览器访问问题解决]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108972074</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108972074</guid><author>Cpureman</author><pubDate>Fri, 09 Oct 2020 08:47:35 +0800</pubDate><description><![CDATA[文章目录实验环境：推荐步骤：
实验环境：
基于之前搭建好的多节点集群继续操作（多节点的布置可以参考之前的博客）
推荐步骤：
1.在master上操作，创建dashborad工作目录，将dashboard的ymal文件放到目录下
[root@master ~]# cd k8s/
[root@master k8s]# mkdir dashboard


这边也可以在官网下载
https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/d]]></description><category></category></item><item><title><![CDATA[K8s集群多节点的二进制部署（结合上篇的单节点配置一起看）]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108937732</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108937732</guid><author>Cpureman</author><pubDate>Tue, 06 Oct 2020 11:53:29 +0800</pubDate><description><![CDATA[文章目录实验环境：推荐步骤：
实验环境：
实验拓扑图：


推荐步骤：
基于之前配置的单节点继续往下操作
一．先配置master02
1.在master01上操作，复制kubernetes目录到master02
[root@localhost ~]# setenforce 0
[root@localhost ~]# iptables -F
[root@localhost ~]# iptables -t nat -F
[root@localhost ~]# hostnamectl set-hostname m]]></description><category></category></item><item><title><![CDATA[K8S单节点的二进制部署]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108937221</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108937221</guid><author>Cpureman</author><pubDate>Tue, 06 Oct 2020 11:19:31 +0800</pubDate><description><![CDATA[文章目录实验环境：推荐步骤：
实验环境：

推荐步骤：
一．先配置ETCD（master端和两个node端都需要配置etcd）
master端：
1.制作ETCD证书前期的环境搭建
[root@localhost ~]# hostnamectl set-hostname master    ##修改主机名
[root@localhost ~]# su
[root@master ~]# setenforce 0   ##关闭防护系统
[root@master ~]# systemctl stop firewa]]></description><category></category></item><item><title><![CDATA[K8S理论篇----K8S的概述]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108880531</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108880531</guid><author>Cpureman</author><pubDate>Wed, 30 Sep 2020 10:18:37 +0800</pubDate><description><![CDATA[文章目录Kubernetes的概述：一．Kubernetes是什么二．Kubernetes特性三．自动部署的方式蓝绿部署灰度部署（俗称金丝雀）四．Kubernetes集群架构与组件五．Kubernetes核心概念六．官方提供的三种部署方式七．Flannel容器集群网络部署
Kubernetes的概述：
一．Kubernetes是什么
●Kubernetes是Google在2014年开源的一个容器集群管理系统，Kubernetes简称K8S
●K8S用于容器化应用程序的部署，扩展和管理
●K8S提供了容器编排]]></description><category></category></item><item><title><![CDATA[Docker-TLS加密通讯：理论加实操]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108808909</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108808909</guid><author>Cpureman</author><pubDate>Sat, 26 Sep 2020 10:49:25 +0800</pubDate><description><![CDATA[文章目录TLS介绍CA证书理解？CA证书的作用CA证书的身份验证配置TLS一．前期环境搭建二．创建CA证书三．创建服务器证书四．创建客户端证书五．客户端验证可以使用服务端的docker
TLS介绍
●TLS是Https的安全基础，TLS协议可用于保护正常运行于TCP之上的任何应用协议的通信。TLS协议的有点在于它是与应用层协议无关的。高层的应用协议能透明地建立于TLS协议之上。
●TLS协议既用到了公钥加密技术又用到了对称加密技术，TLS地握手协议非常有效地让客户和服务端之间完成相互之间地身份认证，其主要过]]></description><category></category></item><item><title><![CDATA[Docker资源管理---Cgroup理论加实操]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108808486</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108808486</guid><author>Cpureman</author><pubDate>Sat, 26 Sep 2020 10:31:49 +0800</pubDate><description><![CDATA[文章目录资源分配理论为什么容器要做资源分配Cgroup资源配置方法一．Docker权重值分配二．CPU的周期限制三．CPU Core控制四．CPU配额控制参数的混合使用五．内存限额六．Block IO的限制七．bps和iops的限制
资源分配理论
为什么容器要做资源分配
●虚拟机在创建的时候就已经做了资源分配，（虚拟CPU，虚拟内存，虚拟磁盘等）
●容器是共享内核资源的，所以需要用Cgroup资源分配，参照因素是往年的监控系统中服务的吞吐量，和资源数据，资源耗用情况来分配
Cgroup资源配置方法
●Doc]]></description><category></category></item><item><title><![CDATA[Docker Harbor构建Docker私有仓库建立]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108771297</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108771297</guid><author>Cpureman</author><pubDate>Thu, 24 Sep 2020 17:37:14 +0800</pubDate><description><![CDATA[文章目录Harbor概述：Harbor简介：Harbor特性关于 Harbor.cfg 配置文件所需参数可选参数Harbor私有仓库建立实验实验环境推荐步骤
Harbor概述：
Harbor简介：
●Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器，通过添加一些企业必需的功能特性，例如安全、标识和管理等，扩展了开源Docker Distribution。作为一个企业级私有Registry服务器，Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜]]></description><category></category></item><item><title><![CDATA[Docker-compose理论加服务搭建；docker网络；consul群集的理论加实验]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108768984</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108768984</guid><author>Cpureman</author><pubDate>Thu, 24 Sep 2020 11:19:35 +0800</pubDate><description><![CDATA[文章目录一.Docker compose概述：什么是 composeDocker compose简介Docker Compose容器编排Compose 命令说明Compose部署nginx服务二.Docker的网络通信概述：端口映射容器互联Docker网络docker网络详解三.docker Consul概述：Consul是什么Consul的特性Docker consul部署nginx反向代理实验实验环境推荐步骤
一.Docker compose概述：
什么是 compose
●Compose项目是Dock]]></description><category></category></item><item><title><![CDATA[Dockerfile创建镜像案例篇]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108738528</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108738528</guid><author>Cpureman</author><pubDate>Tue, 22 Sep 2020 19:11:35 +0800</pubDate><description><![CDATA[文章目录构建SSH镜像推荐步骤构建systemctl镜像推荐步骤构建nginx镜像推荐步骤构建tomcat镜像推荐步骤：创建mysqld镜像推荐步骤
构建SSH镜像
推荐步骤
1.现在虚拟机的/opt目录下创建一个文件夹
[root@localhost opt]# mkdir ssh    ##创建ssh目录

2.创建dockerfile
[root@localhost opt]# cd ssh/
[root@localhost ssh]# vim Dockerfile    ##创建Dockerfile]]></description><category></category></item><item><title><![CDATA[docker基本管理：下篇（镜像创建和数据管理）]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108702129</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108702129</guid><author>Cpureman</author><pubDate>Mon, 21 Sep 2020 09:18:51 +0800</pubDate><description><![CDATA[文章目录Docker镜像Docker镜像的分层Docker镜像的创建基于已有的镜像创建基于本地模板的创建基于Dockerfile创建Docker的数据管理数据卷数据卷容器
Docker镜像
Docker镜像的分层

●Dockerfile中的每个指令都会创建一个新的镜像层
●镜像层将被缓存和复用
●当Dockerfile的指令修改了，复制的文件变化了，或者构建镜像时指定的变量不同了，对应的镜像层缓存就会失效
●某一层的镜像缓存失效后，它之后的镜像缓存都会失效
●镜像层是不可变的，如果在某一层中添加一个文件，]]></description><category></category></item><item><title><![CDATA[dockerfile创建apache镜像时报错]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108702225</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108702225</guid><author>Cpureman</author><pubDate>Mon, 21 Sep 2020 08:53:35 +0800</pubDate><description><![CDATA[报错现象
用新的httpd镜像运行h容器时发现端口没有映射成功
[root@localhost apache]# docker run -d -p 8080:80 httpd:centos

解决方法：
博主回去检查执行的脚本run.sh时发现
[root@localhost apache]# vim run.sh
#!/bin/bash 
rm -rf /run/httpd*     ##这样就是将httpd的所有文件删除了，是错误的
exec /usr/sbin/apachectl -D FOREGRO]]></description><category></category></item><item><title><![CDATA[ssh密钥文件传递出现报错]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108678999</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108678999</guid><author>Cpureman</author><pubDate>Sat, 19 Sep 2020 11:33:18 +0800</pubDate><description><![CDATA[文章目录报错现象解决方法
报错现象
[root@mysql3 mha4mysql-node-0.57]# ssh-copy-id 192.168.148.131
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any t]]></description><category></category></item><item><title><![CDATA[停止apache服务时出现报错]]></title><link>https://blog.youkuaiyun.com/Cpureman/article/details/108678928</link><guid>https://blog.youkuaiyun.com/Cpureman/article/details/108678928</guid><author>Cpureman</author><pubDate>Sat, 19 Sep 2020 11:30:57 +0800</pubDate><description><![CDATA[文章目录报错现象解决方法
报错现象
[root@apache2 php-5.6.11]# service httpd stop
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::6cfb:e1ca:5321:7d44. Set the 'ServerName' directive globally to suppress this message

解决方法
将]]></description><category></category></item></channel></rss>