host

实现容器的底层技术

一世执手 提交于 2020-02-29 07:04:52
https://www.cnblogs.com/CloudMan6/p/7045784.html 为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术。 cgroup 和 namespace 是最重要的两种技术。cgroup 实现资源限额, namespace 实现资源隔离。 cgroup cgroup 全称 Control Group。Linux 操作系统通过 cgroup 可以设置进程使用 CPU、内存 和 IO 资源的限额。相信你已经猜到了:前面我们看到的 --cpu-shares 、 -m 、 --device-write-bps 实际上就是在配置 cgroup。 cgroup 到底长什么样子呢?我们可以在 /sys/fs/cgroup 中找到它。还是用例子来说明,启动一个容器,设置 --cpu-shares=512 : 查看容器的 ID: 在 /sys/fs/cgroup/cpu/docker 目录中,Linux 会为每个容器创建一个 cgroup 目录,以容器长ID 命名: 目录中包含所有与 cpu 相关的 cgroup 配置,文件 cpu.shares 保存的就是 --cpu-shares 的配置,值为 512。 同样的,/sys/fs/cgroup/memory/docker 和 /sys/fs/cgroup/blkio/docker 中保存的是内存以及

修改Oracle监听端口

痞子三分冷 提交于 2020-02-29 01:56:19
修改oracle监听端口 修改端口号的整体步骤: 1.1 查看当前监听的状态 1.2 停止监听 1.3 修改监听文件的端口号 1.4 修改初始化参数local_listener 1.5 重启监听器 1.6 修改完毕,使用新端口登录测试 实践步骤: 1.1 查看当前监听的状态 [test@ASI-1 ~]$lsnrctl status 1.2 停止监听 [test@ASI-1~]$lsnrctl stop LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 11-MAR-2011 16:36:49 Copyright (c) 1991, 2005, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.100)(PORT=1521))) The command completed successfully 1.3修改监听文件的端口号 把端口号修改为1530,分别修改listener.ora和tnsname.ora文件 [test@ASI-1 ~]$ cd/usr/opt/oracle/product/10.2.0/db_1/network/admin/ [test@ASI-1 admin]$

Tomcat建立多个应用(Web Server)、多个主机、多个站点的方法

心已入冬 提交于 2020-02-28 15:42:59
当你使用Tomcat作为Web Server的时候,是不是会想过这样的一个问题:如何利用Tomcat建立多个Web应用 呢? 要实现这一点是很简单的,也有多种方法.(以下说明使用%tomcat_home%代表Tomcat安装目录). 一.首先介绍一下Tomcat及server.xml Tomcat服务器是由一系列的可配置的组件构成,tomcat的组件可以在%tomcat_home%/conf/server.xml文件中进行配置,每个Tomcat组件和server.xml文件的一种配置元素对应. 主要分为4类: 1.顶层类元素:包括和,他们位于整个配置文件的顶层. 元素代表整个Catalina Servlet 容器,由org.apache.catalin.Server接口定义.包含一个或多个元素. 元素由org.apache.catalin.Service 接口定义.包含一个元素,及一个或多个元素.多个元素共享一个元素. 2.连接器类元素 连接器类代表了介于客户与服务之间的通信接口,负责将客户的请求发送给服务器,并将服务器的响应结果传递给客户. 元素由org.apache.catalin.Connector 接口定义.代表了与客户程序实际交互的组件,它负责接收客户请求,以及向客户返回响应结果. 3.容器类元素 容器类元素代表处理客户请求并生成响应的组件.包括 和. 元素由org

SSH隧道与端口转发及内网穿透

*爱你&永不变心* 提交于 2020-02-28 14:32:18
SSH隧道与端口转发及内网穿透 大家都知道SSH是一种安全的传输协议,用在连接服务器上比较多。不过其实除了这个功能,它的隧道转发功能更是吸引人。下面是个人根据自己的需求以及在网上查找的资料配合自己的实际操作所得到的一些心得。 SSH/plink命令的基本资料: 首先,认识下这三个非常强大的命令: ssh -C -f -N -g -L listen_port:DST_Host:DST_port user@Tunnel_Host ssh -C -f -N -g -R listen_port:DST_Host:DST_port user@Tunnel_Host ssh -C -f -N -g -D listen_port user@Tunnel_Host 相关参数的解释: -f Fork into background after authentication. 后台认证用户/密码,通常和-N连用,不用登录到远程主机。 -L port:host:hostport 将本地机(客户机)的某个端口转发到远端指定机器的指定端口. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 同时远程主机和 host 的 hostport 端口建立连接. 可以在配置文件中指定端口的转发. 只有 root 才能转发特权端口.

Mysql 权限方案

