首页 文章 精选 留言 我的

精选列表

搜索[linux],共10000篇文章
优秀的个人博客,低调大师

linux内核中的服务器模式

广义上讲,内核本身就是一个服务器,为所有的用户模式进程提供服务,但是狭义上讲只有在真的有请求的时候内核采取的对策才叫做服务,比如注册-执行模式下的time以及hrtimer等等,用户空间的程序或者内核空间的执行绪可以随意注册一个timer之后就不管了,timer到期以后内核会执行之,这就相当于timer的创建者请求了内核的一项服务,就是执行timer,不光是这个,在内核中处处都是服务执行者,比如工作队列,软中断...我们可以看到的是,所有这些几乎都是使用一个全局的链表,服务的请求者创建请求之后只需要将请求插入这个全局的链表就可以了,而内核执行的方式往往是串行的执行,也就是遍历链表的请求,一个接一个的执行,这个服务方式和用户空间的大大不同。 在用户空间中,服务器的架构方式多种多样,比如多线程,多进程,消息映射等等,为何在内核不用这些方式呢?首先看一下用户空间的这些方式的机制是谁提供的,正是内核本身,内核是什么,现代的内核就是提供多个多线程的用户上下文,然而谁为内核提供这些机制呢?除非有了专有的硬件,这只是其一,另外,内核的原则就是怎样效率高就怎样,其实内核中也是可以创建线程的,比如内核线程,但是对一些小的请求创建一个线程将是一笔很大的开销,并且没有人为之买单,用户空间的每请求一线程的服务方式可以让内核进行优化,如果该操作系统实在不适合每请求一线程那么可以尝试使用多进程模型,apache的mpm就是这么做的,但是在内核中有必要搞得这么花哨吗?硬件几乎不会用不同的策略来适应软件,因此一切都要内核自己来权衡。在用户空间,并发量是不确定的,负载也不确定,确定的是峰值,比如再好的PC也不适合单独做web服务器,这是因为有系统内核和硬件在下面兜着呢,到了内核,一切变得没有了底线,如果谁触底了,那么这个系统内核将被淘汰,这样的情况对于硬件也是显然的,应用程序可以设计出自己独特的架构以适应需求,往往操作系统内核可以以不同的方式去提供这种支撑,如果内核本身也设计出了独特的架构,硬件往往不会委屈自己去适应内核,毕竟内核也是一个服务者,一切都要听应用的,顾客就是上帝,应用程序是终极顾客,虽然内核相对于硬件也是顾客,但是这个顾客的权力被应用程序削弱了很多。 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1273353

优秀的个人博客,低调大师

