首页 文章 精选 留言 我的

精选列表

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

云服务器 ECS 搭建WordPress网站:备案

备案 对于域名指向中国境内服务器的网站,必须进行网站备案。在域名获得备案号之前,网站是无法开通使用的。 阿里云有代备案系统,方便您进行备案。备案免费,一般审核时间为20天左右。请您耐心等待。 注意:目前只有 包年包月 的 ECS 可以备案。 操作步骤 1.首先给购买的ECS实例申请备案服务号。这个服务号在备案时会用到。打开 备案管理>备案服务号申请,然后单击申请。 2.在弹出的提示信息对话框中,单击确定。 3.申请成功后,页面自动跳转到备案服务号管理页面,显示与 ECS 实例绑定的备案号。然后单击备案专区,了解备案相关信息。 4.首次备案的用户,请使用阿里云账号登录备案入口 http://beian.aliyun.com 开始备案。 关于首次备案的详细步骤,请参考 首次备案图文引导。 下一步 配置域名解析原文链接

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

hadoop 2.7.3 集群搭建遇到问题以及解决

系统安装相关 center os安装到系统中需要用软碟通制作一个启动盘,先选择一个镜像,然在在启动菜单选择写入硬盘 出现错误 center os 7 starting timeout报了一长溜后出现dev/root dosnot exist 这是没有找到镜像文件,在报错界面cd dev,可以看到挂载的设备,有几十个,sd开头的是存储相关。我这边出现的是sda sda4 sdb。重启,在选择安装界面按e进入编辑,将vmlinuz initrd=initrd.imginst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet 改为:vmlinuz initrd=initrd.imginst.stage2=hd:/dev/sda quiet 即可,然后按ctrl+x安装如果没成功改为sdb sda4总有一个会让你成功 SSH相关 1. 明明SSH已经配置值成功了,为什么start-all.sh的时候还要输入s2的密码 s3的密码? 答:ssh设置的是给hadoop用户配置的,需要su hadoop 切换到hadoop用户下再执行start-all.sh 2. ssh没有配置成功如何重新开始配置 答:先将用户切换到hadoop然后打开~/.ssh目录,将目录下的所有文件都删除(三个节点都这么做),弄完后执行ssh localhost初始化ssh hadoop相关 start-all.sh报错:ssh: Could not resolve hostname master: Temporary failure in name resolution答:请确保各配置文件里的三台机器的host名没有填错,包括/etc/hosts core-site.xml hdfs-site.xml mapred-site.xml 这几个文件都要排查 DataNode节点没有起来,查看日志发现是/user/hadoop/dfs/data 文件路径不存在答:请确保hdfs-site.xml里面的name为dfs.datanode.data.dir所对应的value路径目录文件夹已创建 DataNode节点没有起来,查看节点日志文件发现是对该文件夹没有权限,无法操作答:chown -R hadoop:hadoop /usr/hadoop 给三个节点的改目录赋该权限给hadoop群组的hadoop用户 Cannot create file/business1/2017-08-02/15/.logs.1501660021526.tmp. Name node is in safe mode.答:表示目前是安全模式,值要退出安全模式就可以了hadoop dfsadmin -safemode leave DataXceiver error processing WRITE_BLOCK operation 2017-08-03 01:27:55,667 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: s3:50010:DataXceiver error processing WRITE_BLOCK operation src: /192.168.1.113:47061 dst: /192.168.1.113:50010 java.io.InterruptedIOException: Interrupted while waiting for IO on channel java.nio.channels.SocketChannel[connected local=/192.168.1.113:50010 remote=/192.168.1.113:47061]. 60000 millis timeout left. at org.apache.hadoop.net.SocketIOWithTimeout$SelectorPool.select(SocketIOWithTimeout.java:342) at org.apache.hadoop.net.SocketIOWithTimeout.doIO(SocketIOWithTimeout.java:157) at org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:161) at org.apache.hadoop.net.SocketInputStream.read(SocketInputStream.java:131) at java.io.BufferedInputStream.fill(BufferedInputStream.java:246) at java.io.BufferedInputStream.read1(BufferedInputStream.java:286) at java.io.BufferedInputStream.read(BufferedInputStream.java:345) at java.io.DataInputStream.read(DataInputStream.java:149) at org.apache.hadoop.io.IOUtils.readFully(IOUtils.java:199) at org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doReadFully(PacketReceiver.java:213) at org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doRead(PacketReceiver.java:134) at org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.receiveNextPacket(PacketReceiver.java:109) at org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receivePacket(BlockReceiver.java:501) at org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receiveBlock(BlockReceiver.java:897) at org.apache.hadoop.hdfs.server.datanode.DataXceiver.writeBlock(DataXceiver.java:802) at org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.opWriteBlock(Receiver.java:137) at org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.processOp(Receiver.java:74) at org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:253) at java.lang.Thread.run(Thread.java:748) 字面理解为文件操作超租期,实际上就是data stream操作过程中文件被删掉了。之前也遇到过,通常是因为Mapred多个task操作同一个文件,一个task完成后删掉文件导致。 解决方案: 继续改大 xceiverCount 至8192并重启集群生效。 修改hdfs-site.xml (针对2.x版本,1.x版本属性名应该是:dfs.datanode.max.xcievers): <property> <name>dfs.datanode.max.transfer.threads</name> <value>8192</value> </property> 拷贝到各datanode节点并重启datanode即可 6. java.io.IOException: Incompatible clusterIDs java.io.IOException: Incompatible clusterIDs in /usr/hadoop/dfs/d ata: namenode clusterID = CID-86e16085-c061-4806-aac1-6f125689d567; datanode clusterID = CID-888eeac4-405f-4e3e-a5c3-c5195da71455 at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:775) at org.apache.hadoop.hdfs.server.datanode.DataStorage.loadStorageDirectory(DataStorage.java:300) at org.apache.hadoop.hdfs.server.datanode.DataStorage.loadDataStorage(DataStorage.java:416) at org.apache.hadoop.hdfs.server.datanode.DataStorage.addStorageLocations(DataStorage.java:395) at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:573) at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1362) at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1327) at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:317) at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:223) at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:802) at java.lang.Thread.run(Thread.java:748) 解决方案: 将name/current下的VERSION中的clusterID复制到data/current下的VERSION中,覆盖掉原来的clusterID - ###flume相关 #####1.ChannelFullException: Space for commit to queue couldn't be acquired. Sinks are likely not keeping up with sources, or the buffer size is too tight 答: 1)修改配置参数: agent.channels.memoryChanne3.keep-alive = 60 agent.channels.memoryChanne3.capacity = 1000000(给一个合适的值) 2)修改java最大内存大小 vim bin/flume-ng

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

