master

tkinter IntVar() BooleanVar() var.get()

北城余情 提交于 2019-12-27 04:12:55
from tkinter import * master = Tk() def var_states(): print((var1.get(),var2.get())) Label(master, text='Your sex:').grid(row=0,sticky=W) var1 = BooleanVar() Checkbutton(master, text='male', variable=var1).grid(row=1,sticky=W) var2 = IntVar() Checkbutton(master,text='female',variable=var2).grid(row=2,sticky=W) Button(master,text='Quit',command=master.quit).grid(row=3,sticky=W,pady=4) Button(master,text='Show',command=var_states).grid(row=4,sticky=W,pady=4) mainloop() male打勾,female不勾 结果: (True, 1) 如果直接 var1=IntVar() print((var1,var2.get())) 结果:(<tkinter.IntVar object at 0x000001FBB7490358>, 0)

mysql主从同步搭建

别来无恙 提交于 2019-12-27 02:07:59
安装mysql yum安装依赖环境 yum -y install gcc gcc-c++ lrzsz ncurses-devel cmake 使用rz命令将mysql-5.5.22.tar.gz分别上传到主从两台虚拟机中 [root@localhost src]# rz 创建运行用户 [root@localhost /usr/local/src]#groupadd mysql [root@localhost /usr/local/src]#useradd -s /sbin/nologin -M -g mysql mysql 配置并编译安装 [root@localhost src]# cd mysql-5.5.22/ [root@localhost mysql-5.5.22]# cmake -DCMAKE_INSTALL_PREFIX=/data/server/mysql -DSYSCONFDIR=/etc/ -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all [root@localhost mysql-5.5.22]# make -j4 && make install 设置数据库目录的权限并建立配置文件 [root@localhost /usr/local/src

nginx负载均衡高可用

笑着哭i 提交于 2019-12-27 01:28:37
1.1 什么是负载均衡高可用 nginx作为负载均衡器,所有请求都到了nginx,可见nginx处于非常重点的位置,如果nginx服务器宕机后端web服务将无法提供服务,影响严重。 为了屏蔽负载均衡服务器的宕机,需要建立一个备份机。主服务器和备份机上都运行高可用(High Availability)监控程序,通过传送诸如“I am alive”这样的信息来监控对方的运行状况。当备份机不能在一定的时间内收到这样的信息时,它就接管主服务器的服务IP并继续提供负载均衡服务;当备份管理器又从主管理器收到“I am alive”这样的信息时,它就释放服务IP地址,这样的主服务器就开始再次提供负载均衡服务。 1.2 keepalived+nginx实现主备 1.2.1 什么是keepalived keepalived是集群管理中保证集群高可用的一个服务软件,用来防止单点故障。 Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器。 1.2.2 keepalived工作原理 keepalived是以VRRP协议为实现基础的

keepalived之vrrp_script详解

