If it’s cylindrical and straight you can add three bones in an armature. The first is upright, located at one end of the cylinder, and you assign the vertices of that end to it. The second is horizontal along the line of the cylinder and is connected and parented to the first and inherits rotation and scale. the third is also upright, located at the opposite end, and is connected to the second, inherits rotation but NOT scale. Assign the far end vertices to this bone. To extend the cylinder simply scale the horizontal bone, to move or rotate the whole cylinder rotate/grab the first bone.
Or, use shapekeys - add a Basis key (you must do this first) add a second key and move the vertices of one end of the cylinder to the extended position with the key set to value 1. The you can keyframe the value to extend the cylinder.
Personally I would use the armature as it gives you more flexibility as to how far you can extend the cylinder.
If the cylinder is not straight (it is not a cylinder if this is the case) - I believe you have to use a curve and bevel object, that being the only method I know of, maybe others will know a different way. I have to admit that once I find a simple way to do something I tend to stick with it.