Author: Eos9cat

POD evicted and unable to be launched again!

Briefing

When we did the regular check on our official EOS node on the main-net, we found that one full node was evicted and can’t be launched again. Obviously, the node was shut down and not working.

Symptom

Status of the Pod

kubectl get po -owide

1.png

kubectl describe pod <pod-name>

2.png

We found one funny factor that –

0/2 nodes are available: 1 node(s) had disk pressure, 1 node(s) had taints that the pod didn’t tolerate.

Note: EOS9CAT currently has 1 x master node (pod not tolerated) + 1 x worker node.

Reason

The kubelet needs to preserve node stability when available compute resources are low. This is especially important when dealing with incompressible compute resources, such as memory or disk space. If such resources are exhausted, nodes become unstable.

Running 2 x full nodes + 1 bp node on one server seems that exhausted the disk I/O (SSD already).

In terms of EOS9CAT monitoring, after the EOS main-net was officially launched for more than 1 month, more and more transactions are being made into the blocks.

Currently, the nodes require very high network bandwidth and disk I/O than we expected before the EOS launching day.

Workaround

  1. Enable the master node to hold the podsReference: Creating a single master cluster with kubeadm – Master Isolationkubectl taint nodes --all node-role.kubernetes.io/master-
  2. Re-configure the Persistent Volume for the master node
    • Change the nfs server address to be same with the master node
      nfs:
        # FIXME: use the right IP
        server: <nfs server ip address>
        path: "path/to/folder"
      
    • kubectl create -f <pv.yaml>
  3. Transfer the snapshot to the master node
    • stop the running node
    • copy all the blocks/ and state/ to the node’s folder which is located in the master node
  4. Label each nodes and add the nodeSelector into the pod yaml file
    • Reference: Assign Pods to Nodeskubectl label nodes <your-master-name> role=masterkubectl label nodes <your-node1-name> role=node1
    • Add the {.spec.nodeSelector} into the deployment yaml file
        nodeSelector:
          role: master
      
  5. Deploy the deployment in the Kubernetes

3.png

6. Now the I/O chart from each node after the change.

  • master node

1.png

  • node1 node

4.png

Conclusion

  1. Fully utilize the resource of the bare metal could give us more stabilities.
  2. A good PV (PersistentVolume) design could promote the whole performance of the pod fail-over.
  3. EOS synchronization requires robust network bandwidth and the disk I/O, especially several nodes are sharing the resource of one bare metal server.

Contact/About us

If you are an advanced blockchain user, feel free to use any of those tools that you are comfortable with.

