maintainer

Linux Swap交换分区介绍总结【靠谱,查看解释】

浪子不回头ぞ 提交于 2020-09-28 17:45:28
Swap使用建议物理内存的0.75 ------------------------------ Swap交换分区概念 什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料: Linux divides its physical RAM (random access memory) into chucks of memory called pages. Swapping is the process whereby a page of memory is copied to the preconfigured space on the hard disk, called swap space, to free up that page of memory. The combined sizes of the physical memory and the swap space is the amount of virtual memory available. Swap space in Linux is used when the amount of physical memory (RAM) is full. If the system needs more memory resources and the RAM

docker快速入门6-dockerfile和registry

♀尐吖头ヾ 提交于 2020-09-28 09:51:04
docker快速入门6-dockerfile和registry dockerfile是构造Docker images的一行行命令的集合,是一个纯文本文件。 语法格式 # 注释信息 INSTRUCTION 指令,指令不区分大小写,但约定使用大写 非注释行的第一行必须是 FROM 指令 工作目录 使用Dockerfile制作镜像时需要一个干净的工作目录,该目录结构如下: Dockerfile文件 可选的 .dockerignore,用于存放要打包进镜像的文件目录中需要排除的文件 文件1,文件2,... 目录1,目录2,... 要打包进镜像的文件或目录都存放在与 Dockerfile 文件同级。 Dockerfile指令 更多的dockerfile指令相关信息请参考: https://docs.docker.com/engine/reference/builder FROM Dockerfile文件开篇的第一个非注释行,用于为镜像文件构建过程指定基准镜像,后续的指令运行于此基准镜像所提供的运行环境。 语法 FROM <repository>[:<tag>]或 FROM <repository>@<digest> <repository>: 基础镜像名称 <tag>: 基础镜像的标签,省略时默认为latest <digest>: 可以不指定镜像的名称而使用镜像的唯一识别hash码

Linux Kernel 5.8 发布,华为内核代码贡献全球持续领先

耗尽温柔 提交于 2020-09-24 16:20:23
近日, Linux Kernel 5.8 版本正式发布,Linus 表示 Linux Kernel 5.8 是“有史以来最大的发行版之一”。Linux Kernel 5.8 在 ARM64 架构特性方面,有不少的更新,华为92个社区内核工程师贡献了包括:ARM64 SPE perf event、ACPI CPPC 支持 ARM64 CPU 超频,以及虚拟化热迁移页标脏优化(128G 4K 页标脏从 650ms 优化到 1.8 ms),CPU休眠调控器默认可根据场景调整等等特性, 与此同时,华为在 Linux Kernel 5.8 中的代码贡献(changesets)、代码修改行(line changed)和内核缺陷发现方面,都交出了一份亮眼的答卷。 华为工程师郭寒军回忆到:“还记得十年前合入第一个 patch 的激动, 一转眼十年的时间,华为在社区已经拥有 20+ Maintainer,覆盖了:容器所使用的核心功能 Cgroup,软硬件解耦ACPI on ARM64,文件系F2FS/EROFS,RAS EDAC框架,Media子系统,IIO 子系统,以及 Perf on ARM64 等子系统上。这也是华为基础软件技术实力的体现。 内核代码贡献,华为排名全球第二 从公司贡献角度来说,华为提交的补丁数量位列第二名,占比 8.6%,代码修改行位列第一,占比 27.8%。

理解Docker(2):Docker 镜像