Linux网站架构系列之Mysql—-部署篇

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。本篇将为大家讲解mysql的简单部署。 mysql的分为四个版本: Alpha版:一般只在软件开发公司内部运行,不对外公开。 Beta版:完全功能的开发和所有的测试工作之后的产品,不会存在较大的漏洞BUG,并且邀请和提供给用户体验与测试,以便更全面地测试软件的不足之处或存在的问题。 RC版:属于生产环节发布之前的一个小版本或称候选版本,是测试beta版本二收集到BUG或不足之处,根据手机到的信息而进行修复和完善之后的产品 GA版:软件产品正式发布的版本,也成生产版本的产品 并且mysql为了更好发展将版本路线分为了三条。 从5.0版本升级到5.1的系列版本,继续完善与改进其用户体验和性能。同时增加新功能。 为了更好的整合mysqlab公司,社区和新功能。版本编号从5.4开始,目前发展到5.6 为了更好推广mysqlcluster版本,从6.0版本开始,目前发展到7.3版本 由于mysql不用产品线之间的编译安装方法还是有差别,因此本篇将分别为大家讲解mysql的5.1.7版本和5.6.13版本的简单部署。 5.1.7版本 环境 CentOS6.4x86_64位采用最小化安装,系统经过了基本优化 selinux为关闭状态,iptables为无限制模式 ip:192.168.0.157/24 mysql版本:mysql-5.1.70 源码包存放位置:/server/tools 源码包编译安装位置:/etc/local/软件名称 数据库存放位置:/mydata 一、准备工作 1、开发环境部署 [root@c64web~]#yumgroupinstall"Developmenttools""ServerPlatformDevelopment"-y#安装这两个开发环境的软件包组 [root@c64-web~]#yuminstallpcre*-y#安装pcre兼容的正则表达式 2、创建用户及目录 [root@c64-web~]#useradd-s/sbin/nologin-Mmysql#创建mysql用户,并加入mysql组,不创建家目录,关闭登陆 [root@c64-web~]#mkdir/mydata#创建数据库存放目录 [root@c64-web~]#chown-Rmysql.mysql/mydata 3、下载源码包 [root@c64-web~]#cd/server/tools [root@c64-webtools]#wgethttp://mysql.ntu.edu.tw/Downloads/MySQL-5.1/mysql-5.1.70.tar.gz 二、编译安装 准备工作已经做好了,现在我们就开始编译安装mysql。 [root@c64-webtools]#tarzxfmysql-5.1.70.tar.gz [root@c64-webtools]#cdmysql-5.1.70 [root@c64-webmysql-5.1.70]#./configure\ --prefix=/usr/local/mysql\#设定mysql安装路径,默认为/usr/local --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock\#指定Mysqlsocket文件存放目录 --localstatedir=/mydata\#设定mysql的数据文件存放位置 --enable-assembler\#允许使用汇编模式(优化性能) --enable-thread-safe-client\#以线程方式编译客户端 --with-mysqld-user=mysql\#指定MySQL运行的系统用户 --with-big-tables\#启用大表支持 --without-debug\#使用非debug模式 --with-pthread\#强制使用pthread线程序库编译 --with-extra-charsets=complex\#复杂字符集支持 --with-readline\#使用系统readline代替捆绑副本。 --with-ssl\#启用ssl加密 --with-embedded-server\#构建嵌入式MySQL库(libmysqld.a) --enable-local-infile\#让mysql支持从本地加载数据库(默认关闭) --with-plugins=partition#mysql分区功能支持 --with-plugins=innobase\#innobas存储引擎支持 --with-mysqld-ldflags=-all-static\#服务器使用静态库(优化性能) --with-client-ldflags=-all-static#客户端使用静态库(优化性能) [root@c64-webmysql-5.1.70]#make&&makeinstall 执行了上面的操作之后,mysql-5.1.7版本就编译安装成功了。 下面为快速复制,编译配置文本: [root@c64-web mysql-5.1.70]#./configure --prefix=/usr/local/mysql-5.1.70--with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock --localstatedir=/mydata --enable-assembler--enable-thread-safe-client --with-mysqld-user=mysql --with-big-tables --without-debug--with-pthread --with-extra-charsets=complex --with-readline --with-ssl--with-embedded-server --enable-local-infile--with-plugins=partition--with-plugins=innobase --with-mysqld-ldflags=-all-static--with-client-ldflags=-all-static 1、创建目录软链接 mysql安装完成之后,我们要先为编译安装好的目录添加软链接。此操作在生产环境中为重要调优参数,添加这条软链接的目的有两点:1、方便人类使用。2、便于以后升级版本。 [root@c64-webmysql-5.1.70]#cd/root [root@c64-web~]#ln-s/usr/local/mysql-5.1.70/usr/local/mysql 2、创建其它相应目录及权限设置 [root@c64-web~]#mkdir/mydata#建立mysql数据文件目录 [root@c64-web~]#chown-Rmysql/mydata#授权mysql用户访问mysql数据库目录 3、获取Mysql主配置文件并修改 由于mysql的主配置文件,编译安装之后默认是没有的。因此我们需要在mysql的编译包中,选择预支的*.cnf结尾的配置文件将其复制到我们的/etc/目录下。 [root@c64-web~]#ll/server/tools/mysql-5.1.70/support-files/*.cnf -rw-r--r--1rootroot471411月602:25/server/tools/mysql-5.1.70/support-files/my-huge.cnf -rw-r--r--1rootroot1976311月602:25/server/tools/mysql-5.1.70/support-files/my-innodb-heavy-4G.cnf -rw-r--r--1rootroot468811月602:25/server/tools/mysql-5.1.70/support-files/my-large.cnf -rw-r--r--1rootroot469911月602:25/server/tools/mysql-5.1.70/support-files/my-medium.cnf -rw-r--r--1rootroot246711月602:25/server/tools/mysql-5.1.70/support-files/my-small.cnf#中小型公司用这个即可 [root@c64-webmysql-5.1.70]#/bin/cp/server/tools/mysql-5.1.70/support-files/my-small.cnf/etc/my.cnf 修改mysql的主配置文件/etc/my.cnf,添加如下1行 datadir=/mydata#我们自定义的数据库存放目录 4、让系统识别源码包安装的软件 a)将mysql的库文件路径加入系统的库文件搜索路径中 方法一:直接做软链接 [root@c64-web~]#ln-s/usr/local/mysql/lib/mysql /usr/lib/mysql 方法二:利用ldconfig导入系统库(推荐) [root@c64web~]#echo"/usr/local/mysql/lib">>/etc/ld.so.conf.d/mysql.conf [root@c64-web~]#ldconfig b)输出mysql的头文件到系统头文件 [root@c64web~]#ln– s/usr/local/mysql/include/mysql/usr/include/mysql c)配置mysql命令全局使用路径 [root@c64web~]#echo"PATH=/usr/local/mysql/bin:$PATH">>/etc/profile [root@c64-web~]#source/etc/profil 5、以mysql用户的身份初始化数据库并启动 [root@c64-web~]#/usr/local/mysql/bin/mysql_install_db--basedir=/usr/local/mysql--datadir=/mydata--user=mysql#初始化mysql数据库文件 WARNING:Thehost'c64-web'couldnotbelookedupwithresolveip. Thisprobablymeansthatyourlibclibrariesarenot100%compatible withthisbinaryMySQLversion.TheMySQLdaemon,mysqld,shouldwork normallywiththeexceptionthathostnameresolvingwillnotwork. ThismeansthatyoushoulduseIPaddressesinsteadofhostnames whenspecifyingMySQLprivileges!#此警告我们可以通过在/etc/hosts文件中修改127.0.0.1后面的localhost为当前c64-web来消除。 InstallingMySQLsystemtables... 13110818:07:26[Warning]'--skip-locking'isdeprecatedandwillberemovedinafuturerelease.Pleaseuse'--skip-external-locking'instead.#这里的警告无需理会 OK Fillinghelptables... 13110818:07:27[Warning]'--skip-locking'isdeprecatedandwillberemovedinafuturerelease.Pleaseuse'--skip-external-locking'instead.#这里的警告无需理会 OK Tostartmysqldatboottimeyouhavetocopy support-files/mysql.servertotherightplaceforyoursystem #这里是说,你可以创建快速启动脚本,我们下面会提到 PLEASEREMEMBERTOSETAPASSWORDFORTHEMySQLrootUSER! Todoso,starttheserver,thenissuethefollowingcommands: /usr/local/mysql/bin/mysqladmin-urootpassword'new-password' /usr/local/mysql/bin/mysqladmin-uroot-hlhhpassword'new-password' #教你如何创建root用户进入mysql数据库的密码 Alternativelyyoucanrun: /usr/local/mysql/bin/mysql_secure_installation whichwillalsogiveyoutheoptionofremovingthetest databasesandanonymoususercreatedbydefault.Thisis stronglyrecommendedforproductionservers. Seethemanualformoreinstructions. YoucanstarttheMySQLdaemonwith: cd/usr/local/mysql;/usr/local/mysql/bin/mysqld_safe& #上面的即为开启命令中的一种,后面的&为放入后台执行的意思 YoucantesttheMySQLdaemonwithmysql-test-run.pl cd/usr/local/mysql/mysql-test;perlmysql-test-run.pl #这里是给你说如何执行测试 Pleasereportanyproblemswiththe/usr/local/mysql/scripts/mysqlbugscript! #以上为初始化创建mysql数据库文件时产生的信息。 [root@lhhmydata]#cd/usr/local/mysql;/usr/local/mysql/bin/mysqld_safe& [1]7146 13110818:50:37mysqld_safeLoggingto'/mydata/lhh.err'. 13110818:50:37mysqld_safeStartingmysqlddaemonwithdatabasesfrom/mydata#此处需要敲击回车才能回到命令输入界面。 mysql数据库启动的另外一种方法 [root@c64-web~]#/bin/cp/server/tools/mysql-5.1.70/support-files/mysql.server/etc/init.d/mysqld#拷贝mysql启动脚本mysql命令路径 [root@c64-web~]#chmod700/etc/init.d/mysqld#使脚本可执行 [root@c64-web~]#/etc/init.d/mysqldstart#这是启动数据库方法之一 [root@c64-web~]#/etc/init.d/mysqldstop#关闭数据库的方法 [root@c64-web~]#killalllmysqld#关闭数据库的另外一种方法 6、检查mysql数据库是否启动: [root@c64-web~]#netstat-lnt|grep3306 tcp000.0.0.0:33060.0.0.0:*LISTEN 可以看到,我们的mysql服务已经启动起来了。这里如果发现3306端口没起来,请tail -100 /usr/local/mysql/data/机器名.err检查日志报错进行调试。 7、设置初始账户,并登陆后台 在上面,初始化创建mysql数据库的时候,已经给我们提到了如何给mysql数据库账号设置密码,下面我们就进行操作。 [root@c64-web~]#mysqladmin-urootpassword123456#设置密码 [root@c64-web~]#history-c#设置之后注意清除历史记录,防止密码泄露 [root@c64-web~]#mysql-uroot-p#连接数据库查看 Enterpassword:#这里输入刚才设置的密码 WelcometotheMySQLmonitor.Commandsendwith;or\g. YourMySQLconnectionidis2 Serverversion:5.1.70Sourcedistribution Copyright(c)2000,2013,Oracleand/oritsaffiliates.Allrightsreserved. OracleisaregisteredtrademarkofOracleCorporationand/orits affiliates.Othernamesmaybetrademarksoftheirrespective owners. Type'help;'or'\h'forhelp.Type'\c'toclearthecurrentinputstatement. mysql>showdatabases;#查看现有的数据库 +--------------------+ |Database| +--------------------+ |information_schema| |mysql| |test| +--------------------+ 3rowsinset(0.00sec) mysql>selectuser();#查看现有用户 +----------------+ |user()| +----------------+ |root@localhost| +----------------+ 1rowinset(0.00sec) mysql>quit#退出 Bye 到此,我们mysql-5.1.17的部署就已经完成了,下面将是5.6.13的部署。 5.6.13版本 mysql的第二条产品线和第一条产品线的产品主要在数据存储引擎和编译安装的方法上有点区别,因此这里我就主要对编译安装的部分进行讲解,其它地方都是大同小异的。 mysql-5.6.13源码包下载地址:http://mysql.ntu.edu.tw/Downloads/MySQL-5.6/mysql-5.6.13.tar.gz 一、更改编译配置工具为cmake 注意下面mysql-5.6.x系列版本在编译配置时,放弃了用./configure,进而使用到了cmake,因此我们需要先安装cmake这个工具,下面才能执行编译配置。 二、编译参数更改 mysql-5.6.x系列版本综合性的编译参数详解: [root@c64-webmysql-5.6.13]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql\#指定mysql安装目录 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock\#Unixsocket文件路径,自定义此路径防报错 -DDEFAULT_CHARSET=gbk\#默认字符 -DDEFAULT_COLLATION=gbk_chinese_ci\#校验字符 -DEXTRA_CHARSETS=all\#安装所有扩展字符集 -DWITH_MYISAM_STORAGE_ENGINE=1\#安装myisam存储引擎 -DWITH_INNOBASE_STORAGE_ENGINE=1\#安装innodb存储引擎 -DWITH_ARCHIVE_STORAGE_ENGINE=1\#安装archive存储引擎 -DWITH_BLACKHOLE_STORAGE_ENGINE=1\#安装blackhole存储引擎 -DWITH_MEMORY_STORAGE_ENGINE=1\#安装memory存储引擎 -DWITH_FEDERATED_STORAGE_ENGINE=1#安装frderated存储引擎 -DWITH_READLINE=1\#快捷键功能 -DENABLED_LOCAL_INFILE=1\#允许从本地导入数据 -DMYSQL_DATADIR=/usr/local/mysql/data\#数据库存放目录 -DMYSQL_USER=mysql\#数据库属主 -DMYSQL_TCP_PORT=3306\#数据库端口 -DSYSCONFDIR=/etc\#MySQL配辑文件 -DWITH_SSL=yes#数据库SSL 下面为快捷复制执行命令: [root@c64-web mysql-5.6.13]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_chinese_ci -DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/mydata -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DSYSCONFDIR=/etc -DWITH_SSL=yes 执行之后,还是用make&&make install来执行编译安装。 三、主配置文件调整 在5.6.X系列的版本中,mysql的主配置文件发生了变化。可以看到,mysql-5.6.13版本中取消了原来的my-huge.cnf,my-large.cnf,my-small.cnf模版,同时取而代之是my.cnf或者是my-default.cnf一个配置模板。 [root@c64-webmysql-5.6.13]#ll/server/tools/mysql-5.6.13/support-files/*.cnf -rw-r--r--.1rootroot1126Nov801:37/server/tools/mysql-5.6.13/support-files/my-default.cnf [root@c64-webmysql-5.6.13]#/bin/cp/server/tools/mysql-5.6.13/support-files/my-default.cnf/etc/my.cnf 并且,模板文件里需要配置的地方很少。这是因为mysql-5.6.x系列将以前许多默认值设置不合理的参数都进行了调整,并且采用了一种out-of-box的思维,即有些值是固定的,有些值是启动时,根据其他参数或者服务器的配置来自动设置的,所以不需要初始指定很多值。 本文转自 baishuchao 51CTO博客,原文链接:http://blog.51cto.com/baishuchao/1927579

