首页 \ 问答 \ 分布式集群Hadoop和Hbase(Distributed Cluster Hadoop and Hbase)

分布式集群Hadoop和Hbase(Distributed Cluster Hadoop and Hbase)

我有两个节点的完全分布式Hadoop和Hbase实例。 HDFS完美地工作在主从机上。 但是,在编写节点名之后HBase shell只运行一次,并且在我收到错误之后集群是新的:ERROR:org.apache.hadoop.hbase.PleaseHoldException:Master正在初始化hbase

另外我无法通过hbase shell从slave进行连接我总是收到错误Connection Refused,并且在HBase Web UI中,我只能在regionserver上看到它是主节点

主站点hbase-site.xml:

<configuration>
    <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,slave</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/usr/local/hbase-1.2.1/data/zookeeper</value>
    </property>
    <property>
                <name>hbase.zookeeper.property.clientPort</name>
                <value>2181</value>
        </property>
    <property>
        <name>hbase.regionserver.thrift.framed</name>
        <value>true</value>
    </property>
     <property>
                <name>hbase.zookeeper.property.maxClientCnxns</name>
                <value>1000</value>
        </property>
    <property>
        <name>hbase.regionserver.thrift.server.type</name>
        <value>TThreadPoolServer</value>
    </property>
    <property>
            <name>avatica.statementcache.maxcapacity</name>
            <value>20000</value>
    </property>
</configuration>

从站hbase-site.xml

<configuration>
    <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.property.maxClientCnxns</name>
                <value>1000</value>
        </property>
    <property>
                <name>hbase.zookeeper.property.clientPort</name>
                <value>2181</value>
        </property>
</configuration>

JPS大师:

在这里输入图像描述

JPS奴隶:

在这里输入图像描述


I have a fully distributed Hadoop and Hbase instances of two nodes. HDFS working perfectly on the master and the slave. But HBase shell works only one time after the nodename is formated and the cluster is new after that I get the error: ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing hbase

Also I can not connect through hbase shell from the slave I always get the error Connection Refused and in the HBase Web UI, I only can see on regionserver which is the master node

Master hbase-site.xml:

<configuration>
    <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,slave</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/usr/local/hbase-1.2.1/data/zookeeper</value>
    </property>
    <property>
                <name>hbase.zookeeper.property.clientPort</name>
                <value>2181</value>
        </property>
    <property>
        <name>hbase.regionserver.thrift.framed</name>
        <value>true</value>
    </property>
     <property>
                <name>hbase.zookeeper.property.maxClientCnxns</name>
                <value>1000</value>
        </property>
    <property>
        <name>hbase.regionserver.thrift.server.type</name>
        <value>TThreadPoolServer</value>
    </property>
    <property>
            <name>avatica.statementcache.maxcapacity</name>
            <value>20000</value>
    </property>
</configuration>

Slave hbase-site.xml

<configuration>
    <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.property.maxClientCnxns</name>
                <value>1000</value>
        </property>
    <property>
                <name>hbase.zookeeper.property.clientPort</name>
                <value>2181</value>
        </property>
</configuration>

JPS Master:

enter image description here

JPS Slave:

enter image description here


原文:https://stackoverflow.com/questions/39746714
更新时间:2022-11-27 09:11

最满意答案

这是fingreprint扫描仪和您网站的验证逻辑之间的可信路径问题。 如果有人可以伪装成有效的客户并向您的应用程序提交登录请求,那么您的方案将被破坏。

我认为你能做的最好的事情是使用双因素身份验证,我会请求用户密码,并将其作为输入提供给某些PKDF,并用它加密登录请求,这样如果有人得到用户指纹,他就不会能够在不知道用户密码的情况下伪造登录请求。 此外,生物识别主要是作为额外的认证因素完成的,而不是唯一的认证因素。

如果您不想这样做,您可以混淆应用程序代码,使用一次性密钥发布,这将在很短的时间内有效,以最大程度地降低逆向工程的风险,并使用此密钥签署请求,但它是不是很安全,它需要大量的husstle没有任何显着的安全性增加。


It's an issue of a Trusted path between fingreprint scanner, and your website's verification logic. If someone could disguise as a valid client and submit login requests to your application, your scheme would be broken.

I think the best you can do is to use two factor authentication, I would request a users password, and provide it as input to some PKDF, and encrypt login request with it, this way if someone get's users fingerprint, he won't be able to forge a login request without knowing users password. Besides, biometric is mostly done as additional authentication factor, not the only one.

If you don't wan't to do this, you could obfuscate application code, issue it with one time key, which would be valid for very short time, to minimize risk of reverse engineering, and sign request with this key, but it's not very secure, it requires a lot of husstle without any significant security increase.

相关问答