放肆的年华 提交于 2019-12-27 01:27:53
1. Nginx负载均衡高可用   首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现web服务端的高可用。 Keepalived以VRRP协议为实现基础,用VRRP协议来实现高可用性(HA).VRRP (Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,VRRP协议将两台或多台路由器设备虚拟成一个设备,对外提供虚拟路由器IP(一个或多个),如下图所示: 这张图的意思是,我们使用keepalived来管理两台设备的Nginx,并虚拟出一个IP,我们现在两台装有Nginx的设备分别是192.168.101.3和192.168.101.4,那么我们可以虚拟出一个192.168.156.xx的IP,外界请求直接访问虚拟IP而不是真正的Nginx,让虚拟IP去访问提供服务的Nginx(注意:高可用是指同一时间提供服务的只有一台设备,提供服务的设备挂掉之后,备份服务器便开始提供服务),然后再由Nginx去访问tomcat。 要实现nginx的高可用,需要实现 备份机 。 我们拿两台虚拟机来搭建nginx高可用环境,这两台设备分别是192.168.101.3(主机名是nginx1)和192.168.101.4

Nginx负载均衡高可用---架构

一曲冷凌霜 提交于 2019-12-27 01:26:16
1. Nginx负载均衡高可用 首先介绍一下Keepalived,它是一个高性能的服务器高可用或热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现web服务端的高可用。 Keepalived以VRRP协议为实现基础,用VRRP协议来实现高可用性(HA).VRRP (Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,VRRP协议将两台或多台路由器设备虚拟成一个设备,对外提供虚拟路由器IP(一个或多个),如下图所示: 这张图的意思是,我们使用keepalived来管理两台设备的Nginx,并虚拟出一个IP,我们现在两台装有Nginx的设备分别是192.168.101.3和192.168.101.4,那么我们可以虚拟出一个192.168.156.xx的IP,外界请求直接访问虚拟IP而不是真正的Nginx,让虚拟IP去访问提供服务的Nginx(注意:高可用是指同一时间提供服务的只有一台设备,提供服务的设备挂掉之后,备份服务器便开始提供服务),然后再由Nginx去访问tomcat。 要实现nginx的高可用,需要实现备份机。 我们拿两台虚拟机来搭建nginx高可用环境,这两台设备分别是192.168.101.3(主机名是nginx1)和192.168.101.4(主机名是nginx2)。

HBase 安装(分布式)

让人想犯罪 __ 提交于 2019-12-26 23:56:01
安装前准备: hadoop已安装(参见我的hadoop安装) Namenode名:master DataNode名:slave01,slave02 本文包括两个部分: zookeeper安装 和 HBase安装 一、安装zookeeper 在安装好分布式hadoop的环境下,继续安装zookeeper-3.4.6。 下载zookeeper-3.4.6 http://www.apache.org/dyn/closer.cgi/zookeeper/ 解压文件 $ tar -zvxf zookeeper-3.4.6.tar.gz mv zookeeper-3.4.6 /usr/zookeeper-3.4.6 改zoo.cfg $ mv zookeeper-3.4.5/conf/zoo_sample.cfg zookeeper-3.4.5/conf/zoo.cfg 修改zookeeper配置文件: $ vi zookeeper-3.4.6/conf/zoo.cfg 做如下修改: tickTime=2000 dataDir=/usr/zookeeper //zookeeper文件的目录 clientPort=2181 initLimit=5 syncLimit=2 server.1=master:2888:3888 server.2=slave01:2888:3888 server.3

搭建mfs分布式文件系统

核能气质少年 提交于 2019-12-26 23:48:21
一、MFS 简介: MooseFS是一个具有容错性的网络分布式文件系统。它把数据分散存放在多个物理服务器上,而呈现给用户的则是一个统一的资源。 (1)优势: 1、高可靠(数据的多个拷贝被存储在不同的计算机上); 2、通过附加新的计算机或者硬盘可以实现容量的动态扩展; 3、删除的文件可以根据一个可配置的时间周期进行保留(一个文件系统级别的回收站); 4、不受访问和写入影响的文件连贯快照。 (2)体系结构: 1、管理服务器(master server): 一台管理整个文件系统的独立主机,存储着每个文件的元数据(文件的大小、属性、位置信息,包括所有非常规文件的所有信息,例如目录、套接字、管道以及设备文件) 2、数据服务器群(chunk servers): 任意数目的商用服务器,用来存储文件数据并在彼此之间同步(如果某个文件有超过一个备份的话) 3、元数据备份服务器(metalogger server): 任意数量的服务器,用来存储元数据变化日志并周期性下载主要元数据文件,以便用于管理服务器意外停止时好接替其位置。 4、访问mfs的客户端: 任意数量的主机,可以通过mfsmount进程与管理服务器(接收和更改元数据)和数据服务器(改变实际文件数据)进行交流。 二、配置Master服务器 1、安装环境包: yum install - y zlib - devel gcc gcc - c+ +

Google File System 学习笔记

[亡魂溺海] 提交于 2019-12-26 22:44:47
GFS翻译: https://www.cnblogs.com/cxxjohnson/p/4984309.html 一、GFS架构: 二、保存文件的方式 1、保存小文件 :磁盘中分块,每个block大小为1024Byte,每个文件的索引由块号+偏置组成 2、保存大文件: 把block换成chunk,每个chunk为64MB. 3、保存超大数据 :把chunk放在不同的chunk服务器上,有一个Master服务器存放所有chunk所在的ChunkServer编号。每个chunkserver保存每个chunk在其中的偏移量。 三、ChunkServer和Master服务器 1、如何发现数据损坏 每一个block都保存32bit校验信息 2、减少ChunkServer挂掉带来的损失 保存额外两个chunk副本 选择硬盘利用率低的但是不能把新的chunk都写在一个硬盘上,避免形成热点 2+1:跨数据中心,在一个数据中心中放在不同的机架上 3、chunkserver损坏的解决方法: 向master报告损坏的数据块 master返回其他副本的chunkserver号 向最近的副本请求受损chunk 4、如何发现chunkserver挂掉 心跳:定时向master报告存活 5、应对热点 四、读文件过程 五、写文件过程 向Master询问chunkserver位置

git 合并分支

筅森魡賤 提交于 2019-12-26 17:15:45
https://www.jianshu.com/p/26d050497abb git合并分支(一看就懂) 江南之城 关注 0.8052018.11.14 10:28:34字数 117阅读 28,264 假如我们现在在dev分支上,刚开发完项目,执行了下列命令: git add . git commit -m '提交的备注信息' git push -u origin dev 想将dev分支合并到master分支,操作如下: 1、首先切换到master分支上 git checkout master 2、如果是多人开发的话 需要把远程master上的代码pull下来 git pull origin master //如果是自己一个开发就没有必要了,为了保险期间还是pull 3、然后我们把dev分支的代码合并到master上 git merge dev 4、然后查看状态及执行提交命令 git status On branch master Your branch is ahead of 'origin/master' by 12 commits. (use "git push" to publish your local commits) nothing to commit, working tree clean //上面的意思就是你有12个commit,需要push到远程master上

Centos下安装Hbase

血红的双手。 提交于 2019-12-26 15:33:10
安装 HBase 下载安装 下载解压 Hbase 安装包并移到 /usr/share/hbase 解压命令:tar -zxvf + 安装包 配置 在 hhbase-env.sh 中指定 JDK的安装位置 ex port JAVA_HOME=… 在hbase-site.xml中添加配置项 <property> <name>hbase.rootdir</name> <value>hdfs://master:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>master,slave1,slave2</value> //只能为三个 </property> 在 regionservers中修改为根节点和子节点的数目 master slave1 slave2 配置环境变量 #HBase export HBASE_HOME=/usr/share/hbase export PATH=$PATH:$HBASE_HOME/bin (注意)使用 source 进行刷新配置信息 将 Hbase分发到各个节点 scp… 启动