Define system environment variables in /etc/profile. This file, like ~/.profile (or ~/.bash_profile if your login shell is bash), is read when you log in (on some systems, this excludes graphical logins), at the very start of your session.
Define system bash configurations in /etc/bash.bashrc or /etc/bashrc (the path depends on the distribution, I don't know which one CentOS uses). This file is read every time you start an interactive shell. If you define environment variables there, they won't be available in programs that aren't started from a shell, but they'll override environment variables set by the caller. Do not define environment variables in /etc/bashrc or ~/.bashrc.
See Is there a ".bashrc" equivalent file read by all shells? and the posts it cites.