优秀的个人博客,低调大师

解决linux下网络丢包问题处理

最近业务上老有问题,查看发现overruns值不断增加,学习了一下相关的知识。 发现数值也在不停的增加。G 了一下,发现这些 errors, dropped, overruns 表示的含义还不大一样。 eth2 Link encap:Ethernet HWaddr 00:8C:FA:F1:DA:78 inet addr:10.249.2.112 Bcast:10.249.2.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:26191508237 errors:0 dropped:0 overruns:45732243 frame:0 TX packets:20141298524 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:4684832167216 (4.2 TiB) TX bytes:4670328443919 (4.2 TiB) Memory:c7200000-c7280000 RX errors: 表示总的收包的错误数量,这包括 too-long-frames 错误,Ring Buffer 溢出错误,crc 校验错误,帧同步错误,fifo overruns 以及 missed pkg 等等。 RX dropped: 表示数据包已经进入了 Ring Buffer,但是由于内存不够等系统原因,导致在拷贝到内存的过程中被丢弃。 RX overruns: 表示了 fifo 的 overruns,这是由于 Ring Buffer(aka Driver Queue) 传输的 IO 大于 kernel 能够处理的 IO 导致的,而 Ring Buffer 则是指在发起 IRQ 请求之前的那块 buffer。很明显,overruns 的增大意味着数据包没到 Ring Buffer 就被网卡物理层给丢弃了,而 CPU 无法即使的处理中断是造成 Ring Buffer 满的原因之一,上面那台有问题的机器就是因为 interruprs 分布的不均匀(都压在 core0),没有做 affinity 而造成的丢包。 RX frame: 表示 misaligned 的 frames。 1、先查看硬件情况 一台机器经常收到丢包的报警,先看看最底层的有没有问题: # ethtool eth2 | egrep 'Speed|Duplex' Speed: 1000Mb/s Duplex: Full # ethtool -S eth2 | grep crc rx_crc_errors: 0 Speed, Duplex, CRC 之类的都没问题,基本可以排除物理层面的干扰。 2、通过 ifconfig 可以看到 overruns 字段在不停的增大: for i in `seq 1 100`; do ifconfig eth2 | grep RX | grep overruns; sleep 1; done 这里一直增加 RX packets:26191785302 errors:0 dropped:0 overruns:45732243 frame:0 3、查看buffer大小 找了一些国外的文章,可以通过ethtool来修改网卡的buffer size ,首先要网卡支持,我的服务器是是INTEL 的1000M网卡,我们看看ethtool说明 -g –show-ringQueries the specified ethernet device for rx/tx ring parameter information. -G –set-ringChanges the rx/tx ring parameters of the specified ethernet device. 查看当前网卡的buffer size情况ethtool -g eth0 Ring parameters for eth0: Pre-set maximums: RX: 4096RX Mini: 0 RX Jumbo: 0 TX: 4096 Current hardware settings: RX: 256 RX Mini: 0 RX Jumbo: 0 TX: 256 4、修改buffer size大小 ethtool -G eth2 rx 2048 ethtool -G eth2 tx 2048 查看丢包 [root@appserver1 network-scripts]# cat /proc/net/dev | column -t Inter-| Receive | Transmit face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed lo:1697064305645 4937104295 0 0 0 0 0 0 1697064305645 4937104295 0 0 0 0 0 0 eth0:72829268758 343814516 0 21338 0 0 0 9764241 74743576507 418943369 0 0 0 0 0 0 eth1:5826509023 48719872 0 0 0 0 0 11358883 127451707 1107964 0 0 0 0 0 0 eth2:4684766978372 26191366713 0 0 45732243 0 0 278436828 4670300836866 20141168183 0 0 0 0 0 0 eth3: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 bond0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 [root@appserver1 network-scripts]# netstat -i | column -t Kernel Interface table Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg eth2 1500 0 26191244868 0 0 45732243 20141056331 0 0 0 BMRU lo 16436 0 4937053994 0 0 0 4937053994 0 0 0 LRU 问题:接受队列溢出产生错误,当抵达的包多于内核可以处理的包时,计算机会产生漫溢(overruns)。输入队列达到其上限(max_backlog)时,多抵达的那些包会全部被丢弃掉。

