Moving from legacy to segwit simply just needs a transaction to a segwit address.
Just follow HCP's steps to create a segwit wallet and move your funds over to that address.
Keep in mind that some outdated exchanges can not send to a bech32 address (addresses starting with
bc1..; native segwit).
They simply don't know yet that this is a valid address.
If you insist on using those outdated services/exchanges, you might want to have a legacy or nested segwit (p2sh; addresses starting with
3..) address in reserve.
Is it safe?
Yes.