Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add summary, pathways, full node operator guidance #631

Merged
merged 1 commit into from
Feb 16, 2021

Conversation

shahankhatch
Copy link
Contributor

Closes: #XXX

Description


For contributor use:

  • Targeted PR against correct branch (see CONTRIBUTING.md)
  • Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
  • Code follows the module structure standards.
  • Wrote unit and integration tests
  • Updated relevant documentation (docs/) or specification (x/<module>/spec/)
  • Added relevant godoc comments.
  • Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
  • Re-reviewed Files changed in the Github PR explorer

For admin use:

  • Added appropriate labels to PR (ex. WIP, R4R, docs, etc)
  • Reviewers assigned
  • Squashed all commits, uses message "Merge pull request #XYZ: [title]" (coding standards)

@shahankhatch shahankhatch merged commit 4a65fef into main Feb 16, 2021
@shahankhatch shahankhatch deleted the shahan/fullnode_operator_guidance branch February 16, 2021 18:53
Upgrade coordination and support for validators will be available on the #validators-verified channel of the [Cosmos Discord](https://discord.gg/vcExX9T).

The network upgrade can take the following potential pathways:
1. Happy path: Validator successfully migrate the cosmoshub-3 genesis file to a cosmoshub-4 genesis file, and the validator can succesfully start Gaia v4 with the cosmoshub-4 genesis within 1-2 hours of the scheduled upgrade.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Happy path: Validator successfully migrate the cosmoshub-3 genesis file to a cosmoshub-4 genesis file, and the validator can succesfully start Gaia v4 with the cosmoshub-4 genesis within 1-2 hours of the scheduled upgrade.
1. Happy path: Validator successfully migrates the cosmoshub-3 genesis file to a cosmoshub-4 genesis file, and the validator can successfully start Gaia v4 with the cosmoshub-4 genesis within 1-2 hours of the scheduled upgrade.

1. Happy path: Validator successfully migrate the cosmoshub-3 genesis file to a cosmoshub-4 genesis file, and the validator can succesfully start Gaia v4 with the cosmoshub-4 genesis within 1-2 hours of the scheduled upgrade.
1. Not-so-happy path: Validators have trouble migrating the cosmoshub-3 genesis to a cosmoshub-4 genesis, but can obtain the genesis file from the Cosmos mainnet github repo and can successfully start Gaia v4 within 1-2 hours of the scheduled upgrade.
1. Abort path: In the rare event that the team becomes aware of critical issues, which result in an unsuccessful migration within a few hours, the upgrade will be announced as aborted
on the #validators-verified channel, and validators will need to resume running cosmoshub-3 network without any updates or changes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
on the #validators-verified channel, and validators will need to resume running cosmoshub-3 network without any updates or changes.
on the #validators-verified channel of [Discord](https://discord.gg/vcExX9T), and validators will need to resume running cosmoshub-3 network without any updates or changes.


**NOTE**: It is recommended for validators and operators to take a full data snapshot at the export
height before proceeding in case the upgrade does not go as planned or if not enough voting power
comes online in a sufficient and agreed upon amount of time. In such a case, the chain will fallback
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
comes online in a sufficient and agreed upon amount of time. In such a case, the chain will fallback
comes online in a sufficient and agreed upon amount of time. That means the backup of `.gaiad` should only take place once the chain has halted at UNIX time `1613628000`. In such a case, the chain will fallback

Is this accurate?

$ gaiad unsafe-reset-all
```

1. Move the new `genesis.json` to your `.gaia/config/` directory
Copy link
Contributor

@okwme okwme Feb 16, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Move the new `genesis.json` to your `.gaia/config/` directory
8. Move the new `genesis.json` to your `.gaia/config/` directory

cp genesis.json ~/.gaia/config/
```

1. Start your blockchain
Copy link
Contributor

@okwme okwme Feb 16, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Start your blockchain
9. Start your blockchain

go: go version go1.15 darwin/amd64
```

1. Make sure your chain halts at the right time and date:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Make sure your chain halts at the right time and date:
2. Make sure your chain halts at the right time and date:

perl -i -pe 's/^halt-time =.*/halt-time = 1613628000/' ~/.gaiad/config/app.toml
```

