成长的足迹

见证个人成长,分享技术经验

RHEL/CentOS 7的FirewallD及其firewall-cmd命令概述

FirewallD是RHEL/CentOS 7+的一个防火墙服务的守护进程。引入zones和services的概念以方便进行网络流量的管理。 FirewallD可以通过NetworkManager GUI工具操作Zones。设置一个网卡归属于一个Zone,可以使用NetworkManager,也...

2019-05-14 23:10:35

阅读数 20

评论数 1

Docker容器实例通过非默认的网络命名空间访问外部网络

Docker为所有容器实例建立了独立的网络命名空间中,并通过docker0桥接到宿主机的默认网络命名空间。 如果容器实例要通过宿主机上的一个定制网络命名空间oam,而非宿主机的默认网络命名空间,访问外部网络,示意图如下所示。 对于上述图示,Docker宿主机上的配置比较复杂,大致可以归...

2019-05-06 00:32:16

阅读数 33

评论数 0

NAT及跨网络命名空间的网络地址转换

NAT (Network Address Translation)即网络地址转换,最初的目的是在路由器上,修改IP报文头中的源地址(source address)或目标地址(destination address),以转发报文。通过NAT,实现了私有子网中与公共网络的连接,也间接延续了IPv4的生...

2019-05-01 00:00:20

阅读数 47

评论数 0

虚拟网络设备及其在Linux网络命名空间中的应用

Linux的网络命名空间用以隔离Linux主机上的不同的网络环境。但是有时候,我们又需要从一个网络命名空间中访问另一个网络命名空间中的网络,这就需要用到虚拟网络设备。 虚拟网络设备(Virtual Network Device)是一种抽象的网络设备,类似网络管道,用以在不同的网络命名空间之间建立...

2019-04-29 23:43:31

阅读数 27

评论数 0

Linux内核的网络命名空间的概念及常用命令

命名空间(namespace)的概念已经非常常见了,通常用以区分不同范畴内的各种资源。在Linux内核中,命名空间用以隔离多种Linux内核的资源,如进程、进程间通信、网络、挂载路径等。通过Linux命名空间,能够把Linux有限的内核资源(进程号、通信资源、网络资源等)合理分配给各个用户的进程,...

2019-04-29 23:29:23

阅读数 51

评论数 0

基于iptables的Docker网络隔离与通信详解

Docker提供了bridge, host, overlay等多种网络。同一个Docker宿主机上同时存在多个不同类型的网络。位于不同网络中的容器,彼此之间是无法通信的。Docker容器的跨网络隔离与通信,是借助了iptables的机制。 我们知道,iptables的filter表中默认划分为I...

2019-03-27 17:26:04

阅读数 225

评论数 7

iptables及其过滤规则

1. iptables是Linux内核的一个模块,用以管理对网络设备(网卡)的访问,如路由过滤、端口转发、NAT等,root用户可以通过iptables配置操作系统的路由表。在当前的主流Linux发布系统中,都默认安装了iptables。 为了适应IPv6,事实上iptables用以管理IPv4...

2019-03-19 00:01:07

阅读数 220

评论数 0

OpenStack的Telemetry Data Collection服务概述

Telemetry项目是OpenStack的一个独立项目,专门用于采集其他服务的数据,用于计量。Telemetry提供了若干个软件组件,形成若干个服务的集合。服务之间通过OpenStack的消息总线互相通信。服务采集的数据可以发布给不同的存储或分析系统,默认发送给Gnocchi数据库。 1. T...

2019-02-28 23:34:02

阅读数 88

评论数 0

Docker容器实例的网络与通信

一个Docker容器实例,无论使用哪个类型的网络驱动器(包括定制的网络插件),从容器内部来说网络都是透明的,即不区分自己是在哪种类型的网络中。而只知道自己的网络信息,如IP, Gateway, iptalbes, DNS等。 默认创建的容器实例,不会对网络外暴露任何端口,只能供同属一个网络中的其...

2019-02-18 22:21:16

阅读数 95

评论数 0

TestNG中在一个suite标签中的多个test标签之间共享中间数据的方法

在TestNG的一个测试suite中,可能存在多个<test>,那么在不同的<test>标签内部的测试类,其之间如何共享动态中间数据呢? 比如在一个<test>中的...