笑着哭i 提交于 2020-08-17 05:25:11
本系列文章将介绍Docker的有关知识: (1) Docker 安装及基本用法 (2) Docker 镜像 (3) Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 (4) Docker 容器的隔离性 - 使用 cgroups 限制容器使用的资源 (5) Docker 网络 对于每个软件,除了它自身的代码以外,它的运行还需要有一个运行环境和依赖。不管这个软件是象往常一样运行在物理机或者虚机之中,还是运行在现在的容器之中,这些都是不变的。在传统环境中,软件在运行之前也需要经过 代码开发->运行环境准备 -> 安装软件 -> 运行软件 等环节,在容器环境中,中间的两个环节被镜像制作过程替代了。也就是说,镜像的制作也包括运行环境准备和安装软件等两个主要环节,以及一些其他环节。因此,Docker 容器镜像其实并没有什么新的理论,只是这过程有了新的方式而已。 镜像(image)是动态的容器的静态表示(specification),包括容器所要运行的应用代码以及运行时的配置。Docker 镜像包括一个或者多个只读层( read-only layers ),因此,镜像一旦被创建就再也不能被修改了。一个运行着的Docker 容器是一个镜像的实例( instantiation )。从同一个镜像中运行的容器包含有相同的应用代码和运行时依赖。但是不像镜像是静态的

总结:Docker

核能气质少年 提交于 2020-08-15 21:31:14
基础环境要求 要求系统版本不低于 CentOS Linux release 7.4.1708 (Core) 检查了下,满足的机器为transfer的机器:10.62.253.69,暂时使用这台机器操作。 登录镜像仓库 docker login : 登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub docker logout : 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub 拉取需要的基础镜像 docker pull docker-registry.qiyi.virtual/docker/openjdk:11-jdk-slim 生成镜像文件 Dockerfile案例: FROM docker-registry.qiyi.virtual/docker/openjdk:8u212-jdk-alpine MAINTAINER weiwei WORKDIR /data/weiwei/firstDocker #指定工作目录,CMD命令默认就是在这个目录下找要执行的文件的 ADD ./hubble-biz-host-2.2.3-001-SNAPSHOT.jar /data/weiwei/firstDocker #将要执行的文件拷贝到这个目录下 CMD ["java","-jar","hubble-biz

直播预告:Service Mesh 技术在美团的落地和挑战

家住魔仙堡 提交于 2020-08-15 05:08:13
一场突如其来的疫情加深了企业对数字化转型升级的渴望,作为新兴数字化业务的基础,云原生技术的价值日益凸显。当前,越来越多的企业逐步引入容器、微服务/Service Mesh 技术改造业务,实现数据库、PaaS 中间件的云原生化,探索 Serverless 的落地应用,以提升应用交付能力,促进业务创新,并提升资源利用率,降低开发运维成本;另一方面,云原生开源社区的核心框架也在不断迭代,使之更符合开发运维需求。 网易杭研举办本次“问道一线专家,探秘云原生实践”系列在线技术沙龙活动,邀请 Envoy 社区 Core Maintainer 及网易杭研、美团、微博等知名互联网公司一线专家联袂分享,解读云原生技术演进趋势,介绍云原生落地应用的经验心得,实践过程中遇到的典型问题及解决之道。 基本信息 议题:Service Mesh 技术在美团的落地和挑战 讲师:刘世朋,美团基础架构部开发工程师 时间: 6月11日 19:00-20:00 地点:在线直播 讲师简介 刘世朋,就职于美团基础架构部服务治理中心,目前负责 OCTO2.0(Service Mesh)项目的建设。技术兴趣集中在云原生相关的领域,包括容器、K8s、Service Mesh等方面。 议题摘要 美团相对具有较为完善的服务治理系统,业务开发语言以 Java 为主且内部技术栈较为统一,OCTO 服务治理系统的接入覆盖率很高。本次主要介绍

OAM 创始团队:揭秘 OAM Kubernetes 实现核心原理

与世无争的帅哥 提交于 2020-08-14 08:58:28
作者 | Andy Shi(阿里云高级技术专家)、天元(阿里云技术专家) 今年 5 月,阿里云和微软云共同宣布, Open Application Model (OAM) 社区携手知名混合云管理项目 Crossplane 社区,联合发布了 OAM 在 Kubernetes 平台上的标准实现与核心依赖库。 本次合作达成后,OAM 社区成功的将标准应用定义和标准化的云服务管理能力统一起来,迈出了实现真正意义上的无差别云端应用交付的关键一步 。 去年 10 月 , 阿里云和微软共同推出了 OAM 项目 ,旨在构建围绕 Kubernetes 的云原生应用规范。OAM 描述了一个模型 —— 开发人员可以在其中定义应用程序组件;应用程序操作员负责创建这些组件的实例并为它们分配应用程序配置;基础架构运营商负责定义、安装和维护平台上可用的基础服务。 本次合作是阿里云、微软与 Crossplane 社区的三方技术合作,主要围绕 OAM 在 Kubernetes 上的标准实现以及 Crossplane 项目的 OAM 化展开。因为 Kubernetes 社区在落地 OAM 模型的过程中,提出了关于 OAM 标准实现的诉求。所以这次合作的一个重点,就是三方工程师使用 Go 语言开发了一个 OAM Kubernetes 核心依赖库。这个项目的名字叫做 oam-kubernetes-runtime 。OAM

