k8s设置pod特权privileged的方法

k8s部署es的时候需要初始化很多linux的内核参数。但是文件系统挂载到pod容器中就会变成read-only,难以进行操作实现需求。所以需要给PODprivileged权限,然后在容器的初始化脚本或代码中去修改sysctl参数。创建POD/deployment/daemonset等对象时,给容器的spec指定securityContext.privileged=true即可设置到containers同级即可    securityContext:     ...

阅读全文

linux下nsenter命令介绍

nsenter命令是一个可以在指定进程的命令空间下运行指定程序的命令,它位于util-linux包中,可以直接使用yum进行安装yum install -y util-linux用nsenter--help可以查看命令帮助nsenter [options] [program [arguments]]options:-t, --target pid:指定被进入命名空间的目标进程的pid-m, --mount[=file]:进入mount命令空间。如果指定...

阅读全文

k8s使用secret拉取私有镜像

我们在拉取仓库镜像时需要先dockerlogin,然后有很多节点的时候这么操作很苦逼,所以可以用过创建secret方式来做一些配置到pod的yaml文件中,这样就会无需手工去登录也能拉取镜像,下面我们来看看如何操作我们如果不在调度节点使用dockerlogin登录仓库,或者其他配置时,我们直接创建的pod拉取镜像event会有如下报错那么我们来看看secret的方式拉取私有仓库的镜像,首先,我们需要创建一个用户名密码的secretkubectl -n test create secret docker...

阅读全文

ubuntu18.04部署k8s集群

之前有用centos7的环境部署过,这次把ubuntu18.04的版本也记录一下,之前的笔记可以查看https://sulao.cn/post/802.html部署过程差不了太多,这次ubuntu版本部署网络组建选择的是calico,我们直接查看下部署过程吧系统约定192.168.137.11     k8s-master192.168.137.12      k8s-node1192.168.137.13  &nbs...

阅读全文

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...

阅读全文

docker-compose编排lnmp(nginx+php+mysql)环境

nginx+php+mysql环境是我以前经常部署过的环境,这里就使用docker-compose编排这个环境软件版本约定nginx:latestphp:7.2-fpmmysql:5.7.28首先我们来约束规划下目录/data目录存放所有映射目录和配置以及日志文件我们首先创建好所有目录sudo mkdir -p /data/{www,nginx/etc,php/conf,mysql/conf,mysql/data,logs/nginx,logs/php,logs/mysql}sudo vim ...

阅读全文