初识Docker--Linux Container容器管理

当前,完全硬件虚拟化技术(KVM、Xen、Hyper-V 等)能在一个物理主机上很好地运行多个互相独立的操作系统,但这也带来一些问题:性能不佳,资源浪费,系统反应迟缓等。有时候对用户来说,完全的硬件虚拟化并不是最好的选择。 一种替代方案是使用轻量级虚拟化技术 —— 所谓的 LinuX Container 容器 (LXC),它提供的是系统级虚拟化。与跑虚拟机相比,LXC 可以在一个轻量级沙箱容器里面跑多个 Linux 操作系统。当你需要设置一些易于克隆的开发环境、测试环境,或想在安全沙盒里安装应用时,LXC 就非常有用了。 Docker 是一个开源工具,可以让用户方便地布署 Linux Container 容器。Docker 很快变成了 container 技术的非官方标准,从而被 Ubuntu 和 Red Hat等众多发行版吸收进去。 本教程中我会向你们演示如何在 Ubuntu 14.04 中使用 Docker…

Continue Reading初识Docker--Linux Container容器管理

Docker小结(二)dockerfile

一、Dockerfile解析 Dockerfile用来创建一个自定义的image,包含了用户指定的软件依赖等。其包含的参数有FROM、cmd、RUN、MAINTAINER、CMD、ENTRYPOINT、USER、EXPOSE、ENV、ADD、VOLUME、WORKDIR、ONBUILD等相关命令。我们先以一个dockerfile为例具体理解下: # cat Dockerfile FROM centos:centos7.1.1503 MAINTAINER yangbk <www.361way.com> ENV TZ "Asia/Shanghai" ENV TERM xterm ADD base.repo /etc/yum.repos.d/CentOS-Base.repo ADD aliyun-epel.repo /etc/yum.repos.d/epel.repo RUN yum install -y curl wget tar bzip2…

Continue ReadingDocker小结(二)dockerfile

Docker小结(一)docker架构及常用命令

14年左右最早接触过docker,当时在ubuntu系统中只简单的运行过几个命令稍略测试过。在红帽RHCA中有DO280课程(红帽DIY 的 docker + k8s + etcd + haproxy组合产品),趁着学习DO280课程的机会 ,做下DOCKer内容的小结,本篇先从docker架构开始说起。 一、docker架构和常用命令 在开始之前,先简单的看下docker的架构图,如下: docker的常用命令如下: 容器生命周期管理 — docker [run|start|stop|restart|kill|rm|pause|unpause] 容器操作运维 — docker [ps|inspect|top|attach|events|logs|wait|export|port] 容器rootfs命令 — docker [commit|cp|diff] 镜像仓库 — docker [login|pull|push|search] 本地镜像管理…

Continue ReadingDocker小结(一)docker架构及常用命令

主流Linux发行版包管理对比速查表

使用 Linux 系统总是免不了要接触包管理工具。比如,Debian/Ubuntu 的 apt、openSUSE 的 zypp、Fedora 的 yum、Mandriva 的 urpmi、Slackware 的 slackpkg、Archlinux 的 pacman、Gentoo 的 emerge、Foresight 的 conary、Pardus 的 pisi,等等。DistroWatch 针对上述包管理器的主要用法进行了总结,对各位 Linux 用户来说具有很好的参考作用。这个总结还是有一点不足,有空给大家整理一个更全面的版本。 任务 apt Debian, Ubuntu zypp openSUSE…

Continue Reading主流Linux发行版包管理对比速查表

centos转型ubuntu的基础总结

以前经历的公司的server system主要都是centos/redhat ,目前新的公司主要使用ubuntu,虽然两者之间在很多命令的用法上没有区别,不过一些配置项的东西还是有些差异。这里做下简单的一个概况 。 一、主机名的配置 centos下修改主机名涉及到两个文件的修改/etc/hosts 、/etc/sysconfig/network ,两个文件的内容类似如下: [root@361way etc]# cat /etc/hosts 127.0.0.1 361way.com 361way localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 [root@361way etc]# cat /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=361way.com 如果修改完成后不想重启主机,可以使用hostname 361way先临时生效。 ubuntu修改主机名的方法和centos下的类似,也是修改两个文件/etc/hostname…

Continue Readingcentos转型ubuntu的基础总结

三张图看遍Linux性能监控、测试、优化工具

Linux 平台上的性能工具有很多,眼花缭乱,长期的摸索和经验发现最好用的还是那些久经考验的、简单的小工具。系统性能专家 Brendan D. Gregg在最近的 LinuxCon NA 2014 大会上更新了他那个有名的关于 Linux 性能方面的 talk (Linux Performance Tools)和幻灯片。 和 Brendan 去年的 talk 比较,今年增加了测试和优化两部分。下面的三张图片分别总结了 Linux各个子系统以及监控、测试、优化这些子系统所用到的工具。 监控 测试 优化

Continue Reading三张图看遍Linux性能监控、测试、优化工具

ZooKeeper快速搭建

Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。本文侧重于zookeeper的快速搭建。具体分为单机配置和集群模式两部分。 一、单机模式 1、配置JDK环境,略过。 2、获取及下载zookeeper 下载地址:http://mirror.bit.edu.cn/apache/zookeeper/stable/ , #wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz #tar zxvf zookeeper-3.4.6.tar.gz -C /usr/local #cd /usr/local #mv zookeeper-3.4.6 zookeeper 3、配置cfg文件 复制cfg配置文件 #cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg 并将配置文件中的datadir修改存放zookeeper的直实路径,如: dataDir=/opt/zookeeper 4、创建数据目录并启动zookeeper…

Continue ReadingZooKeeper快速搭建

也看linux内存去哪儿了

前两天一台128G内存的oracle主机发生故障触发kdump,最终由于var目录空间不足,导致kdump生成不完全。结合之前redhat给出的建议,crash设置的空间最好大于memory 空间。对此我们做了一个简单的计算,认为kdump主机生成的是运行在内存里的信息 ,虽然主机有128G的内存,不过通过top查看并计算后发现我实际上只使用7G多的大小,而使用free -m查看时已经使用了80G左右的内存 。站在DBA的角度看的话,这部分内存提前分配给了sga ,貌似也可以讲通。记得之前看过taobao褚霸写的一篇分析。这里再结合该文章算算。 通过褚霸的Linux Used内存到底哪里去了?我们已经了解到内存主要消耗在三个方面:1. 进程消耗。 2. slab消耗 3.pagetable消耗。 由于不便于直接在现网oracle主机上进行操作,这里就以本blog的云主机为例进行测试。 一、查看已用内存总量 [root@91it ~]# free -m total used free shared buffers cached Mem: 996 908 88 0 174…

Continue Reading也看linux内存去哪儿了

ansible小结(十 三)playbook中使用debug模块

平时我们在使用ansible编写playbook时,经常会遇到错误,很多时候有不知道问题在哪里 。这个时候可以使用-vvv参数打印出来详细信息,不过很多时候-vvv参数里很多东西并不是我们想要的,这时候就可以使用官方提供的debug模块来查找问题出现在哪里。 playbook示例 # verbosity(added in 2.1),如果使用的的该本低于该版本,使用时会报错 - name: debug test one host hosts: 200.200.6.53 tasks: - debug: msg: "System {{ inventory_hostname }} has uuid {{ ansible_product_uuid }}" - debug:…

Continue Readingansible小结(十 三)playbook中使用debug模块