Yes it's possible. There's a couple of ways you can do it. The simplest way is to create a reference to the contract you're calling from the calling contract, which you can do with import "./CalledContract.sol"; and put it below pragma solidity ^0.4.* where 'CalledContract' is the name of the contract you want to call .getBalance() on. Note they both have to be in the same folder for the above command to work.
Then in your code you can create a reference to the instance of that contract type with CalledContract calledContract = CalledContract(addressOfDeployedCalledContract) perhaps in the constructor or accept the CalledContract directly in a function arg
CalledContract calledContract;
function Constructor(CalledContract _calledContract) {
calledContract = _calledContract;
}
Then you can do calledContract.getBalance(address) to get the balance of that address from the CalledContract. Note this requires that there is a function in the CalledContract called getBalance(address).
Alternatively you can learn how to use call or delegateCall but it's not really necessary for what you're trying to do.