If you like what we do and believe in [EOS9CAT](www.eos9cat.com0, vote for eosninecatbp! Waiting for your support. Have a question, send an email to us or visit our website.

FOLLOW US on FacebookTelegramMediumSteemItGithubMeetup E0S9CATRedditTwitter, and LinkedIn.

Read More

How can you VOTE for EOS9CAT?

EOS Block Producer Community has built many tools for voting. EOS9CAT, the Block Producer Candidate, is happy to compile the most up to date list of these tools and hope this article helps you make the informed decision on what is the most suitable tool for you to cast the vote.

1. SCATTER BROWSER EXTENSION

It is not a stand-alone software and it is an only browser extension. You need to input the private key of the registered EOS account to be able to vote on EOS Portal.

For non-programmers who own a small number of tokens, this is probably the easiest way to stake their token and vote for block producers. However, you will have to import your private key while you are online, so it is critical to making sure your computer is free of the virus.

The detailed instruction is here.

In order to download the extension to Chrome, please click here.

eos9cat - vote for us- vancouver.png

2. EOS VOTER

This a desktop application for Windows, Mac, and Linux. It is both a wallet and a voter. If you set up your account with a password, the software will encrypt your private key for the future use, otherwise, your private key will not be saved.

EOS Voter is a limited-functionality release of a light wallet being designed for the EOS Blockchain. This application can be used to connect to a remote EOS API endpoint to perform producer voting actions and a few basic wallet commands.

A detailed instruction for installing and voting is here.
eos9 cat- vote for eos9cat.png

3. TOKENIKA OFFLINE VOTING

This is method is slightly harder than using Scatter, since it requires some technical understanding of the fundamental Blockchain Technology, and also requires to switch the device on and offline. It is the similar concept of using Scatter except it signs the transaction offline, which greatly reduced the risk of your private key being hacked.

This method is good for people who have large holding to vote since you will never expose your private key to the internet which greatly reduced the risk of losing your private key.

A more detailed information is available here.

4. EOSC

EOSC is a cross-platform (Windows, Mac, and Linux) command-line tool for interacting with an EOS.IO blockchain. It contains tools for voting and a Vault to securely store private keys.

It is based on the eos-go library, used in eos-bios, the tool used to launch the EOS mainnet.

This first release holds simple tools, but a whole cleos-like swiss-knife is being developed and will be released shortly after mainnet launch. Source code for most operations is already available in this repository. EOS9CATonly recommends EOSC to the advanced users who have experience with command line interface.

The detailed instruction is here.

eosc.png

5. CLESO

This is part of the functionality of the EOS.IO software provided by Block.one. Since it is also a command line interface tool.

This approach is only recommended if you are an advanced blockchain programmer. Here is the detailed instruction on how to vote using Cleso.

eos9cat - how to vote for us.png

CONCLUSION

In conclusion, if you are holding a small amount of token, as long as make sure your computer is free of virus, the chance of your private key being hacked is slim when you are using one of those online voting tools: Scatter, EOS Voter.

If you have a large holding, the offline tool is safer to use because it reduces the risk of exposing your private key to the internet.

If you are an advanced blockchain user, feel free to use any of those tools that you are comfortable with.

If you like what we do and believe in EOS9CAT, vote for eosninecatbp! Waiting for your support. Have a question, send an email us or visit our website

FOLLOW US on FacebookTelegramMediumSteemItGithubMeetup E0S9CATReddit, and Twitter.

Read More

How to claim your BP REWARD!

BLOCK PRODUCER REWARDS

In the EOS ecosystem, Block Producers replace the concept of “miners” as the custodians of the network, running the underlying network layer to process all transactions.

There will be 21 active block producers and an estimated 100 standby block producers. According to the release of Introducing EOSIO Dawn 4.0 The top 21 active block producers will earn a 0.25% per block reward on a pro-rata basis to the number of blocks each one produces. All block producers (active + standby) will also earn a .75% per vote reward on a pro-rata basis to the total number of votes they receive.

Let’s do a quick and simple math. Theoretically, in the EOS launch’s first year –

  • 900M EOS (circulation) x 1% for the Block Producers = 9M EOS tokens
  • Therefore approximately annually per block reward = 900M EOS x 0.25% = 2.25M EOS tokens, additionally annually per vote reward = 1 billion x 0.75% = 7.5M EOS tokens. In today’s value, 1 EOS token is about 8.65USD (2018-07-05), the annual reward will be 86,500,000USD in total.

From the link EOS Tracker – Producers, we also could find that the top 54 block producers (vote rate more than 0.5%) are all able to earn and claim the reward. Running Block Producer is not cheap. The reward is how Blocker Producer will be paid for free transactions, infrastructure upgrades, community support, dAPPS, scaling the systems, labor cost and etc. At the same time, due to the demand for tokens from dAPP developers, the token price will go up. A good ecosystem makes everybody win.

DEMO – ‘CLAIM THE REWARD’

Today, EOS9CAT team would like to show you how we claim the reward as a Block Producer.

Demo Environment:

eosninecatmx_votes

STEP 1: LET’S START THE KEOSD AND UNLOCK THE WALLET.

STEP 2: CHECK THE CURRENCY BALANCE OF OUR BP ACCOUNT.

./cleos.sh get currency balance eosio.token eosninecatmx

currency_balance_before_claim

Now currently our balance is 14838.6695 EOS.

STEP 3: CLAIM THE REWARD

./cleos.sh system claimrewards eosninecatmx -p eosninecatmx

claim_reward

As we can see:

  1. “73334.1472 EOS” – issue tokens for producer pay and savings
  2. “58667.3178 EOS” – unallocated inflation (to eosio.saving)
  3. “3666.7073 EOS” – fund per-block bucket (to eosio.bpay)
  4. “11000.1221 EOS” – fund per-vote bucket (to eosio.vpay)

And then, here is our reward:

  1. “3480.1169 EOS” – producer block pay (from eosio.bpay to eosninecatmx)
  2. “9714.5938 EOS” – producer vote pay (from eosio.vpay to eosninecatmx)

Total: 13194.7107 EOS = 114,134.25USD ($8.65USD)

STEP 4: CHECK THE CURRENCY BALANCE OF OUR BP ACCOUNT AGAIN.

./cleos.sh get currency balance eosio.token eosninecatmx

currency_balance_after_claim

After the reward claim, the balance became 28033.3802 EOS. The diff between those two balance was the reward we earned by producing the blocks and the votes.

The final reward which a BP could claim depends on a lot of assumptions and different situation. So far, the reward in the ecosystem is one of the most important reasons why everyone is eager for an active Block Producer.

CONTACT/ABOUT US

If you are an advanced blockchain user, feel free to use any of those tools that you are comfortable with.

If you like what we do and believe in EOS9CAT, vote for eosninecatbp! Waiting for your support. Have a question, send an email us or visit our website

FOLLOW US on FacebookTelegramMediumSteemItGithubMeetup E0S9CATReddit, and Twitter.

Read More

The Meaning of Decentralization?

Our team, EOS9CAT came with a very short explanation and hope it would be helpful for everyone here.

Distributed means not all the processing of the transactions are done in the same place. This does not mean that those distributed processors aren’t under the control of a single entity. (Think of gas stations, there are Shell stations all over yet all are Shell)

Decentralized means that not one single entity has control over all the processing. By nature, this implies that it is distributed among various parties.

eos9cat

CONTACT/ABOUT US

If you are an advanced blockchain user, feel free to use any of those tools that you are comfortable with.

If you like what we do and believe in EOS9CAT, vote for eosninecatbp! Waiting for your support. Have a question, send an email us or visit our website

FOLLOW US on FacebookTelegramMediumSteemItGithubMeetup E0S9CATReddit, and Twitter.

Read More
Top

Enjoy this blog? Please spread the word :)