搭建手机APP远程监控物联网云平台

目前常见的水质在线监测仪器生产商有:美国哈希HACH 德国E+H 以色列Blue I 德国科泽kuntze 加拿大AVVOR、德国阿尔道斯ALLDOS、上海博取、河北科瑞达等。采集的水质参数包括温度、PH、电导率、浊度、余氯等。 数据统计:可在线实时24小时连续的采集和记录监测点位的各种水质状况,以数字、图形和图像等多种方式进行实时显示和记录存储监测信息,监测点位可多达上百个点。 故障报警:当出现被监控点位数据异常时可自动发出报警信号,报警方式包括:现场多媒体声光报警、网络客户端报警、手机短信息报警等。 Web监控:管理人员打开电脑,登陆平台即可看到所属的设备运行状况,整个过程无需安装软件。一切就像网上冲浪那样方便。 APP监控:将设备放到口袋里,无论身处何地,打开手机即可查看和控制水质监测设备。 设备发布:环保局或者小区物业门可以通过EMCP平台将水质监测设备进行发布,生成二维码张贴在公共区域、官方网站或者宣传海报上,民众可通过手机扫描得知水质实时情况。 冗余设计:系统设计时预留有接口,可随时增加硬件设备,系统只要做少量的改动即可,可以在很短的时间内完成。

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

云计算之openstack-newton版搭建(六)

nova计算节点服务安装 安装配置计算节点 安装软件包 #yuminstallopenstack-nova-compute-y 2.编辑/etc/nova/nova.conf [root@compute1~]#cd/etc/nova/ [root@compute1nova]#cpnova.confnova.conf.bak [root@compute1nova]#egrep-v"^#|^$"nova.conf.bak>nova.conf [root@compute1nova]#vimnova.conf 添加如下内容 [DEFAULT] ... enabled_apis=osapi_compute,metadata transport_url=rabbit://openstack:RABBIT_PASS@controller auth_strategy=keystone my_ip=192.168.23.61 use_neutron=True firewall_driver=nova.virt.firewall.NoopFirewallDriver [keystone_authtoken] ... auth_uri=http://controller:5000 auth_url=http://controller:35357 memcached_servers=controller:11211 auth_type=password project_domain_name=Default user_domain_name=Default project_name=service username=nova password=123456 [vnc] ... enabled=True vncserver_listen=0.0.0.0 vncserver_proxyclient_address=$my_ip novncproxy_base_url=http://controller:6080/vnc_auto.html [glance] ... api_servers=http://controller:9292 [oslo_concurrency] ... lock_path=/var/lib/nova/tmp 3.确定计算节点是否支持虚拟化。 #egrep-c'(vmx|svm)'/proc/cpuinfo 如果返回值大于1表示支持虚拟化 如果不支持请更改/etc/nova/nova.conf [libvirt] ... virt_type=qemu 4.启动服务 #systemctlenablelibvirtd.serviceopenstack-nova-compute.service #systemctlstartlibvirtd.serviceopenstack-nova-compute.service 如果nova-compute服务无法启动,请检查/var/log/nova/nova-compute.log。控制器上的错误消息AMQP服务器:5672无法访问可能表示控制器节点上的防火墙阻止访问端口5672,关闭防火墙和selinux即可。 5.在控制端进行检查 #.admin-openrc #openstackcomputeservicelist [root@controller~]#openstackcomputeservicelist +----+------------------+----------------------+----------+---------+-------+----------------------------+ |ID|Binary|Host|Zone|Status|State|UpdatedAt| +----+------------------+----------------------+----------+---------+-------+----------------------------+ |1|nova-conductor|controller.novalocal|internal|enabled|up|2017-01-13T01:48:04.000000| |2|nova-consoleauth|controller.novalocal|internal|enabled|up|2017-01-13T01:48:07.000000| |3|nova-scheduler|controller.novalocal|internal|enabled|up|2017-01-13T01:48:04.000000| |10|nova-compute|compute1.novalocal|nova|enabled|up|2017-01-13T01:48:09.000000| +----+------------------+----------------------+----------+---------+-------+----------------------------+ [root@controller~]#novaservice-list +----+------------------+----------------------+----------+---------+-------+----------------------------+-----------------+ |Id|Binary|Host|Zone|Status|State|Updated_at|DisabledReason| +----+------------------+----------------------+----------+---------+-------+----------------------------+-----------------+ |1|nova-conductor|controller.novalocal|internal|enabled|up|2017-01-13T01:48:24.000000|-| |2|nova-consoleauth|controller.novalocal|internal|enabled|up|2017-01-13T01:48:17.000000|-| |3|nova-scheduler|controller.novalocal|internal|enabled|up|2017-01-13T01:48:24.000000|-| |10|nova-compute|compute1.novalocal|nova|enabled|up|2017-01-13T01:48:19.000000|-| +----+------------------+----------------------+----------+---------+-------+----------------------------+-----------------+ 表示nova服务安装完成

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

