CentOS

docker概述与安装及运行容器

北城以北 提交于 2021-02-17 02:06:11
传统虚拟化 传统虚拟化步骤 1、安装虚拟化软件以及虚拟化的管理软件 2、创建虚拟机 3、给虚拟机安装os 4、在虚拟机内部不是应用(http、db之类的应用) 传统虚拟化的特点 1、VM与VM之间是完全隔离的,并且虚拟机必须要安装os 2、应用所运行的环境是建立在操作系统之上的 3、应用迁移非常笨重 传统虚拟化已经无法满足当前敏捷开发方式,VM的方式会导致开发环境和生产环境不一致,版本测试完成之后需要重新搭建环境。 docker docker是容器的引擎工具,最主要是管理容器的生命周期,创建容器、管理容器、管理镜像等。容器是没有操作系统的概念,容器通过image来启动。当你通过一个image创建和启动一个容器的时候,容器内的进程就已经启动了。一旦容器内的process意外退出,容器也就死亡。即进程在容器在,进程毁容器亡。容器与容器之间隔离通过namespace(命名空间隔离),对于Linux操作系统而言一定存在namespace,无需另外安装。 一个完整的docker由四个部分组成: docker client客户端 docker daemon守护进程 docker image镜像 docker container容器 docker功能特性 隔离环境(系统、网络、文件系统)与应用 解决依赖与版本问题 易于分发开箱即用 节点与容器快速扩容 镜像制作简单便捷,管理方便。 隔离

Hadoop优化 操作系统优化

你离开我真会死。 提交于 2021-02-16 22:53:18
1、优化文件系统,修改/etc/fstab 在defaults后面添加noatime,表示不记录文件的访问时间。 修改为: 如果不想重新启动操作系统使配置生效,那么应该执行: # mount -o remount /dev/mapper/centos-root # mount -o remount /dev/mapper/centos-home   当然,如果有其他的磁盘,同样可以这样操作,我这里测试就两个逻辑卷 2、预读缓冲 预读技术可以有效的减少磁盘寻道次数和应用的I/O等待时间,增加Linux文件系统预读缓冲区的大小(默认为256 sectors,128KB),可以明显提高顺序文件的读性能,建议调整到1024或2048 sectors。预读缓冲区的设置可以通过blockdev命令来完成。 blockdev 工具允许从命令行调用区块设备控制程序,常用参数如下:    -- getra 读取预读值    -- getfra 读取文件系统预读    -- setfra FSREADAHEAD 设置文件系统预读    -- setra READAHEAD 设置设备预读    -- getra 读取设备的预读值    -- setbsz BLOCKSIZE 在文件描述符打开块设备的时候设置块大小    -- getioopt 读取设备优化IO大小    -- getiomin

linux修改主机名

a 夏天 提交于 2021-02-16 21:46:15
1.查看当前的主机名 [root@localhost datas]# hostname localhost [root@localhost datas]# hostnamectl Static hostname: localhost.localdomain Transient hostname: localhost Icon name: computer-vm Chassis: vm Machine ID: f1d9ecb6c6bd4e02b58e19bba402056c Boot ID: 91603e0798814b54a928e70fd2a2754f Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-693.el7.x86_64 Architecture: x86-64 2.临时修改主机名 [root@localhost datas]# hostname yin 临时修改,重启服务器后就不生效了 [root@localhost datas]# hostname yin [root@localhost datas]# hostname -i 查看本机器名对应的ip地址 fe80::20c

C语言字节对齐详解

▼魔方 西西 提交于 2021-02-16 13:00:51
C语言字节对齐 1 2 3 4 5 不同系统下的C语言类型长度 Data Type ILP32 ILP64 LP64 LLP64 char 8 8 8 8 short 16 16 16 16 int 32 64 32 32 long 32 64 64 32 long long 64 64 64 64 pointer 32 64 64 64 绝大部分64位的Unix,linux都是使用的LP64模型;32位Linux系统是ILP32模型;64位的Windows使用的是LLP64(long long and point 64)模型。 基本概念 许多计算机系统对基本数据类型合法地址做出了一些限制,要求某种类型对象的地址必须是某个值K(通常是2,4或8)的倍数。这种对齐限制简化了形成处理器和存储器系统之间的接口的硬件设计。对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。 为什么要字节对齐 需要字节对齐的根本原因在于CPU访问数据的效率问题。例如,假设一个处理器总是从存储器中取出8个字节,则地址必须为8的倍数。如果我们能保证将所有的double类型数据的地址对齐成8的倍数,那么就可以用一个存储器操作来读或者写值了。否则,我们可能需要执行两次存储器访问

MySQL主从复制与主主复制