1. After the chain has halted, make a backup of your `.gaiad` directory
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. After the chain has halted, make a backup of your `.gaiad` directory
3. After the chain has halted, make a backup of your `.gaiad` directory

go: go version go1.15 darwin/amd64
```

1. Make sure your chain halts at the right time and date:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think full node operators should set halt time.

Basically only validator nodes need to.

comes online in a sufficient and agreed upon amount of time. In such a case, the chain will fallback
to continue operating `cosmoshub-3`. See [Recovery](#recovery) for details on how to proceed.

1. Download the cosmoshub-4 genesis file from the [Cosmos Mainnet Github](https://github.com/cosmos/mainnet).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Download the cosmoshub-4 genesis file from the [Cosmos Mainnet Github](https://github.com/cosmos/mainnet).
4. Download the cosmoshub-4 genesis file from the [Cosmos Mainnet Github](https://github.com/cosmos/mainnet).

The cosmoshub-4 genesis file will be validated by community participants, and
the hash of the file will be shared on the #validators-verified channel of the [Cosmos Discord](https://discord.gg/vcExX9T).

1. Install v4.0.0 of [Gaia](https://github.com/cosmos/gaia).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Install v4.0.0 of [Gaia](https://github.com/cosmos/gaia).
5. Install v4.0.0 of [Gaia](https://github.com/cosmos/gaia).

$ git clone https://github.com/cosmos/gaia.git && cd gaia && git checkout v4.0.0; make install
```

1. Verify you are currently running the correct version (v4.0.0) of the _Gaia_:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Verify you are currently running the correct version (v4.0.0) of the _Gaia_:
6. Verify you are currently running the correct version (v4.0.0) of the _Gaia_:


The version/commit hash of Gaia v4.0.0: `2bb04266266586468271c4ab322367acbf41188f`

1. Reset state:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Reset state:
7. Reset state:


The following is a short summary of the upgrade steps:
1. Stopping the running Gaia v2.0.x instance
1. Backing up configs, data, and keys used for running Cosmoshub-3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Backing up configs, data, and keys used for running Cosmoshub-3
2. Backing up configs, data, and keys used for running Cosmoshub-3

The following is a short summary of the upgrade steps:
1. Stopping the running Gaia v2.0.x instance
1. Backing up configs, data, and keys used for running Cosmoshub-3
1. Resetting state to clear the local Cosmoshub-3 state
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Resetting state to clear the local Cosmoshub-3 state
3. Resetting state to clear the local Cosmoshub-3 state

1. Stopping the running Gaia v2.0.x instance
1. Backing up configs, data, and keys used for running Cosmoshub-3
1. Resetting state to clear the local Cosmoshub-3 state
1. Copying the cosmoshub-4 genesis file to the Gaia config folder (either after migrating an existing cosmoshub-3 genesis export, or downloading the cosmoshub-4 genesis from the mainnet github)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Copying the cosmoshub-4 genesis file to the Gaia config folder (either after migrating an existing cosmoshub-3 genesis export, or downloading the cosmoshub-4 genesis from the mainnet github)
4. Copying the cosmoshub-4 genesis file to the Gaia config folder (either after migrating an existing cosmoshub-3 genesis export, or downloading the cosmoshub-4 genesis from the mainnet github)

1. Backing up configs, data, and keys used for running Cosmoshub-3
1. Resetting state to clear the local Cosmoshub-3 state
1. Copying the cosmoshub-4 genesis file to the Gaia config folder (either after migrating an existing cosmoshub-3 genesis export, or downloading the cosmoshub-4 genesis from the mainnet github)
1. Installing the Gaia v4.0.x release
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Installing the Gaia v4.0.x release
5. Installing the Gaia v4.0.x release

1. Resetting state to clear the local Cosmoshub-3 state
1. Copying the cosmoshub-4 genesis file to the Gaia config folder (either after migrating an existing cosmoshub-3 genesis export, or downloading the cosmoshub-4 genesis from the mainnet github)
1. Installing the Gaia v4.0.x release
1. Starting the Gaia v4.0.x instance to resume the Cosmos hub chain at a height of <cosmoshub3 height> + 1.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Starting the Gaia v4.0.x instance to resume the Cosmos hub chain at a height of <cosmoshub3 height> + 1.
6. Starting the Gaia v4.0.x instance to resume the Cosmos hub chain at a height of <cosmoshub3 height> + 1.


