use of org.apache.bookkeeper.stream.proto.common.Endpoint in project bookkeeper by apache.
the class TestNetUtils method testParseEndpoint.
@Test
public void testParseEndpoint() {
String endpointStr = "10.138.10.56:12345";
Endpoint endpoint = parseEndpoint(endpointStr);
assertEquals("10.138.10.56", endpoint.getHostname());
assertEquals(12345, endpoint.getPort());
}
use of org.apache.bookkeeper.stream.proto.common.Endpoint in project bookkeeper by apache.
the class StreamCluster method createDefaultNamespaces.
private void createDefaultNamespaces() throws Exception {
StorageClientSettings settings = StorageClientSettings.newBuilder().addEndpoints(getRpcEndpoints().toArray(new Endpoint[getRpcEndpoints().size()])).usePlaintext(true).build();
log.info("RpcEndpoints are : {}", settings.endpoints());
String namespaceName = "default";
try (StorageAdminClient admin = StorageClientBuilder.newBuilder().withSettings(settings).buildAdmin()) {
System.out.println("Creating namespace '" + namespaceName + "' ...");
try {
NamespaceProperties nsProps = result(admin.createNamespace(namespaceName, NamespaceConfiguration.newBuilder().setDefaultStreamConf(DEFAULT_STREAM_CONF).build()));
System.out.println("Successfully created namespace '" + namespaceName + "':");
System.out.println(nsProps);
} catch (NamespaceExistsException nee) {
System.out.println("Namespace '" + namespaceName + "' already exists.");
}
}
}
use of org.apache.bookkeeper.stream.proto.common.Endpoint in project bookkeeper by apache.
the class StorageServer method startStorageServer.
public static LifecycleComponent startStorageServer(CompositeConfiguration conf, int grpcPort, int numStorageContainers, Optional<String> instanceName) throws ConfigurationException, UnknownHostException {
BookieConfiguration bkConf = BookieConfiguration.of(conf);
bkConf.validate();
DLConfiguration dlConf = DLConfiguration.of(conf);
dlConf.validate();
StorageServerConfiguration serverConf = StorageServerConfiguration.of(conf);
serverConf.validate();
StorageConfiguration storageConf = new StorageConfiguration(conf);
storageConf.validate();
// Get my local endpoint
Endpoint myEndpoint = createLocalEndpoint(grpcPort, false);
// Create shared resources
StorageResources storageResources = StorageResources.create();
// Create the stats provider
StatsProviderService statsProviderService = new StatsProviderService(bkConf);
StatsLogger rootStatsLogger = statsProviderService.getStatsProvider().getStatsLogger("");
// Create the bookie service
BookieService bookieService = new BookieService(bkConf, rootStatsLogger);
// Create the distributedlog namespace service
DLNamespaceProviderService dlNamespaceProvider = new DLNamespaceProviderService(bookieService.serverConf(), dlConf, rootStatsLogger.scope("dl"));
// Create range (stream) store
RangeStoreBuilder rangeStoreBuilder = RangeStoreBuilder.newBuilder().withStatsLogger(rootStatsLogger.scope("storage")).withStorageConfiguration(storageConf).withStorageResources(storageResources).withNumStorageContainers(numStorageContainers).withDefaultBackendUri(dlNamespaceProvider.getDlogUri()).withStorageContainerManagerFactory((ignored, storeConf, registry) -> new HelixStorageContainerManager(bookieService.serverConf().getZkServers(), "stream/helix", storeConf, registry, myEndpoint, instanceName, rootStatsLogger.scope("helix"))).withRangeStoreFactory(new MVCCStoreFactoryImpl(dlNamespaceProvider, storageConf.getRangeStoreDirs(), storageResources, storageConf.getServeReadOnlyTables()));
StorageService storageService = new StorageService(storageConf, rangeStoreBuilder, rootStatsLogger.scope("storage"));
// Create gRPC server
StatsLogger rpcStatsLogger = rootStatsLogger.scope("grpc");
GrpcServerSpec serverSpec = GrpcServerSpec.builder().storeSupplier(storageService).storeServerConf(serverConf).endpoint(myEndpoint).statsLogger(rpcStatsLogger).build();
GrpcService grpcService = new GrpcService(serverConf, serverSpec, rpcStatsLogger);
// Create all the service stack
return LifecycleComponentStack.newBuilder().withName("storage-server").addComponent(// stats provider
statsProviderService).addComponent(// bookie server
bookieService).addComponent(// service that provides dl namespace
dlNamespaceProvider).addComponent(// range (stream) store
storageService).addComponent(// range (stream) server (gRPC)
grpcService).build();
}
use of org.apache.bookkeeper.stream.proto.common.Endpoint in project bookkeeper by apache.
the class GrpcStorageContainerService method getStorageContainerEndpoint.
@Override
public void getStorageContainerEndpoint(GetStorageContainerEndpointRequest request, StreamObserver<GetStorageContainerEndpointResponse> responseObserver) {
GetStorageContainerEndpointResponse.Builder responseBuilder = GetStorageContainerEndpointResponse.newBuilder().setStatusCode(StatusCode.SUCCESS);
for (int i = 0; i < request.getRequestsCount(); i++) {
Endpoint endpoint = rangeStore.getRoutingService().getStorageContainer(request.getRequests(i).getStorageContainer());
OneStorageContainerEndpointResponse.Builder oneRespBuilder;
if (null != endpoint) {
oneRespBuilder = OneStorageContainerEndpointResponse.newBuilder().setStatusCode(StatusCode.SUCCESS).setEndpoint(StorageContainerEndpoint.newBuilder().setRwEndpoint(endpoint).addRoEndpoint(endpoint).setRevision(0L));
} else {
oneRespBuilder = OneStorageContainerEndpointResponse.newBuilder().setStatusCode(StatusCode.INTERNAL_SERVER_ERROR);
}
responseBuilder = responseBuilder.addResponses(oneRespBuilder);
}
responseObserver.onNext(responseBuilder.build());
responseObserver.onCompleted();
}
use of org.apache.bookkeeper.stream.proto.common.Endpoint in project bookkeeper by apache.
the class TestNetUtils method testCreateEndpoint.
@Test
public void testCreateEndpoint() {
String hostname = "10.138.10.56";
int port = 12345;
Endpoint endpoint = createEndpoint(hostname, port);
assertEquals(hostname, endpoint.getHostname());
assertEquals(port, endpoint.getPort());
}
Aggregations