docker入门及常用命令

僤鯓⒐⒋嵵緔 提交于 2020-08-14 02:49:01
Dokcer 一、contos Docker 安装 (关闭 firewalld 及selinux) 1、卸载旧版本 # sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine 2、更新docker yum 源 不更新源,会默认安装老旧版docker # sudo yum install -y yum-utils # sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo 3、安装docker 需要安装三个软件 docker-ce docker-ce-cli containerd.io # sudo yum install docker-ce docker-ce-cli containerd.io 安装特定版本方式 :请在存储库中列出可用版本,然后选择并安装: 一个。列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序,并被截断: # yum list docker-ce -

docker build 不使用缓存重建镜像

情到浓时终转凉″ 提交于 2020-08-10 09:10:23
cache 机制注意事项 可以说,cache 机制很大程度上做到了镜像的复用,降低存储空间的同时,还大大缩短了构建时间。然而,不得不说的是,想要用好 cache 机制,那就必须了解利用 cache 机制时的一些注意事项。 1. ADD 命令与 COPY 命令:Dockerfile 没有发生任何改变,但是命令 ADD run.sh / 中 Dockerfile 当前目录下的 run.sh 却发生了变化,从而将直接导致镜像层文件系统内容的更新,原则上不应该再使用 cache。那么,判断 ADD 命令或者 COPY 命令后紧接的文件是否发生变化,则成为是否延用 cache 的重要依据。Docker 采取的策略是:获取 Dockerfile 下内容(包括文件的部分 inode 信息),计算出一个唯一的 hash 值,若 hash 值未发生变化,则可以认为文件内容没有发生变化,可以使用 cache 机制;反之亦然。 2. RUN 命令存在外部依赖:一旦 RUN 命令存在外部依赖,如 RUN apt-get update ,那么随着时间的推移,基于同一个基础镜像,一年的 apt-get update 和一年后的 apt-get update, 由于软件源软件的更新,从而导致产生的镜像理论上应该不同。如果继续使用 cache 机制,将存在不满足用户需求的情况。Docker

docker容器以非root用户启动应用

吃可爱长大的小学妹 提交于 2020-08-09 08:56:15
  docker容器启动应用默认的是root用户,可以使用ps命令来查看。很多的目录及文件权限是777,这些都是不安全的。 最近的一项工作就是要以非root用户启动docker,并且修改777权限为755. 在Dockefile中创建指定的用户xxx和用户组,然后用su-exec xxx java ... 来启动应用,使用ps查看,进程的启动用户就是xxx了。 以非root用户启动docker应用的一个问题是,需要提前创建好一些文件夹,并把文件夹的owner和group改为xxx。否则,日志,临时文件,解压操作等都会提示没有权限。 我的做法是,假如当前目录是/opt/manager,临时文件或解压目录是/opt/manager/tmp/.../...abc.zip,就在dockfile中创建/opt/manager/tmp,并把文件夹的owner和group改为xxx。 su-exec可以在一个进程中完成切换用户和执行命令,不用su之后再执行命令。 https://www.jianshu.com/p/6cde4396da97 这也是用非root的业务用户来运行应用。记录一下。   应用容器化之后,在docker容器启动时,默认使用的是root用户执行命令,因此容器中的应用默认都是使用root用户来运行的,存在很高的安全风险,那么如何能够使用非root的业务用户来运行应用呢