k8s部署Mysql

在Kubernetes上部署数据库时,需要使用持久性存储卷为Pod提供存储。首先创建pv和pvc,然后再将两者绑定,PersistentVolume和PersistentVolumeClaim,主要是管理服务持久化的存储资源Volume创建持久卷mysql_pv.yamlapiVersion: v1kind: PersistentVolumemetadata:  name: mysql-pv  labels:    ...

阅读全文

k8s集群获取token的方法

在k8s安装过程中,kubeadm初始生成的token有效期只有24小时,但是集群在后期扩容会逐渐扩大,新增节点的时候需要重新生成token,具体操作如下kubeadm token create --print-join-command#返回W1119 10:40:21.639789   10340 configset.go:202] WARNING: kubeadm cannot validate component...

阅读全文

centos7部署k8s集群环境

Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。安装要求:内存2GB或更多,CPU2核或更多,硬盘30GB或更多集群中的所有机器之间网络互通可以访问外网,需要拉取镜像禁止swap分区系统约定k8s-master 192.168.90.220 Centos7k8s-node1 192.168.90.221 Centos7k8s-node2&...

阅读全文

kubernetes集群联邦

集群联邦Federation的目的是实现单一集群统一管理多个kubernetes集群的机制。这些集群可以是跨地域的,跨云厂商的或者是用户内部自建集群。一旦集群建立联邦后,就可以使用集群FederationAPI来管理多个集群的kubernetesAPI资源。kubernetes集群联邦主要是实现以下目标1)简化管理多个联邦集群的KubernetesAPI资源2)在多个集群之间分散工作负载(容器),以提升应用(服务)的可靠性3)在不同集群中,能更快速更容易地迁移应用(服务)4)跨集群的服务发现,服务可以就近访问,以降低延迟5)实...

阅读全文

k8s发布应用的过程

k8s发布应用几本有以下6个过程1.制作镜像2.控制器管理podDeployment:无状态部署,例如Web,微服务,APIStatefulSet:有状态部署,例如数据库,ZK,ETCDDaemonSet:守护进程部署,例如监控Agent、日志AgentJob & CronJob:批处理,例如数据库备份,邮件通知3.pod数据持久化容器部署过程中一般有以下三种数据:1)启动时需要的初始数据,可以是配置文件2)启动过程中产生的临时数据,该临时数据需要多个容器间共享3)启动过程中产生的业务数据4.暴露应用使用Servi...

阅读全文

docker和docker-compose限制容器CPU内存使用的方法

在一些情况下,单机可能需要开启很多容器,那么容器多了很有可能导致硬件资源的挤兑,所以需要做每个容器做一些限制,今天我们就来学习下限制容器资源的方法CPU的限制方法,我们还是用上次学习的例子flask的那个镜像docker run -itd --cpus=2 --name app-flask -p 5001:5000 flask默热容器使用CPU是无限制的,使用了cpus参数限制了容器使用CPU数量,除了这个还可以制定cpu分配的优先级,默认是1024,数字与越大,优先级越高d...

阅读全文

使用Dockerfile构建flask镜像

之前对dockerfile进行了一些构建参数的学习,今天自己构建了一个常用的flask镜像,我个人认为使用dockerfile构建是为了自定义以及定制化的一些环境需求而使用的,例如自己写的python程序需要预装一些模块,开机启动我写的脚本或者制定位置启动程序等等,然而直接拉取docker仓库的镜像满足不了我的需求,从而需要dockerfile来构建,下面是我构建的flask镜像,很简单,只是简单的初步学习,后面有项目了再分享一些项目上构建的复杂镜像/data/app目录下主要有三个文件Dockerfile,requirements.txt,app.py...

阅读全文

docker-compose部署nginx反向代理tomcat

昨天部署了nginx+php+mysql,今天编排一个常见的高性能web服务器,是通过nginx反向代理tomcat我们直接就上下编排文件试试吧,看能不能一次性通过以下操作都再/data目录下操作,我们先创建需要的目录sudo mkdir -p /data/{nginx/etc/,logs/nginx,/www,logs/tomcat}version: "2.0"services:  nginx:    image:&nbs...

阅读全文

docker-compose编排yml文件详解及命令大全

之前使用docker-compose,但是还没有对docker-compose所有命令进行学习,这里再把所有命令过一遍Compose是用于定义和运行多容器Docker应用程序的工具。通过Compose,您可以使用YML文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从YML文件配置中创建并启动所有服务Compose使用的三个步骤:1.使用Dockerfile定义应用程序的环境。2.使用docker-compose.yml定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。3.最后,执行docker-compo...

阅读全文

docker部署php以后追加编译扩展模块的方法

使用docker部署php环境,部署好以后,php需要新增一些扩展模块的支持怎么办呢,以前在本地编译php的时候我们是用phpize来进行追加编译,然后将新编译的.so文件加到php.ini文件内的extension这里docker部署的php环境比较特殊,需要用到docker-php-ext-install这个程序,整个用起来比较简单首先我们登陆容器内部docker exex -it lnmp-php bashcd /usr/local/bin那么我们添加pdo_mysql模块命令就是./docke...

阅读全文