React Native商城项目实战02 - 搭建主框架

1.安装插件,cd到项目根目录下执行: npm i react-native-tab-navigator --save 1 1 1.1阅读README.md可以了解该模块基本用法 2.主框架文件Main.js /** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, Platform //判断当前运行的系统 } from 'react-native'; /*=============导入外部组件类==============*/ import TabNavigator from 'react-native-tab-navigator'; var Home = require('../Home/Home'); var Shop = require('../Shop/Shop'); var Mine = require('../Mine/Mine'); var More = require('../More/More'); // ES5 var Main = React.createClass({ // 初始化函数(变量是可以改变的,充当状态机的角色) getInitialState(){ return{ selectedTab:'home' // 默认选中的tabBar } }, render() { return ( <TabNavigator> {/*--首页--*/} <TabNavigator.Item title="首页" renderIcon={() => <Image source={{uri:'icon_tabbar_homepage'}} style={styles.iconStyle} />} renderSelectedIcon={() => <Image source={{uri:'icon_tabbar_homepage_selected'}} style={styles.selectedIconStyle} />} badgeText="1" selected={this.state.selectedTab === 'home'} onPress={() => this.setState({ selectedTab: 'home' })} > <Home /> </TabNavigator.Item> {/*--商家--*/} <TabNavigator.Item title="商家" renderIcon={() => <Image source={{uri:'icon_tabbar_merchant_normal'}} style={styles.iconStyle} />} renderSelectedIcon={() => <Image source={{uri:'icon_tabbar_merchant_selected'}} style={styles.selectedIconStyle} />} badgeText="1" selected={this.state.selectedTab === 'shop'} onPress={() => this.setState({ selectedTab: 'shop' })} > <Shop /> </TabNavigator.Item> {/*--我的--*/} <TabNavigator.Item title="我的" renderIcon={() => <Image source={{uri:'icon_tabbar_mine'}} style={styles.iconStyle} />} renderSelectedIcon={() => <Image source={{uri:'icon_tabbar_mine_selected'}} style={styles.selectedIconStyle} />} badgeText="1" selected={this.state.selectedTab === 'mine'} onPress={() => this.setState({ selectedTab: 'mine' })} > <Mine /> </TabNavigator.Item> {/*--更多--*/} <TabNavigator.Item title="更多" renderIcon={() => <Image source={{uri:'icon_tabbar_misc'}} style={styles.iconStyle} />} renderSelectedIcon={() => <Image source={{uri:'icon_tabbar_misc_selected'}} style={styles.selectedIconStyle} />} badgeText="1" onPress={() => this.setState({ selectedTab: 'more' })} selected={this.state.selectedTab === 'more'} > <More /> </TabNavigator.Item> </TabNavigator> ); } }); const styles = StyleSheet.create({ iconStyle:{ width: Platform.OS === 'ios' ? 30 : 25, height:Platform.OS === 'ios' ? 30 : 25, }, selectedIconStyle:{ width:Platform.OS === 'ios' ? 30 : 25, height:Platform.OS === 'ios' ? 30 : 25, }, }); // 输出 module.exports = Main; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 3.预览效果 安装效果

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

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文件系统,支持十年生命周期更新。

用户登录
用户注册