code: public static ManagedChannel createChannelPool(final String host, final BigtableOptions options,
        int count) throws IOException, GeneralSecurityException {
      final List<ClientInterceptor> interceptorList = new ArrayList<>();
  
      ClientInterceptor credentialsInterceptor = CredentialInterceptorCache.getInstance()
              .getCredentialsInterceptor(options.getCredentialOptions(), options.getRetryOptions());
      if (credentialsInterceptor != null) {
        interceptorList.add(credentialsInterceptor);
      }
  
      if (options.getInstanceName() != null) {
        interceptorList
            .add(new GoogleCloudResourcePrefixInterceptor(options.getInstanceName().toString()));
      }
      final ClientInterceptor[] interceptors =
          interceptorList.toArray(new ClientInterceptor[interceptorList.size()]);
  
      ChannelPool.ChannelFactory factory = new ChannelPool.ChannelFactory() {
        @Override
        public ManagedChannel create() throws IOException {
          return createNettyChannel(host, options, interceptors);
        }
      };
      return new ChannelPool(factory, count);
    }
docs: Create a new {@link com.google.cloud.bigtable.grpc.io.ChannelPool}, with auth headers.
  
  @param host a {@link String} object specifying the host to connect to.
  @param options a {@link BigtableOptions} object with the credentials, retry and other connection options.
  @param count an int defining the number of channels to create
  @return a {@link ChannelPool} object.
  @throws IOException if any.
  @throws GeneralSecurityException