女生的网名这么多〃 提交于 2020-02-28 09:51:01
Mysql 权限方案 账户管理 类型 是否支持创建 支持授权类型 说明 root 账户 是 普通账户 是 - 表级权限 - 库级权限 - 实例级权限 Grant 权限 - GRANT SELECT ON shicai3 . a TO shicai3 @ % WITH GRANT OPTION - GRANT SELECT ON shicai1 .* TO shicai3 @ % WITH GRANT OPTION - GRANT SELECT ON *.* TO shicai3 @ % WITH GRANT OPTION 注:当一个用户同时获得实例级权限 + grant 权限,该用户实际升级为 root 元数据表 1. mysql.user 作用 用户信息,如:用户名,密码 实例级权限信息 定义 CREATE TABLE ` user ` ( ` Host ` char ( 60 ) COLLATE utf8_bin NOT NULL DEFAULT '' , ` User ` char ( 32 ) COLLATE utf8_bin NOT NULL DEFAULT '' , ` Select_priv ` enum ( 'N' , 'Y' ) CHARACTER SET utf8 NOT NULL DEFAULT 'N' , ` Insert_priv ` enum ( 'N'

CASSINI源代码分析

北战南征 提交于 2020-02-28 08:56:28
CASSINI 源代码分析 2004-11-10 http://blog.csdn.net/shanhe/ 为什么要分析 CASSINI? Cassini (卡西尼)是 asp.net 上的一个开源项目。主要给出一个脱离 IIS 实现 asp.net 执行环境。项目演示了如何自己创建一个 web server ,并且运行一个 asp.net 应用程序。 研究 Cassini 可以了解: 1 、 .net 环境下的 web server 如何实现,注意那些问题 2 、 asp.net 的执行本质 3 、了解 appDomain 的执行概念 安装 没有什么问题,默认即可 运行 出现问题,主要是我的 .net framework 是 1.0.3705 而 系统下载的经过编译的 cassini.dll 是在 v1.1.4322 下编译,更麻烦的是经过签名的。所以启动时候回提示找不到 v1.1.4322 的 framework 而我的目标是想分析这个程序,该如何进行? 既然获得了整个源代码,我就应该从理论上熟悉并且可以掌握整个系统,我建立一个工程,将全部 .cs 文件和资源文件加入到一个项目,同时删除原有项目默认的 form1 ,因为 CassiniWebServer.cs 已经有一个 main 入口。 调试,解决问题 1、 编译 OK ,但是,无法启动,原来缺少 .ico 文件

本地回环地址含义与作用

戏子无情 提交于 2020-02-28 07:37:07
本地回环地址 本地回环地址127.0.0.1指的是本机地址,不会跟着网络情况的变化而变化。它代表设备的本地虚拟接口,所以默认被看作是永远不会宕掉的接口。(实际上:127.0.0.1 —> 127.255.255.254(去掉0和255) 的范围都是本地回环地址) 作用 1.测试本机的网络配置 能PING通127.0.0.1说明本机的IP协议安装没有问题。 2.代替localhost 在操作系统中有个配置文件(windows中路径为C:\windows\system32\drivers\etc\hosts,Unix/Linux路径为/etc/hosts)将localhost与127.0.0.1绑定在了一起。 来源: CSDN 作者: 虎与狼 链接: https://blog.csdn.net/u013452990/article/details/104535861

ORACLE10g R2【RAC+ASM→RAC+ASM】

让人想犯罪 __ 提交于 2020-02-28 04:56:55
ORACLE10g R2【RAC+ASM→RAC+ASM】 本演示案例所用环境:RAC+ASM+OMF primary standby OS Hostname node1,node2 dgnode1,dgnode2 OS Version RHEL5.8 RHEL5.8 DB Version 10.2.0.5 10.2.0.5 db_name stephen stephen db_unique_name stephen standby service_names stephen standby instance_name stephen1,stephen2 standby1,standby2 Primary database configure 1.启用primary force logging SQL> select force_logging from v$database; SQL> alter database force logging; 2.配置redo传输认证 (1) tnsnames.ora STEPHEN = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = node1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = node2-vip)(PORT =

PCS集群的一些命令总结!非常好!

亡梦爱人 提交于 2020-02-27 23:40:51
https://blog.csdn.net/hhhh2012/article/details/48313909 使用pcs shell配置corosync & pacemaker群集 Pacemaker Pacemaker,即Cluster Resource Manager(CRM),管理整个HA,客户端通过pacemaker管理监控整个集群。 CRM支持ocf和lsb两种资源类型: ocf格式的启动脚本在/usr/lib/ocf/resource.d/下面。 lsb的脚本一般在/etc/rc.d/init.d/下面。 1、常用的集群管理工具: (1)基于命令行 crm shell/pcs (2)基于图形化 pygui/hawk/lcmc/pcs 2、相关的资源文件: (1)/usr/lib/ocf/resource.d,pacemaker资源库文件位置,可安装资源包:resource-agents 获取更多ocf格式的资源。 (2)/usr/sbin/fence_***,Fencing设备的执行脚本名称,可安装资源包:fence-agents 获取更多Fencing设备资源。 3、查看使用说明: [shell]# man ocf heartbeat ## 查看OCF资源说明,man ocf_heartbeat apache [shell]# man fence ##

nginx的请求接收流程(二)

一世执手 提交于 2020-02-27 20:49:12
在ngx_http_process_request_line函数中,解析完请求行之后,如果请求行的uri里面包含了域名部分,则将其保持在请求结构的headers_in成员的server字段,headers_in用来保存所有请求头,它的类型为ngx_http_headers_in_t: [cpp] view plain copy <span style= "font-size: 18px; "> typedef struct { ngx_list_t headers; ngx_table_elt_t *host; ngx_table_elt_t *connection; ngx_table_elt_t *if_modified_since; ngx_table_elt_t *if_unmodified_since; ngx_table_elt_t *user_agent; ngx_table_elt_t *referer; ngx_table_elt_t *content_length; ngx_table_elt_t *content_type; ngx_table_elt_t *range; ngx_table_elt_t *if_range; ngx_table_elt_t *transfer_encoding; ngx_table_elt_t *expect; #if