优秀的个人博客,低调大师

Linux的企业-Hadoop的多节点配置

一.配置环境 redhat6.5 server1 172.25.29.1 hadoop master nfs server2 172.25.29.2 nfs server3 172.25.29.3 nfs server4 172.25.29.4 nfs server5 172.25.29.5 高可用备机 nfs 使用 nfs 共享同步配置文件 二.Hadoop单点配置 1.安装hadoop和jdk 使用hadoop用户运行 2.配置hadoop在java上的运行环境 3.算法模块测试 output生成的数据 4.配置单点hadoop 5.给hadoop设置用户密码,设置主机之间免密 6.设置储存节点为1个 7.格式化hdfs 8.启动hadoop 9.设置查看进程的java的命令jps的运行路径 10.查看节点运行状态,测试 11.以文本模式查看结果 创建目录 四.多节点hadoop配置 使用 nfs 共享同步配置文件 1.server1配置nfs服务 2.在server2至server5安装nfs,并新建hadoop用户,并启动rpcbind 3.建立主机之间免密 4.hadoop集群配置 5.格式化hdfs 6.启动hadoop集群 查看节点2,3和状态 7.登陆web 172.25.29.1:50070 8.启动集群管理资源模块 本文转自一百个小排 51CTO博客,原文链接:http://blog.51cto.com/anfishr/1975948,如需转载请自行联系原作者

优秀的个人博客,低调大师

linux安装lrzsz实现上传下载

lrzsz官网 https://ohse.de/uwe/software/lrzsz.html 下载 lrzsz-0.12.20.tar.gz 上传到/usr/local目录下 tar zxvf lrzsz-0.12.20.tar.gz 进入到lrzsz-0.12.20目录 配置安装路径 ./configure --prefix=/usr/local/lrzsz 编译 make 安装 make install 上面安装过程安装到在 /usr/local/lrzsz 路径下,但是不能使用,下面创建软链接,并命名为rz/sz cd /usr/bin ln -s /usr/local/lrzsz/bin/lrz rz ln -s /usr/local/lrzsz/bin/lsz sz (如果/usr/bin下已存在,删除,一般情况下刚买的ECS实例是没有的) 执行上传 rz 执行下载 sz filename 邮箱:ithelei@sina.cn GoodLuck

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册