你离开我真会死。 提交于 2021-02-16 11:38:31
阅读目录 1、简介 2、环境说明 3、主从复制 3.1、MySQL 3.2、配置文件 3.3、开始构建主从复制 3.4、测试主从复制 4、MySql主主复制 4.1、实现原理 4.2、配置文件 4.3、开始构建主主复制 4.4、测试主主复制 5、注意事项 回到顶部 1、简介 MySQL作为世界上使用最为广泛的数据库之一,免费是其原因之一。但不可忽略的是它本身的功能的确很强大。随着技术的发展,在实际的生产环境中,由单台MySQL数据库服务器不能满足实际的需求。此时数据库集群就很好的解决了这个问题了。采用MySQL分布式集群,能够搭建一个高并发、负载均衡的集群服务器(这篇博客暂时不涉及)。在此之前我们必须要保证每台MySQL服务器里的数据同步。数据同步我们可以通过MySQL内部配置就可以轻松完成,主要有主从复制和主主复制。 回到顶部 2、环境说明 两台linux虚拟主机 Linux版本CentOS6.6、MySQL 5.5 ip:192.168.95.11、192.168.95.12 回到顶部 3、主从复制 回到顶部 3.1、MySQL 已经安装好,并且没有任何数据 回到顶部 3.2、配置文件 一般Linux中的MySQL配置文件都在/etc/my.cnf(windows中的配置文件为mysql.ini) log-bin=mysql-bin 开启二进制日志 注意:二进制日志必须开启

关于XFS文件系统概述

亡梦爱人 提交于 2021-02-16 10:51:38
前言: 目前XFS已成为Linux主流的文件系统,所以有必要了解下其数据结构和原理。 XFS文件系统 XFS是一个日志型的文件系统,能在断电以及操作系统崩溃的情况下保证数据的一致性。XFS最早是针对IRIX操作系统开发的,后来移植到linux上,目前CentOS 7已将XFS作为默认的文件系统。使用XFS已成为了潮流,所以很有必要了解下其数据结构和原理。 XFS官方说明文档参考: https://xfs.org/docs/xfsdocs-xml-dev/XFS_Filesystem_Structure//tmp/en-US/html/index.html 接下来将介绍XFS的一些概念,包括分配组、超级块、inode等等,过程中会结合xfs_db(xfs提供的输出文件系统信息的工具)打印一些信息,了解当前XFS的实时数据。 分配组(Allocation Group) XFS将空间分为若干个分配组,每个分配组大小相等(最后一个可能不等)。分配组包含有超级块、inode管理和剩余空间管理等,所以分配组可以认为是一个单独的文件系统。正是分配组这样的设计,使得XFS拥有了并行IO的能力。在单个分区上使用XFS体现不了这种并行IO能力,但是如果文件系统跨越多个物理硬件比如ceph,并行IO将大大提高吞吐量利用率。 上图为分配组的结构图,重点关注前面4个扇区,从上到下分别为超级块、空闲块信息

CentOS安装Python3

Deadly 提交于 2021-02-16 08:01:30
安装依赖环境   # yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel 2.下载Python3   <a href="https://www.python.org/downloads/">python下载</a> # wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz 3.安装python3   我个人习惯安装在/usr/local/python3   创建目录: # mkdir -p /usr/local/python3   解压下载好的Python-3.x.x.tgz包(具体包名因你下载的Python具体版本不不同⽽而不不同,如:我下载的是Python3.6.1.那我这里就是Python-3.6.1.tgz) # tar -zxvf Python-3.6.1.tgz 4.进入解压后的目录,编译安装。 # cd Python-3.6.1 # ./configure --prefix=/usr/local/python3 # make # make install 或者

centos 编译python3.7.0 报错ModuleNotFoundError: No module named &apos;_ctypes&apos;

时光毁灭记忆、已成空白 提交于 2021-02-15 19:29:54
平台:CentOS7 先安装以下依赖 yum -y groupinstall "Development tools" yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel yum install libffi-devel -y make install 来源: oschina 链接: https://my.oschina.net/u/2654135/blog/3074409

关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法

感情迁移 提交于 2021-02-15 17:50:09
关于在centos下安装python3.7.0以上版本时报错ModuleNotFoundError: No module named '_ctypes'的解决办法 2018年02月12日 15:23:38 海棠未满 阅读数 91723 更多 分类专栏: Linux 软件安装 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/qq_36416904/article/details/79316972 3.7版本需要一个新的包libffi-devel,安装此包之后再次进行编译安装即可。 #yum install libffi-devel -y #yum 安装方法 若在安装前移除了/usr/bin下python的文件链接依赖,此时yum无法正常使用,需要自己下载相关软件包安装,为节省读者时间,放上链接 #wget http://mirror.centos.org/centos/7/os/x86_64/Packages/libffi-devel-3.0.13-18.el7.x86_64.rpm #rpm -ivh libffi-devel-3.0.13-18.el7.x86_64.rpm 安装完成后重新进行make install,结束后再次配置相关文件的软连接即可。 ——————

centos 8 如何使用 nmcli 修改主机名和配置 IP 地址

孤街醉人 提交于 2021-02-15 13:40:12
CentOS 7 以上默认使用 nmcli 配置IP地址等选项。首先修改主机名。本文设置为 node03。 [root@localhost ~]# nmcli general hostname node03 [root@localhost ~]# nmcli general hostname node03 [root@localhost ~]# systemctl restart systemd-hostnamed.service [root@localhost ~]# nmcli general hostname node03 [root@localhost ~]# [root@localhost ~]# hostnamectl set-hostname node3 [root@localhost ~]# [root@localhost ~]# nmcli general hostname node3 [root@localhost ~]# 分别使用命令 nmcli 和 hostnamectl 。 设置IP地址、DNS服务器和默认网关信息。 #检查网卡连接信息 [root@localhost ~]# nmcli networking connectivity check full #查看网卡 ens33 信息 [root@localhost ~]# nmcli device