Should users be made aware they are beta testing in live environments? Should they be given special instructions? Should they have options to test or not test in "live/production" environments?
Normally beta-test users are aware of they are beta-testers because in beta-testing there is an emphasis on word testing.
Either the beta-testers are obliged to find and report defects depends on whether the beta testing is performed in open or closed model.
In closed model, normally, the professional testers are involved so that they are to find and report defects.
In open beta, normally regular users are involved. They are notified about the software currently is in beta phase hence the quality is not guaranteed. It is up to the users either to report found issues or not.
As pointed out by Kate: "it depends". There are many factors to consider, such as your industry, your product, your users, … moreover, as already said by Alexey, I think the word "beta" is important here because beta users are usually aware that they are using a beta version.
However, since it hasn't been mentioned so far: There is also canary testing:
In software testing, a canary is a push of programming code changes to a small group of end users who are unaware that they are receiving new code. Because the canary is only distributed to a small number of users, its impact is relatively small and changes can be reversed quickly should the new code prove to be buggy.
Additional resources for canary releases/testing:
Can they do serious harm? If yes, maybe it is wise to tell them.
Should they have options to test or not test in "live/production" environments?
Should they? This greatly depends on the risks. I prefer testing in production with feature toggles. Limiting the number of people that can "test" the new features.
We live in a continuous delivery world. Having separate beta testing and acceptance cycles will just slow you down. Do keep the risk in mind, don't play with peoples lives.