一.前言    Kubernetes 是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度.均衡容灾.服务注册.动态扩缩容等功能套件,目前centos yum源上最新版本为1.5.2. 本文基于Centos7.5构建Kubernetes平台,在正式介绍之前,大家有必要先理解Kubernetes几个核心概念及其承担的功能. 以下为Kubernetes的架构设计图: 1. Pods    在Kubernetes系统中,调度的最小颗粒不是单纯的容器,而是抽象成一个…
一.Docker简介 Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口. Docker组成 Docker Client 和 Docker ServerDocker组件 镜像(Image) 容器(Container) 仓库(Repository) 二.Docker应用场景 1. 简化配置 2. 代码流水线(Code Pipeline)管理 3. 提高…
陆陆续续,关于 Kubernetes 写了有 20+ 篇文章了. 今天这篇文章来一个整合,从实践到理论,可以按需查看(我是按照博客发表时间来排序的,如果后续有想要更新的内容,也会及时更新到这篇文章中). 实践篇(共 11 篇): [Docker]CentOS7下Docker安装教程 [Kubernetes]CentOS7下搭建Harbor仓库 [Kubernetes]CentOS7下Etcd集群搭建 [Kubernetes]CentOS7部署Kubernetes集群 [Docker]CentOS…
Etcd简要介绍 Etcd是Kubernetes集群中的一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息 Etcd构建自身高可用集群主要有三种形式: ①静态发现: 预先已知 Etcd 集群中有哪些节点,在启动时直接指定好Etcd的各个node节点地址 ②Etcd动态发现:通过已有的Etcd集群作为数据交互点,然后在扩展新的集群时实现通过已有集群进行服务发现的机制 ③DNS动态发现:通过DNS查询方式获取其他节点地址信息 这篇文章主要介绍第一种方式.后期如果还有时间和精力研究的话,我…
文章是按https://blog.csdn.net/Excairun/article/details/88962769,来进行操作并记录相关结果 版本:k8s V14.0,docker-ce 18.09.03 1.环境准备 内核及版本 [root@k8s-node1 ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@k8s-node1 ~]# uname -r -.el7.x86_64 [root@k8s-node1 ~]…
环境:三个centos7 K8s2是Master;K8s1是node1:K8s3是node2 官方文档:https://kubernetes.io/docs/setup/independent/install-kubeadm/ 注意:kubernetes几乎所有的安装组件和docker 镜像都放在goolge自己的网站上 安装docker 所有节点都安装docker:可利用docker-machine安装:可参考:https://www.cnblogs.com/lkun/p/7655495.ht…
环境依赖: Harbor仓库需要环境:Python 2.7或以上版本,Docker 1.10或以上,Docker Compose 1.6.0或以上. CentOS7自带Python,所以不需要安装. 关于Docker安装已经写过一篇博客:[Docker]CentOS7下Docker安装教程 所以接下来说一说docker-compose. 部署docker-compose(这里是以1.16.1版本为例,具体版本可以根据自己需要进行下载): curl -L https://github.com/do…
目录 目录 什么是Kubeadm? 什么是容器存储接口(CSI)? 什么是CoreDNS? 1.环境准备 1.1.网络配置 1.2.更改 hostname 1.3.配置 SSH 免密码登录登录 1.4.关闭防火墙 1.5.关闭交换分区 1.6.关闭 SeLinux 1.7.配置 IPTABLES 1.8.安装 NTP 1.9.升级内核 2.安装 Docker 18.06.1-ce 2.1.删除旧版本的 Docker 2.2.设置存储库 2.3.安装 Docker 2.4.启动 Docker 3.…
一.本地实验环境准备 服务器虚拟机准备 IP CPU 内存 hostname 192.168.222.129 >=2c >=2G master 192.168.222.130 >=2c >=2G node1 192.168.222.131 >=2c >=2G node2 本实验我这里用的虚拟机是vmware workstation创建的,我的机器配置较低,所以master给了4G 4C,node每个给了4G 4C,大家根据自己的资源情况,按照上面给的建议最低值创建即可.…
参考资料:官方文档 一.虚拟机安装 配置说明: windows下使用vbox,centos17.6 min版,kubernetes的版本是1.14.1, 安装如下三台机器: 192.168.56.15 k15192.168.56.16 k16192.168.56.17 k17 其中k15作为master,k16和k17作为node,虚拟机的安装重点关注网卡设置,设置两个网卡,第一个网卡(ifcfg-enp0s3)Host Only模式,第二个网卡(ifcfg-enp0s8)NAT模式,参见下图…
在网上看了不少关于Kubernetes的视频,虽然现在还未用上,但是也是时候总结记录一下,父亲常教我的一句话:学到手的东西总有一天会有用!我也相信在将来的某一天会用到现在所学的技术.废话不多扯了.... 一.前期准备 1.k8s-master01:master主服务器(存在单点故障) 2.k8s-node01.k8s-node02:2个工作节点 3.Harbor:私有仓库(简单记录搭建Harbor私服仓库) 4.Router:软路由(由于kubeadm是存放在谷歌云的,国内无法访问,K8S集群搭…
K8S之Service概述与代理说明,并详解所有的service服务类型与示例 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master CentOS7.7 2C/4G/20G 172.16.1.110 10.0.0.110 k8s-node01 CentOS7.7 2C/4G/20G 172.16.1.111 10.0.0.111 k8s-node02 CentOS7.7 2C/4G/20G 172.16.1.112 10.0.0.112…
本文的试验环境为CentOS 7.3,Kubernetes集群为1.11.2,安装步骤参见kubeadm安装kubernetes V1.11.1 集群 Service 介绍 我们通过Pod.Deployment等可以将应用发布到Kubernetes平台中,但是如果我们如何才能访问我们部署的应用呢?有一个办法就是通过节点的IP加上节点的端口来访问这个节点上的容器应用,但是如果我们有多个跨节点的相通应用时该怎么办呢?特别是应用发生扩容.缩容时应该如何处理,这时我们就需要利用Service来实现. 在…
本博客的主要内容是在centos7下搭建luminous,配置dashboard,搭建客户端使用rbd,源码安装ceph,最后给出一些较为常用的命令.本博客针对初次接触ceph的人群. 搭建环境: 主机系统:centos7 x86_64 server ceph版本:ceph 12.2.1(luminous) 硬件配置:4台vm,1核1G内存,每台至少挂载1块为osd准备的空闲盘 主机名 ip role admin 192.168.197.144 admin node1 192.168.197.1…
系列目录 通过ReplicaSet来创建一组Pod来提供具有高可用性的服务.虽然每个Pod都会分配一个单独的Pod IP,然而却存在如下两问题: Pod IP仅仅是集群内可见的虚拟IP,外部无法访问. Pod IP会随着Pod的销毁而消失,当ReplicaSet对Pod进行动态伸缩时,Pod IP可能随时随地都会变化,这样对于我们访问这个服务带来了难度. 因此,Kubernetes中的Service对象就是解决以上问题的核心关键. Service的创建 Service可以看作是一组提供相同服务的…
Kubernetes的Pod的寿命是有限的,它们不会复活,因此尽管每个Pod都有自己的IP地址,但是这些IP地址是不可靠的,会随着Pod的消亡而消失. 这就带来一个问题,如果一些Pod的集合(称之为backends)为集群的其他的Pod(称之为frontends),这些frontends应该如何找到并一直知道哪些backends在这样的集合中呢? 这就需要引入Service, 一个kubernetes的service是一种抽象,它定义了一个Pod的逻辑集合和一个用于访问它们的策略.一个Servi…
本文收录在容器技术学习系列文章总目录 1.认识service 1.1 为什么要使用service Kubernetes Pod 是有生命周期的,它们可以被创建,也可以被销毁,然而一旦被销毁生命就永远结束. 通过 ReplicationController 能够动态地创建和销毁 Pod(例如,需要进行扩缩容,或者执行 滚动升级). 每个 Pod 都会获取它自己的 IP 地址,即使这些 IP 地址不总是稳定可依赖的. 这会导致一个问题:在 Kubernetes 集群中,如果一组 Pod(称为 bac…
官网地址:http://nginx.org/2017.html 转载:https://blog.csdn.net/harris135/article/details/78576263 1.环境: centos7 nginx: nginx-1.12.2.tar.gz 2.下载nginx: wget http://nginx.org/download/nginx-1.12.2.tar.gz 3.解压安装包 tar zxvf nginx-1.12.2.tar.gz 4.配置安装路径,cd nginx-…
问题症状: 最近在CentOS7下安装NVIDIA独立显卡驱动的过程中出现X service error问题,如下图所示: 解决方法: 0.到NVIDIA 官网上下载驱动文件(.run 格式) : NVIDIA GT 730独立显卡驱动官方下载 1.首先注销当前账户,在注销后的登录界面按CTRL+ALT+F2进入命令行.一般地,可按下CTRL+ALT+F1或F2在命令行模式和窗口模式之间切换. 2.切换到超级管理员用户登陆: bogon login:root //获得超级用户,只有超级用户才有安…
官方安装手册 https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/ 组件和版本关系 https://kubernetes.io/docs/setup/release/version-skew-policy/#supported-versions 添加Docker阿里云源 # step 1: 安装必要的一些系统工具sudo yum install -y yum-ut…
前言 本文所使用的集群是作者在博客 Centos7下部署ceph 12.2.1 (luminous)集群及RBD使用  中所搭建的集群 dashboard是为了完成对集群状态进行UI监控所开发的功能,是ceph luminous版本的新特性,是基于mgr模块构建 本文参考网址为http://docs.ceph.com/docs/master/mgr/dashboard/ 正文 为了使用dashboard功能, 首先应该确保集群已经安装mgr,如果没有安装执行下面操作进行安装 将mgr安装在mas…
最近在倒腾Kubernetes的一些东西,这次需要用到Jenkins来实现自动化构建.来讲一讲搭建的整个过程. Jenkins是什么 Jenkins提供了软件开发的持续集成服务.它运行在Servlet容器中(例如Apache Tomcat).它支持软件配置管理(SCM)工具(包括AccuRev SCM.CVS.Subversion.Git.Perforce.Clearcase和RTC),可以执行基于Apache Ant和Apache Maven的项目,以及任意的Shell脚本和Windows批处…
CentOS   花了基本上两天的时间去配置CentOS7下的邮件服务器.其中艰辛太多了,一定得总结下. 本文的目的在于通过一系列配置,在CentOS 7下搭建dovecot + postfix + SSL 服务器,并且能够通过邮件客户端(本文中是Airmail)进行收发邮件. 前提条件 你得有个主机或者VPS 你有一个主域名比如 fancycoding.com 还有一个二级域名比如 mail.fancycoding.com 二级域名的 SSL 证书. 配置你的DNS记录 确认主域名有A记录指向…
官方文档地址: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.html#sec-Introduction_to_firewalld1 修改防火墙配置文件之前,需要对之前防火墙做好备份 重启防火墙后,需要确认防火墙状态和防火墙规则是否加载,若重启失败或规则加载失败,则所有请求都会被防火墙拦截 1 2 3 4 5 6 7…
Centos7 下的SVN安装与配置 1.关闭防火墙 临时关闭防火墙 systemctl stop firewalld 永久防火墙开机自关闭 systemctl disable firewalld 临时打开防火墙 systemctl start firewalld 防火墙开机启动 systemctl enable firewalld 查看防火墙状态 systemctl status firewalld 2.关闭SELinux 临时关闭SELinux setenforce 临时打开SELinux…
一.  ElasticSearch简单介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎. ElasticSearch不但包括了全文搜索功能,还可以进行以下工作:-> 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索.-> 实时分析的分布式搜索引擎.-> 可以扩展到上百…
一.RabbitMQ简单介绍在日常工作环境中,你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用.通讯的问题而苦恼.挣扎?如果是,那么恭喜你,消息服务让你可以很轻松地解决这些问题.消息服务擅长于解决多系统.异构系统间的数据交换(消息通知/通讯)问题,你也可以把它用于系统间服务的相互调用,即适用于云计算集群的远程调用(RPC).毫无疑问,RabbitMQ就是当前最主流的消息中间件之一. AMQP(Advanced Message Queuing P…
一切从0开始,我也是个小白: 1.检查你的系统是不是高于3.8的内核,如果没有请升级CentOS7或者Ubuntu 14 #uname -a 2.CentOS7下安装docker #yum -y install docker 3.查看docker版本 #docker version 4.启动docker服务 #docker service start 5.查看本地镜像 #docker images 6.如果没有本地镜像,可以下载一个centos7的镜像来作为基础运行环境 #docker pull…
update: 2019-03-25 --新增新装 Nginx 的启动.重启.关闭和查看 2019-02-19 --新增 yum 方式快速简单安装 Nginx 2018-09-29 --新增配置文件对HTTPS的设定 2018-05-23 --新增常用命令和防火墙命令 以 yum 方式安装 Nginx 之后如何查看 whereis nginx 其中默认运行程序是 /usr/sbin/nginx(注意 linux 下没有扩展名),而默认配置文件是 /etc/nginx/nginx.conf,如何查…
1.准备 1.1系统配置 在安装之前,需要先做如下准备.三台CentOS主机如下: 配置yum源(使用腾讯云的) 替换之前先备份旧配置 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup centos各版本的源配置列表 centos5 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/…