2019-02-14 22:21:09

阅读数 263

评论数 0

TestNG中在一个test标签中的多个测试类之间共享中间数据的方法

在TestNG的一个测试suite中,在一个<test>标签中可以包含多个测试类,那么这些测试类之间如何共享动态中间数据呢? 比如在一个测试类Producer中,一个测试方法产生了中间数据groupIds;而在后续测试的另一个测试类Consumer中,...

2019-02-14 21:33:28

阅读数 70

评论数 0

Docker容器支持IPv6的方法

1.设置Docker Engine支持IPv6 1) 启动Docker Engine时即开启对IPv6的支持 默认启动时Docker Engine只支持IPv4。 启动Docker Engine时,指定--ipv6选项即可支持IPv6。 2) 对于已经启动的Docker Engine开启对...

2019-02-13 23:08:26

阅读数 239

评论数 0

TestNG中的@Factory与@DataProvider的执行比较

TestNG中@Factory与@DataProvider的功能大相径庭,但是在多次执行的问题上常常理不清。 1.@DataProvider 首先,必须明确,使用@DataProvider修饰的方法,只负责提供测试数据,而且是测试执行前就确定了的静态数据。该方法必须被其他测试方法引用才意义。 ...

2019-02-13 22:52:59

阅读数 101

评论数 0

Kubernetes集群内外的网络连通性

Kubernetes集群中包含多种对象,如Node, Container, Pod, Service等,这里主要总结Kubernetes集群中的各种对象的网络连通性。大致可以分为Kubernetes集群内部的各对象之间的网络连通性,以及Kubernetes集群内部的对象对集群外部的网络可见性。 ...

2019-01-29 22:54:18

阅读数 187

评论数 0

Kubernetes集群中的重要对象(资源)一览

Kubernetes对象也被称为资源,就是Kubernetes集群中的各种可持久化实体,如Deployment,Pod,Service等。 从Kubernetes集群的角度,任何Kubernetes对象都有如下两个侧面: spec,表示Kubernetes对象期望的状态,往往通过YAML配置文件...

2019-01-25 00:00:08

阅读数 70

评论数 0

OpenStack Heat简介

OpenStack Heat是一个Python软件项目,是OpenStack Orchestration计划的主要落地项目。 OpenStack Heat是OpenStack提供的一个REST服务。能够基于一个声明式的模板,通过装配引擎装配组合若干个云应用。 OpenStack Heat主要管理云...

2019-01-16 23:45:23

阅读数 39

评论数 0

Kubernetes及其Master/Node节点

Kubernetes是CNCF旗下的一个开源软件系统,用以在集群(跨多主机)中管理容器化的应用,提供应用的部署、维护和伸缩等。应用打包为与运行环境无关的容器镜像(Kubernetes中称为Deployment),然后Kubernetes将其部署到集群中运行的主机上(通常是虚拟机),并以容器实例的形...

2019-01-14 23:54:46

阅读数 398

评论数 0

suite-files及其在编制TestNG测试计划中的应用

熟悉TestNG的朋友们往往都知道testng.xml文件,testng.xml文件是我们定义测试计划的配置文件,其中可以进行各种复杂的配置。 但是,当我们有多个testng.xml文件时(当然文件名不同),如何能够组合这些配置文件呢?这里介绍一个特别但是却没有在TestNG文档中提及的suit...

2018-12-29 22:51:42

阅读数 90

评论数 0

Jersey中对JSON数据的处理及JSON数据与Java对象之间的绑定

Jersey最初只是JAX-RS标准的实现之一,目前已经成为JavaEE的参考实现Glassfish的组成部分。Jersey本身不提供完整的JSON数据处理及Java对象绑定,而是以Jersey Media扩展模块的形式,集成第三方JSON处理框架的实现。 1. JSON with padding...

2018-12-28 23:12:15

阅读数 198

评论数 0

JavaEE的JSON API规范JSON-P/JSON-B

从JavaEE 7开始,一个专门用于处理JSON数据的API被纳入JavaEE规范体系,这就是Java API for JSON Processing (JSON-P) 。在JavaEE 8中,又在此基础上提供了Java API for JSON Binding (JSON-B)。至此,与XML数...

2018-12-28 20:57:08

阅读数 186

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