Linux
文章平均质量分 87
大数据老司机
专注于大数据智能运维和大数据开发领域优质创作者
展开
-
nsenter命令简单介绍
一、简介nsenter命令是一个可以在指定进程的命令空间下运行指定程序的命令。它位于util-linux包中。用途一个最典型的用途就是进入容器的网络命令空间。相当多的容器为了轻量级,是不包含较为基础的命令的,比如说ip address,ping,telnet,ss,tcpdump等等命令,这就给调试容器网络带来相当大的困扰:只能通过docker inspect ContainerID命令获取到容器IP,以及无法测试和其他网络的连通性。这时就可以使用nsenter命令仅进入该容器的网络命名空间,使原创 2021-08-24 23:37:50 · 11607 阅读 · 0 评论 -
VLAN与VXLAN网络原理与实践
一、VLAN概述VLAN(Virtual Local Area Network)的中文名为“虚拟局域网”。VLAN是一种将局域网设备从逻辑上划分成一个个网段,从而实现虚拟工作组的数据交换技术,VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。这一技术主要应用于交换机和路由器中,但主流应用还是在交换机之中。但又不是所有交换机都具有此功能,只有VLAN协议的第二层以上交换机才具有此功能。802.1Q的标准的出现打破了虚拟网依赖于单一厂商的僵局,从一个侧面推动了VLAN的迅速发展。广播域科普:原创 2021-08-21 19:13:06 · 2475 阅读 · 0 评论 -
Docker三剑客之Swarm
一、概述Swarm是Docker公司推出的用来管理docker集群的平台,几乎全部用GO语言来完成的开发的,代码开源在https://github.com/docker/swarm;Docker Swarm 和 Docker Compose 一样,都是 Docker 官方容器编排项目,但不同的是,Docker Compose 是一个在单个服务器或主机上创建多个容器的工具,而 Docker Swarm 则可以在多个服务器或主机上创建容器集群服务,对于微服务的部署,显然 Docker Swarm 会更加适合原创 2021-08-15 17:07:38 · 1199 阅读 · 0 评论 -
Docker三剑客之Machine
一、Machine 的基本概念和流程Docker Machine 是一个用于配置和管理带有Docker Engine主机的工具,它允许你在虚拟宿主机上安装Docker,并使用docker-machine命令管理这个宿主机,可以使用Docker Machine在本地的MAC或者windows box、公司网络,数据中心或者AWS这样的云提供商上创建docker。简单说,一个 Docker Machine 就是一个 Docker host 主机和经过配置的 Docker client 的结合体。Dock原创 2021-08-15 01:08:51 · 1685 阅读 · 0 评论 -
Docker三剑客之Compose
一、 概述compose 是用来定义和运行一个或多个容器(通常都是多个)运行和应用的工具。使用 compose 可以简化容器镜像的构建以及容器的运行。compose 使用 YAML 文件来定义多容器之间的关系。一个 docker-compose up 就可以把完整的应用跑起来。 本质上,compose 把 YAML 文件解析成 docker 命令的参数,然后调用相应的 docker命令行接口,从而将应用以容器化的方式管理起来。它通过解析容器间的依赖关系顺序地启动容器。而容器间的依赖关系由 YAML原创 2021-08-13 00:36:46 · 480 阅读 · 0 评论 -
Docker三种自定义网络(bridge、macvlan、overlay )
一、概述Docker 提供三种 网络驱动:bridge, macvlan 和 overlayoverlay 和 macvlan 用于创建跨主机的网络二、自定义桥接(bridge)网络这个网桥类似于默认网络中的 bridge创建自定义网络命令:docker network create$ docker network create --driver bridge --subnet 172.19.0.0/16 --gateway 172.19.0.1 mybridge_net参数解释:原创 2021-08-09 23:41:03 · 3095 阅读 · 0 评论 -
Docker资源隔离(namespace,cgroups)
一、概述Docker容器的本质是宿主机上的一个进程。Docker通过namespace实现了资源隔离,通过cgroups实现了资源限制,通过*写时复制机制(copy-on-write)*实现了高效的文件操作。二、Linux内核的namespace机制namespace 机制提供一种资源隔离方案。PID,IPC,Network等系统资源不再是全局性的,而是属于某个特定的Namespace.每个namespace下的资源对于其它的namespace下的资源是透明的,不可见的。Linux内核实现原创 2021-08-08 00:16:17 · 947 阅读 · 0 评论 -
Docker四种网络模式(Bridge,Host,Container,None)
一、Docker网络模式简介基于对Network Namespace的控制,docker可以为在容器创建隔离的网络环境,在隔离的网络环境下,容器具有完全独立的网络栈,与宿主机隔离,也可以使容器共享主机或者其他容器的网络命名空间,基本可以满足开发者在各种场景下的需要。按docker官方的说法,docker容器的网络有五种模式:网络模式简介Bridge(默认模式)此模式会为每一个容器分配、设置IP等,并将容器连接到一个docker0虚拟网桥,通过docker0网桥以及Iptable原创 2021-08-06 00:30:22 · 1934 阅读 · 0 评论 -
Docker数据卷—Volumes
一、引入Docker数据卷的必然性为了实现容器与主机之间、容器与容器之间共享文件,容器中数据的持久化,将容器中的数据备份、迁移、恢复等,Docker加入了数据卷(volumes)机制。简单的讲,就是做了一个文件夹的实时共享,有点像局域网的文件共享。二、Docker挂载容器数据卷目前Docker提供了三种不同的方式将数据从宿主机挂载到容器中:bind mounts、tepfs mounts、Volumes三种方式。2.1、方式一:bind mounts意为着可以存储在宿主机系统的任意位置(原创 2021-08-04 00:44:10 · 4348 阅读 · 0 评论 -
搭建企业级docker仓库—Harbor
一、简介docker 官方提供的私有仓库 registry,用起来虽然简单 ,但在管理的功能上存在不足。 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,harbor使用的是官方的docker registry(v2命名是distribution)服务去完成。harbor在docker distribution的基础上增加了一些安全、访问控制、管理的功能以满足企业对于镜像仓库的需求。二、安装2.1、环境linux centos8192.168.182.152原创 2021-08-02 23:26:37 · 382 阅读 · 0 评论 -
Docker基础
一、Docker简介Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC:Linux Container)等技术。1.1、LXC与Docker的关系Docker并不是L原创 2021-08-01 17:47:19 · 2762 阅读 · 0 评论 -
wireshark网络抓包详解
一、简介Wireshark是一款非常流行的网络封包分析软件,可以截取各种网络数据包,并显示数据包详细信息。为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容二、安装2.1、安装地址Wireshark开源地址:https://github.com/wireshark/wiresharkWireshark下载地址:https://原创 2021-07-29 23:38:02 · 9400 阅读 · 4 评论 -
Linux网络抓包工具tcpdump
一、tcpdump介绍tcpdump 是一个运行在命令行下的抓包工具。它允许用户拦截和显示发送或收到过网络连接到该计算机的TCP/IP和其他数据包。tcpdump 适用于大多数的类Unix系统操作系统(如linux,BSD等)。二、安装&用法说明2.1、安装$ yum -y install tcpdump2.2、用法说明tcpdump采用命令行方式,它的命令格式为tcpdump [ -DenNqvX ] [ -c count ] [ -F file ] [ -i interfac原创 2021-07-26 23:22:07 · 4046 阅读 · 0 评论 -
RAID技术图解(mdadm)
一、概述RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。简单地说, RAID 是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能和数据冗余高可靠性的存储技术。RAID分为硬 RAID、全软 RAID、半软 RAID。二、RAID类型2.1、硬件磁盘阵列(Hardware RAID)简单来说就是全部通过用硬件来实现RAID功能的就是硬RAID,比如:各种RAID卡,还有主板集成能够做的原创 2021-07-24 22:22:43 · 1971 阅读 · 0 评论 -
Linux LVM详解
一、简介LVM(Logical Volume Manager)逻辑卷管理,是在硬盘分区和文件系统之间添加的一个逻辑层,为文件系统屏蔽下层硬盘分区布局,并提供一个抽象的盘卷,在盘卷上建立文件系统。管理员利用LVM可以在硬盘不用重新分区的情况下动态调整文件系统的大小,并且利用LVM管理的文件系统可以跨越物理硬盘。当服务器添加了新的硬盘后,管理员不必将原有的文件移动到新的硬盘上,而是通过LVM直接扩展文件系统来跨越物理硬盘。LVM就是通过将底层的物理硬盘封装,然后以逻辑卷的方式呈现给上层应用。当我们对底原创 2021-07-24 16:59:33 · 10191 阅读 · 0 评论 -
Centos8 取消磁盘挂载失败和磁盘挂载不上问题解决(fuser)
一、取消磁盘挂载失败问题解决【问题】$ umount /dev/sdb1umount: /opt/data1: target is busy.$ umount /dev/sdb1 -f # 强制取消挂载也不行umount: /opt/data1: target is busy.# 有些操作系统提示umount: /dev/sdb1: device is busy.【fuser工具】fuser命令用于报告进程使用的文件和网络套接字。fuser命令列出了本地进程的进程号,那些本地进程使用原创 2021-07-24 10:42:13 · 2780 阅读 · 0 评论 -
Linux中cache和buff的区别
Buffers %lu Relatively temporary storage for raw disk blocks that shouldn't get tremendously large (20MB or so). Cached %lu In-memory cache for files read from the disk (the page cache). Doesn't include SwapCached....SReclaimable %lu (since Lin原创 2021-06-27 11:42:35 · 1448 阅读 · 0 评论 -
OSI七层模型及TCP/IP四层模型
一、OSI七层模型OSI(Open System Interconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。ISO为了更好的使网络应用更为普及,推出了OSI参考模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。OSI七层协议模型主要是:应用层(Application)、表示层(Presentation)、会话层(Session)、传输层(Transport)、网络层(Network)、原创 2021-06-30 23:36:58 · 5445 阅读 · 2 评论 -
HTTP与HTTPS协议
一、HTTP与HTTPS介绍HTTP是超文本传输协议,全称“Hyper Text Transfer Protocol”,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。设计HTTP的初衷是为了提供一种发布和接收HTML页面的方法。HTTPS协议是由SSL/TLS+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全原创 2021-07-02 23:19:31 · 9746 阅读 · 1 评论 -
TCP/UDP协议
一、TCP/UDP协议简介TCP(Transmission Control Protocol:传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。UDP(User Datagram Protocol:数据报协议)是一种面向无连接的传输层通信协议。二、TCP连接过程(三次握手与四层挥手)三次握手是指建立TCP连接协议时,需要在客户端和服务器之间发送三个包,握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。第一次握手:客户端发送第一个包,其中SYN原创 2021-07-04 13:38:55 · 413 阅读 · 0 评论 -
什么是Socket?
一、什么是Socket?在计算机通信领域,socket 被翻译为“套接字”(套接字=主机+端口号),它是计算机之间进行通信的一种约定或一种方式。通过 socket这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read关闭close”模式来操作。我的理解就是Socket就是该模式的一个实现,它只是提供了一个针对TCP或者UDP编程的接口:即so原创 2021-07-04 15:10:09 · 17995 阅读 · 0 评论 -
畅谈DNS域名解析
一、域名系统概述域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了“域名”这个名词。“域名系统”明确地指明这种系统是应用在因特网中。二、常见的资源记录类型资源记录类型解释SOA记录:起始授权记录(Start Of Authority)指出当前区域内谁是 主DNS服务原创 2021-07-07 23:43:13 · 667 阅读 · 0 评论 -
细说CDN
一、CDN是什么?CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的CACHE(缓存)层,将网站的内容发布到最接近用户的网络”边缘“的节点,使用户可以就近取得所需的内容(就近原则),提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因,提高用户访问网站的响应速度。CDN的优势很明显:(1)CDN节点解决了跨运营商和跨地域访问的问题,访问延时大大降低;(2)大部分请求在CDN边缘原创 2021-07-10 10:43:28 · 348 阅读 · 0 评论 -
iproute2路由配置(ip rule、ip route、traceroute)
一、Iproute2简介Iproute2是一个在Linux下的高级网络管理工具软件。实际上,它是通过rtnetlink sockets方式动态配置内核的一些小工具组成的,从Linux2.2内核开始,Alexey Kuznetsov 实现了通过rtnetlink sockets用来配置网络协议栈,它是一个现代的强大的接口。centos安装iproute2命令:yum install -y iprouteip -V二、iproute2常用命令net-tools和iproute2的大致对比:原创 2021-07-10 20:17:22 · 9038 阅读 · 0 评论 -
DHCP详解
一、DHCP简介DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个应用层协议。当我们将客户主机ip地址设置为动态获取方式时,DHCP服务器就会根据DHCP协议给客户端分配IP,使得客户机能够利用这个IP上网。...原创 2021-07-11 16:08:10 · 67757 阅读 · 7 评论 -
NetworkManager服务(nmcli)
一、简介NetworkManager服务是管理和监控网络设置的守护进程,CentOS7更加注重使用NetworkManager服务来实现网络的配置和管理,CentOS7以前是通过network服务管理网络,以后的版本所有网络管理和设置统一由NetworkManager服务来维护。它是一个动态的,事件驱动的网络管理服务。NetworkManager在系统中的管理工具为nmcli二、nmcli简单使用2.1、查看# 查看所有硬件设备信息nmcli device show# 查看制定设备信息原创 2021-07-11 18:18:34 · 20267 阅读 · 0 评论 -
VMware安装Centos8(Centos8与Centos7的区别)
一、环境准备1.1、VMware下载地址链接:https://pan.baidu.com/s/1HthvbKJ4gRZ07aNKzp6T7Q 提取码:8888VMware安装的话就是傻瓜式一步步安装,这里就不讲怎么安装了。1.2、Centos8下载https://mirrors.aliyun.com/centos/8.4.2105/isos/x86_64/CentOS-8.4.2105-x86_64-dvd1.iso二、VMware安装Centos82.1、打开VMware,选择【创建新原创 2021-07-16 23:08:10 · 1279 阅读 · 0 评论 -
VMware三种网络模式详解
一、简介vmware为我们提供了三种网络工作模式,它们分别是:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式)。查看网络连接打开vmware虚拟机,我们可以在选项栏的“编辑”->“虚拟网络编辑器”中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8(NAT模式)其实,我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机VMnet1表示的是用于仅主机模式(host-only)下的虚拟交换机;VMnet8表示的是用于NAT模原创 2021-07-18 01:36:48 · 791 阅读 · 0 评论 -
dnsmasq( DNS和DHCP)服务
一、简介Dnsmasq 提供 DNS 缓存和 DHCP 服务功能。作为域名解析服务器(DNS),dnsmasq可以通过缓存 DNS 请求来提高对访问过的网址的连接速度。作为DHCP 服务器,dnsmasq 可以用于为局域网电脑分配内网ip地址和提供路由。DNS和DHCP两个功能可以同时或分别单独实现。dnsmasq轻量且易配置,适用于个人用户或少于50台主机的网络。此外它还自带了一个 PXE 服务器。什么是PXE?PXE ((Preboot eXecute Environment) )是由 In原创 2021-07-18 14:17:05 · 4327 阅读 · 0 评论 -
Linux多网卡7种bond模式
一、简介网卡绑定mode共有七种(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6。常用的三种:mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。二、七种模型详解与实验(这里只实验常用的三种模型)2.1、mode=0(balance-rr)(平衡抡循环策略)链路负载均衡,增加带宽原创 2021-07-18 19:02:27 · 3594 阅读 · 0 评论 -
Linux磁盘分区、格式化、挂载
一、前期准备测试环境:VMware Workstation / centos81.1、增加一块磁盘1.2、查看新增磁盘(lsblk),发现没找到新增的磁盘1.3、解决查不到新增磁盘问题#重新扫描SCSI总线添加设备,$ echo "- - -" > /sys/class/scsi_host/host0/scan$ echo "- - -" > /sys/class/scsi_host/host1/scan$ echo "- - -" > /sys/class/scs原创 2021-07-23 00:14:15 · 1126 阅读 · 0 评论 -
Centos8 fstab文件配置错误导致机器起不来问题解决
一、现象二、解决通过单用户模式进入系统解决2.1、重启进入2.2、看到上面画面,按 e。红框中的ro改为:rw init=/sysroot/bin/shKVM生成的虚拟机有console 连接,需要将console=ttyS0,XXX(举例,不一定准确)删除掉。变成绿框的这种。2.3、按下 Control+X ,使用单用户模式启动2.4、修改/etc/fstab,把有问题的那行先注释掉,或者记得正确的UUID可以修改成正确的UUID,一般不会去记住这鬼东西,还有就是可以用磁盘路径替换原创 2021-07-24 00:45:12 · 2554 阅读 · 0 评论