更多
  • 头痛后,我终于解决了它。 原来,我只是没有使用正确的网址发布。 我检查了Chrome并找到了实际的网址。 现在它工作:)。 public void getData(HashMap formFields) throws Exception{ Connection conn = Jsoup.connect("https://academicscc.vit.ac.in/student/stud_login_submit.asp") .userAge ...
  • 如果您搜索一个简单的解决方案,请尝试使用WebBrowser控件。 您可以遍历页面的所有项目并设置用户名和密码,然后点击登录按钮。 I explored more and found that I was not being authenticated by the SSL and I was getting this exception: Could not establish trust relationship for the SSL/TLS secure channel So I got a pie ...
  • 这是fingreprint扫描仪和您网站的验证逻辑之间的可信路径问题。 如果有人可以伪装成有效的客户并向您的应用程序提交登录请求,那么您的方案将被破坏。 我认为你能做的最好的事情是使用双因素身份验证,我会请求用户密码,并将其作为输入提供给某些PKDF,并用它加密登录请求,这样如果有人得到用户指纹,他就不会能够在不知道用户密码的情况下伪造登录请求。 此外,生物识别主要是作为额外的认证因素完成的,而不是唯一的认证因素。 如果您不想这样做,您可以混淆应用程序代码,使用一次性密钥发布,这将在很短的时间内有效,以最大 ...
  • 在具有指纹传感器的设备上,用户可以注册一个或多个指纹并使用这些指纹解锁设备并执行其他任务。 Android使用指纹硬件抽象层(HAL)连接到供应商特定的库和指纹硬件,例如指纹传感器。 有一个方法enumerate (枚举所有已知指纹模板的同步调用)还有Android的FingerprintManager。 但它有一个方法hasEnrolledFingerprints ,如果有多个指纹登记,它将返回true。所以你不知道有多少或有没有添加。 有用的文档HAL链接 FingerprintManager On d ...
  • 不,没有人能够真正看到你正在使用Selenium,而不是自己使用WebDriver手动操作浏览器。 我不确定旧的Selenium RC,但它应该是一样的。 以下是它的工作原理: Selenium打开一个浏览器,其中包含干净的配置文件(或您选择的配置文件) Selenium连接到浏览器,因此它可以控制它,控制它。 但浏览器仍然完成大部分工作。 基本上,Selenium会将用户输入替换为浏览器,但不会更多。 您可以通过阅读浏览器发送的HTTP标头的内容轻松验证这一点。 如果您确实需要服务器识别Selenium, ...
  • 您需要为请求添加更多参数: csrf,time,hash 代码用空表: import org.jsoup.Connection; import org.jsoup.Jsoup; import org.jsoup.nodes.Element; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.nio.charset.StandardCharsets; import java.securit ...
  • JSON格式请求引号标记属性名称和值,因此在您的情况下它应该是: String payload="{\"email_address\" : \"(EMAILHERE)\", \"password\" : \"(PASSWORDHERE)\"}"; JSON format requiters quotation marks both for the property name and the value so in your case it should be: String payload="{\"emai ...
  • 引用我的文章的重要部分我在哪里获得SSH主机密钥指纹来授权服务器? 您应该从服务器管理员处获取SSH主机密钥指纹以及您的凭据。 了解主机密钥指纹,从而能够验证它是保护SSH连接不可或缺的一部分。 它可以防止中间人攻击 。 在现实世界中,大多数管理员不提供主机密钥指纹。 相反,您可以询问任何对服务器有实际访问权限或已知该主机密钥的人员。 主机密钥只有一个,因此所有用户都是一样的。 另请注意,主机密钥指纹仅从主机密钥的公钥部分生成。 所以这不是秘密,可以通过未加密的(但是可信的)通信渠道安全地发送。 如果您没有 ...

相关文章

更多

最新问答

更多
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • 电脑高中毕业学习去哪里培训
  • 电脑系统专业就业状况如何啊?
  • IEnumerable linq表达式(IEnumerable linq expressions)
  • 如何在Spring测试中连接依赖关系(How to wire dependencies in Spring tests)
  • Solr可以在没有Lucene的情况下运行吗?(Can Solr run without Lucene?)
  • 如何保证Task在当前线程上同步运行?(How to guarantee that a Task runs synchronously on the current thread?)
  • 在保持每列的类的同时向数据框添加行(Adding row to data frame while maintaining the class of each column)
  • 的?(The ? marks in emacs/haskell and ghc mode)
  • 一个线程可以调用SuspendThread传递自己的线程ID吗?(Can a thread call SuspendThread passing its own thread ID?)
  • 延迟socket.io响应,并“警告 - websocket连接无效”(Delayed socket.io response, and “warn - websocket connection invalid”)
  • 悬停时的图像转换(Image transition on hover)
  • IIS 7.5仅显示homecontroller(IIS 7.5 only shows homecontroller)
  • 没有JavaScript的复选框“关闭”值(Checkbox 'off' value without JavaScript)
  • java分布式框架有哪些
  • Python:填写表单并点击按钮确认[关闭](Python: fill out a form and confirm with a button click [closed])
  • PHP将文件链接到根文件目录(PHP Linking Files to Root File Directory)
  • 我如何删除ListView中的项目?(How I can remove a item in my ListView?)
  • 您是否必须为TFS(云)中的每个BUG创建一个TASK以跟踪时间?(Do you have to create a TASK for every BUG in TFS (Cloud) to track time?)
  • typoscript TMENU ATagParams小写(typoscript TMENU ATagParams lowercase)
  • 武陟会计培训类的学校哪个好点?
  • 从链接中删除文本修饰(Remove text decoration from links)