The network upgrade can take the following potential pathways:
1. Happy path: Validator successfully migrate the cosmoshub-3 genesis file to a cosmoshub-4 genesis file, and the validator can succesfully start Gaia v4 with the cosmoshub-4 genesis within 1-2 hours of the scheduled upgrade.
1. Not-so-happy path: Validators have trouble migrating the cosmoshub-3 genesis to a cosmoshub-4 genesis, but can obtain the genesis file from the Cosmos mainnet github repo and can successfully start Gaia v4 within 1-2 hours of the scheduled upgrade.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Not-so-happy path: Validators have trouble migrating the cosmoshub-3 genesis to a cosmoshub-4 genesis, but can obtain the genesis file from the Cosmos mainnet github repo and can successfully start Gaia v4 within 1-2 hours of the scheduled upgrade.
2. Not-so-happy path: Validators have trouble migrating the cosmoshub-3 genesis to a cosmoshub-4 genesis, but can obtain the genesis file from the Cosmos mainnet github repo and can successfully start Gaia v4 within 1-2 hours of the scheduled upgrade.

The network upgrade can take the following potential pathways:
1. Happy path: Validator successfully migrate the cosmoshub-3 genesis file to a cosmoshub-4 genesis file, and the validator can succesfully start Gaia v4 with the cosmoshub-4 genesis within 1-2 hours of the scheduled upgrade.
1. Not-so-happy path: Validators have trouble migrating the cosmoshub-3 genesis to a cosmoshub-4 genesis, but can obtain the genesis file from the Cosmos mainnet github repo and can successfully start Gaia v4 within 1-2 hours of the scheduled upgrade.
1. Abort path: In the rare event that the team becomes aware of critical issues, which result in an unsuccessful migration within a few hours, the upgrade will be announced as aborted
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
1. Abort path: In the rare event that the team becomes aware of critical issues, which result in an unsuccessful migration within a few hours, the upgrade will be announced as aborted
3. Abort path: In the rare event that the team becomes aware of critical issues, which result in an unsuccessful migration within a few hours, the upgrade will be announced as aborted

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Markdown formats every point automatically incrementally when always using 1 - this way you do not have to worry to keep items aligned in case something changes.

