blob: 96e7038efc8ea849816fad7311f3ec901aa57484 [file] [log] [blame]
/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.storm.blobstore;
import java.util.Map;
import javax.security.auth.Subject;
import org.apache.storm.Config;
import org.apache.storm.blobstore.ClientBlobStore;
import org.apache.storm.hdfs.blobstore.HdfsBlobStore;
import org.apache.storm.hdfs.blobstore.HdfsClientBlobStore;
import org.apache.storm.utils.Utils;
@SuppressWarnings("checkstyle:AbbreviationAsWordInName")
public class ListHDFS {
public static void main(String[] args) throws Exception {
if (args.length < 1) {
System.out.println("Need at least 1 argument (hdfs_blobstore_path), but have " + Integer.toString(args.length));
System.out.println("listHDFS <hdfs_blobstore_path> <hdfs_principal> <keytab>");
System.out.println("Lists blobs in HdfsBlobStore");
System.out.println("Example: listHDFS "
+ "'hdfs://some-hdfs-namenode:8080/srv/storm/my-storm-blobstore' "
+ "'stormUser/my-nimbus-host.example.com@STORM.EXAMPLE.COM' '/srv/my-keytab/stormUser.kt'");
System.exit(1);
}
Map<String, Object> hdfsConf = Utils.readStormConfig();
String hdfsBlobstorePath = args[0];
hdfsConf.put(Config.BLOBSTORE_DIR, hdfsBlobstorePath);
hdfsConf.put(Config.STORM_PRINCIPAL_TO_LOCAL_PLUGIN, "org.apache.storm.security.auth.DefaultPrincipalToLocal");
if (args.length >= 2) {
System.out.println("SETTING HDFS PRINCIPAL!");
hdfsConf.put(Config.BLOBSTORE_HDFS_PRINCIPAL, args[1]);
}
if (args.length >= 3) {
System.out.println("SETTING HDFS KEYTAB!");
hdfsConf.put(Config.BLOBSTORE_HDFS_KEYTAB, args[2]);
}
/* CREATE THE BLOBSTORES */
HdfsBlobStore hdfsBlobStore = new HdfsBlobStore();
hdfsBlobStore.prepare(hdfsConf, null, null, null);
/* LOOK AT HDFS BLOBSTORE */
System.out.println("Listing HDFS blobstore keys.");
MigratorMain.listBlobStoreKeys(hdfsBlobStore, null);
System.out.println("Done Listing HDFS blobstore keys.");
hdfsBlobStore.shutdown();
}
}