alessio pushed a commit that referenced this pull request Feb 17, 2021
* Adding stub for migration guide (#586)

* Update Github actions pattern filter for go files, go.mod, and go.sum

* Updating changelog for v4

* Added PR link to changelog line item

* update discord link (#596)

* Fix Discord Links (#599)

* Update config.js

* Update overview.md

* Update README.md (#603)

Update Github license badge to branch `main` instead of former `master`

* Upgrade descriptions for cosmoshub-3 (#585)

* Upgrade descriptions for cosmoshub-3

* Remove any blockheight, since it is not known

* Add steps for the upgrade and more info around service providers

* Add info on backup

* Add info about x-crisis-skipp-assert-invariants

* Update to gaia v2.0.15

* Add grpc and state sync settings to the upgrade guide

* Replace unsafe-reset-all with init

* Use unsafe-reset-all, info about genesis hash value

* Fix repo name in license file (#604)

* Remove circleci (#597)

* ci: remove circleci

* Adding localnet sim to github action

* Remove file filter temporarily

* Re-enable file filter for action trigger

* Remove commented lines

* Linking file filter to actions

* Update .gaia directory and fixed timestamp for migrate (#607)

* Update .gaia directory and fixed timestamp for migrate

* Optimise readability in migrate step

* Add comment on new created genesis

* Adding resources to migration guide (#605)

* docs: deploy gh pages (#541)

* deploy docs to gh pages

* change base

* remove circle

* Update .github/workflows/docs.yml

* remove prefix

* push on main (#609)

* Cosmoshub 3 upgrade genesis initial height (#608)

* Change genesis timestamp to initial height

* Remove further explanation on time with initial height

* Removing dup liveness-test; was implemented in (#597) (#611)

* Bump github.com/tendermint/tm-db from 0.6.3 to 0.6.4 (#616)

* Bump github.com/tendermint/tm-db from 0.6.3 to 0.6.4

Bumps [github.com/tendermint/tm-db](https://github.com/tendermint/tm-db) from 0.6.3 to 0.6.4.
- [Release notes](https://github.com/tendermint/tm-db/releases)
- [Changelog](https://github.com/tendermint/tm-db/blob/master/CHANGELOG.md)
- [Commits](tendermint/tm-db@v0.6.3...v0.6.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* go.sum

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>

* Bump github.com/spf13/cobra from 1.1.1 to 1.1.2 (#617)

* Bump github.com/spf13/cobra from 1.1.1 to 1.1.2

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md)
- [Commits](spf13/cobra@v1.1.1...v1.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* go.sum

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>

* 100 validators to 125 validators (#618)

* 100 validators to 125 validators

* Update validator-faq.md

* Update validator-faq.md

* Update validator-faq.md

* Update validator-faq.md

* Update delegator-faq.md

* Update overview.md

* Update validator-setup.md

* Updates to release process (#588)

* Initial commit of updates

* Adding new RELEASING.md file

* Update contact info in COC

* Adding info on tag deletion, fixed reproducible build cmd

* Update .github/CODEOWNERS

Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: billy rennekamp <billy.rennekamp@gmail.com>

* Add missing breaking changes file (#625)

* Add missing breaking changes file

* Update docs/migration/breaking_changes.md

Co-authored-by: Alessio Treglia <alessio@tendermint.com>

* Bump github.com/tendermint/tendermint from 0.34.3 to 0.34.4 (#622)

* Bump github.com/tendermint/tendermint from 0.34.3 to 0.34.4

Bumps [github.com/tendermint/tendermint](https://github.com/tendermint/tendermint) from 0.34.3 to 0.34.4.
- [Release notes](https://github.com/tendermint/tendermint/releases)
- [Changelog](https://github.com/tendermint/tendermint/blob/v0.34.4/CHANGELOG.md)
- [Commits](tendermint/tendermint@v0.34.3...v0.34.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* go.sum

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>

* Add memory hardware requirements to the upgrade guide (#621)

* Bump github.com/spf13/cobra from 1.1.2 to 1.1.3 (#619)

* Bump github.com/spf13/cobra from 1.1.2 to 1.1.3

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Changelog](https://github.com/spf13/cobra/blob/master/CHANGELOG.md)
- [Commits](spf13/cobra@v1.1.2...v1.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* go.sum

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Shahan Khatchadourian <shahan.k.code@gmail.com>

* remove version (#630)

* Add summary, pathways, full node operator guidance (#631)

* Applying fixes (#632)

* Create Cosmos Hub3 upgrade Instructions on ES_es (#613)

* Create Cosmos Hub3 upgrade Instructions on ES_es

* Update docs/migration/cosmoshub-3[ES_es].md

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* Update docs/migration/cosmoshub-3[ES_es].md

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* Update docs/migration/cosmoshub-3[ES_es].md

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* Update docs/migration/cosmoshub-3[ES_es].md

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* Update docs/migration/cosmoshub-3[ES_es].md

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* Update docs/migration/cosmoshub-3[ES_es].md

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* Update Cosmoshub-3 

Fedekunze's translation suggestions added.
Check (https://github.com/cosmos/gaia/pull/613#discussion_r573697546)[https://github.com/cosmos/gaia/pull/613#discussion_r573697546]

Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>

* FIX: typo (#633)

* Depend on cosmos-sdk v0.41.1 (#635)

* FIX v4.0.0 hash (#634)

Co-authored-by: Jelena647 <34727326+Jelena647@users.noreply.github.com>
Co-authored-by: billy rennekamp <billy.rennekamp@gmail.com>
Co-authored-by: Tobias Schwarz <tobias@tendermint.com>
Co-authored-by: Marko <marbar3778@yahoo.com>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
Co-authored-by: Alessio Treglia <alessio@tendermint.com>
Co-authored-by: wimel <wimeleth85@gmail.com>
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Nicolas Pinto <nicolas.pinto@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants