VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS74.81%
Net Worth
1.602USD
STEEM
0.000STEEM
SBD
0.169SBD
Own SP
26.225SP
Detailed Balance
| STEEM | ||
| balance | 0.000STEEM | STEEM |
| market_balance | 0.000STEEM | STEEM |
| savings_balance | 0.000STEEM | STEEM |
| reward_steem_balance | 0.000STEEM | STEEM |
| STEEM POWER | ||
| Own SP | 26.225SP | SP |
| Delegated Out | 0.000SP | SP |
| Delegation In | 0.000SP | SP |
| Effective Power | 26.225SP | SP |
| Reward SP (pending) | 0.000SP | SP |
| SBD | ||
| sbd_balance | 0.169SBD | SBD |
| sbd_conversions | 0.000SBD | SBD |
| sbd_market_balance | 0.000SBD | SBD |
| savings_sbd_balance | 0.000SBD | SBD |
| reward_sbd_balance | 0.000SBD | SBD |
{
"balance": "0.000 STEEM",
"savings_balance": "0.000 STEEM",
"reward_steem_balance": "0.000 STEEM",
"vesting_shares": "42654.550399 VESTS",
"delegated_vesting_shares": "0.000000 VESTS",
"received_vesting_shares": "0.000000 VESTS",
"sbd_balance": "0.169 SBD",
"savings_sbd_balance": "0.000 SBD",
"reward_sbd_balance": "0.000 SBD",
"conversions": []
}Account Info
| name | calmlake79 |
| id | 664044 |
| rank | 68,473 |
| reputation | 156397025200 |
| created | 2018-01-25T04:58:36 |
| recovery_account | steem |
| proxy | None |
| post_count | 55 |
| comment_count | 0 |
| lifetime_vote_count | 0 |
| witnesses_voted_for | 0 |
| last_post | 2018-06-20T01:56:06 |
| last_root_post | 2018-05-14T09:52:48 |
| last_vote_time | 2018-05-15T15:11:45 |
| proxied_vsf_votes | 0, 0, 0, 0 |
| can_vote | 1 |
| voting_power | 9,800 |
| delayed_votes | 0 |
| balance | 0.000 STEEM |
| savings_balance | 0.000 STEEM |
| sbd_balance | 0.169 SBD |
| savings_sbd_balance | 0.000 SBD |
| vesting_shares | 42654.550399 VESTS |
| delegated_vesting_shares | 0.000000 VESTS |
| received_vesting_shares | 0.000000 VESTS |
| reward_vesting_balance | 0.000000 VESTS |
| vesting_balance | 0.000 STEEM |
| vesting_withdraw_rate | 0.000000 VESTS |
| next_vesting_withdrawal | 1969-12-31T23:59:59 |
| withdrawn | 0 |
| to_withdraw | 0 |
| withdraw_routes | 0 |
| savings_withdraw_requests | 0 |
| last_account_recovery | 1970-01-01T00:00:00 |
| reset_account | null |
| last_owner_update | 1970-01-01T00:00:00 |
| last_account_update | 2018-01-25T05:12:30 |
| mined | No |
| sbd_seconds | 191,030,712 |
| sbd_last_interest_payment | 2018-04-19T11:32:15 |
| savings_sbd_last_interest_payment | 1970-01-01T00:00:00 |
{
"id": 664044,
"name": "calmlake79",
"owner": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM6DgfXkzqXR2YxM98HQ9Lg1ThVADEcFGDZ2yY5b7ruitvfC8yrp",
1
]
]
},
"active": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM5aNufyeorQkCkk1y75R7ty2wPNR2YkRZWBu1TmscG3Zn38fBay",
1
]
]
},
"posting": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM5EmR8ZaH9rXQWDhikDm4pLArDYg47Yrj9MYSi4bgWPjrjVWdC6",
1
]
]
},
"memo_key": "STM6GZ45TnXk1B36PE1uaQWtFzgFSHNJcz6y9GoArDLhkSqCZBVK5",
"json_metadata": "{\"profile\":{\"profile_image\":\"https://steemitimages.com/DQmQ5a3h1z2uGvmabAKJN1dnrgNPnePU1MhmSfppo2B82oB/24991457_909330192574202_8389185614686426350_n.jpg\",\"cover_image\":\"https://steemitimages.com/DQmY6pTQmG15qJHnZP6PQumyrG6iEYMpqtvt3hajMMCGmwz/24231818_906802492826972_8513262920647644335_n.jpg\",\"name\":\"해리슨\",\"about\":\"안녕하세요 해리슨입니다.\",\"location\":\"서울\"}}",
"posting_json_metadata": "{\"profile\":{\"profile_image\":\"https://steemitimages.com/DQmQ5a3h1z2uGvmabAKJN1dnrgNPnePU1MhmSfppo2B82oB/24991457_909330192574202_8389185614686426350_n.jpg\",\"cover_image\":\"https://steemitimages.com/DQmY6pTQmG15qJHnZP6PQumyrG6iEYMpqtvt3hajMMCGmwz/24231818_906802492826972_8513262920647644335_n.jpg\",\"name\":\"해리슨\",\"about\":\"안녕하세요 해리슨입니다.\",\"location\":\"서울\"}}",
"proxy": "",
"last_owner_update": "1970-01-01T00:00:00",
"last_account_update": "2018-01-25T05:12:30",
"created": "2018-01-25T04:58:36",
"mined": false,
"recovery_account": "steem",
"last_account_recovery": "1970-01-01T00:00:00",
"reset_account": "null",
"comment_count": 0,
"lifetime_vote_count": 0,
"post_count": 55,
"can_vote": true,
"voting_manabar": {
"current_mana": 9800,
"last_update_time": 1526397105
},
"downvote_manabar": {
"current_mana": 0,
"last_update_time": 1516856316
},
"voting_power": 9800,
"balance": "0.000 STEEM",
"savings_balance": "0.000 STEEM",
"sbd_balance": "0.169 SBD",
"sbd_seconds": "191030712",
"sbd_seconds_last_update": "2018-05-18T13:44:57",
"sbd_last_interest_payment": "2018-04-19T11:32:15",
"savings_sbd_balance": "0.000 SBD",
"savings_sbd_seconds": "0",
"savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
"savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
"savings_withdraw_requests": 0,
"reward_sbd_balance": "0.000 SBD",
"reward_steem_balance": "0.000 STEEM",
"reward_vesting_balance": "0.000000 VESTS",
"reward_vesting_steem": "0.000 STEEM",
"vesting_shares": "42654.550399 VESTS",
"delegated_vesting_shares": "0.000000 VESTS",
"received_vesting_shares": "0.000000 VESTS",
"vesting_withdraw_rate": "0.000000 VESTS",
"next_vesting_withdrawal": "1969-12-31T23:59:59",
"withdrawn": 0,
"to_withdraw": 0,
"withdraw_routes": 0,
"curation_rewards": 4,
"posting_rewards": 12810,
"proxied_vsf_votes": [
0,
0,
0,
0
],
"witnesses_voted_for": 0,
"last_post": "2018-06-20T01:56:06",
"last_root_post": "2018-05-14T09:52:48",
"last_vote_time": "2018-05-15T15:11:45",
"post_bandwidth": 0,
"pending_claimed_accounts": 0,
"vesting_balance": "0.000 STEEM",
"reputation": "156397025200",
"transfer_history": [],
"market_history": [],
"post_history": [],
"vote_history": [],
"other_history": [],
"witness_votes": [],
"tags_usage": [],
"guest_bloggers": [],
"rank": 68473
}Withdraw Routes
| Incoming | Outgoing |
|---|---|
Empty | Empty |
{
"incoming": [],
"outgoing": []
}From Date
To Date
2020/01/25 05:14:57
2020/01/25 05:14:57
| parent author | calmlake79 |
| parent permlink | kubernetes-pod |
| author | steemitboard |
| permlink | steemitboard-notify-calmlake79-20200125t051457000z |
| title | |
| body | Congratulations @calmlake79! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@calmlake79/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@calmlake79) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=calmlake79)_</sub> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes! |
| json metadata | {"image":["https://steemitboard.com/img/notify.png"]} |
| Transaction Info | Block #40228480/Trx 5ddad31716c04ca1573d843ff156bdfc0e5b9817 |
View Raw JSON Data
{
"trx_id": "5ddad31716c04ca1573d843ff156bdfc0e5b9817",
"block": 40228480,
"trx_in_block": 4,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2020-01-25T05:14:57",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "kubernetes-pod",
"author": "steemitboard",
"permlink": "steemitboard-notify-calmlake79-20200125t051457000z",
"title": "",
"body": "Congratulations @calmlake79! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@calmlake79/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@calmlake79) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=calmlake79)_</sub>\n\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
"json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
}
]
}2019/01/25 06:27:09
2019/01/25 06:27:09
| parent author | calmlake79 |
| parent permlink | kubernetes-pod |
| author | steemitboard |
| permlink | steemitboard-notify-calmlake79-20190125t062708000z |
| title | |
| body | Congratulations @calmlake79! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@calmlake79/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table> <sub>_[Click here to view your Board](https://steemitboard.com/@calmlake79)_</sub> > Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**! |
| json metadata | {"image":["https://steemitboard.com/img/notify.png"]} |
| Transaction Info | Block #29757413/Trx 961ca41d268599f72d7683ab5d7c614d5cbd8a60 |
View Raw JSON Data
{
"trx_id": "961ca41d268599f72d7683ab5d7c614d5cbd8a60",
"block": 29757413,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2019-01-25T06:27:09",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "kubernetes-pod",
"author": "steemitboard",
"permlink": "steemitboard-notify-calmlake79-20190125t062708000z",
"title": "",
"body": "Congratulations @calmlake79! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@calmlake79/birthday1.png</td><td>Happy Birthday! - You are on the Steem blockchain for 1 year!</td></tr></table>\n\n<sub>_[Click here to view your Board](https://steemitboard.com/@calmlake79)_</sub>\n\n\n> Support [SteemitBoard's project](https://steemit.com/@steemitboard)! **[Vote for its witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1)** and **get one more award**!",
"json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
}
]
}omnitupvoted (100.00%) @calmlake79 / namecheap-gcp-ssl2018/06/22 16:00:57
omnitupvoted (100.00%) @calmlake79 / namecheap-gcp-ssl
2018/06/22 16:00:57
| voter | omnit |
| author | calmlake79 |
| permlink | namecheap-gcp-ssl |
| weight | 10000 (100.00%) |
| Transaction Info | Block #23549116/Trx de5f06332cb739a1e8c9086c6a6d4ff02b63da10 |
View Raw JSON Data
{
"trx_id": "de5f06332cb739a1e8c9086c6a6d4ff02b63da10",
"block": 23549116,
"trx_in_block": 20,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-06-22T16:00:57",
"op": [
"vote",
{
"voter": "omnit",
"author": "calmlake79",
"permlink": "namecheap-gcp-ssl",
"weight": 10000
}
]
}2018/06/20 01:56:06
2018/06/20 01:56:06
| parent author | calmlake79 |
| parent permlink | kubernetes-in-google-cloud-platform-2 |
| author | calmlake79 |
| permlink | re-calmlake79-kubernetes-in-google-cloud-platform-2-20180620t015607251z |
| title | |
| body | 새로운 내용으로 업데이트. https://medium.com/@HarrisonJung/gke-6ea41f7e9f16 를 참고하세요. |
| json metadata | {"tags":["gcp"],"links":["https://medium.com/@HarrisonJung/gke-6ea41f7e9f16"],"app":"steemit/0.1"} |
| Transaction Info | Block #23474642/Trx a258703ed235a6719afe3ffd3bb4cecc58b5f0ef |
View Raw JSON Data
{
"trx_id": "a258703ed235a6719afe3ffd3bb4cecc58b5f0ef",
"block": 23474642,
"trx_in_block": 29,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-06-20T01:56:06",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "kubernetes-in-google-cloud-platform-2",
"author": "calmlake79",
"permlink": "re-calmlake79-kubernetes-in-google-cloud-platform-2-20180620t015607251z",
"title": "",
"body": "새로운 내용으로 업데이트.\nhttps://medium.com/@HarrisonJung/gke-6ea41f7e9f16\n를 참고하세요.",
"json_metadata": "{\"tags\":[\"gcp\"],\"links\":[\"https://medium.com/@HarrisonJung/gke-6ea41f7e9f16\"],\"app\":\"steemit/0.1\"}"
}
]
}calmlake79replied to @otac / re-otac-ccnex-20180523t060903350z2018/05/23 06:09:03
calmlake79replied to @otac / re-otac-ccnex-20180523t060903350z
2018/05/23 06:09:03
| parent author | otac |
| parent permlink | ccnex |
| author | calmlake79 |
| permlink | re-otac-ccnex-20180523t060903350z |
| title | |
| body | ㅎㅎ 저 찾으셨나요. 챗봇 관련 자료 찾다가 우연히 발견했네요. ㅎㅎ 요즘은 챗봇 하고 있습니다. |
| json metadata | {"tags":["kr"],"app":"steemit/0.1"} |
| Transaction Info | Block #22674448/Trx 0dd9e38089ea4049dce31f548777d3aa725beba7 |
View Raw JSON Data
{
"trx_id": "0dd9e38089ea4049dce31f548777d3aa725beba7",
"block": 22674448,
"trx_in_block": 79,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-23T06:09:03",
"op": [
"comment",
{
"parent_author": "otac",
"parent_permlink": "ccnex",
"author": "calmlake79",
"permlink": "re-otac-ccnex-20180523t060903350z",
"title": "",
"body": "ㅎㅎ 저 찾으셨나요. 챗봇 관련 자료 찾다가 우연히 발견했네요. ㅎㅎ\n요즘은 챗봇 하고 있습니다.",
"json_metadata": "{\"tags\":[\"kr\"],\"app\":\"steemit/0.1\"}"
}
]
}calmlake79claimed reward balance: 0.093 SBD, 0.040 SP2018/05/18 13:44:57
calmlake79claimed reward balance: 0.093 SBD, 0.040 SP
2018/05/18 13:44:57
| account | calmlake79 |
| reward steem | 0.000 STEEM |
| reward sbd | 0.093 SBD |
| reward vests | 65.114515 VESTS |
| Transaction Info | Block #22539592/Trx 10c10edb13eb8b524c5e8ec7295f58e024e003c0 |
View Raw JSON Data
{
"trx_id": "10c10edb13eb8b524c5e8ec7295f58e024e003c0",
"block": 22539592,
"trx_in_block": 49,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-18T13:44:57",
"op": [
"claim_reward_balance",
{
"account": "calmlake79",
"reward_steem": "0.000 STEEM",
"reward_sbd": "0.093 SBD",
"reward_vests": "65.114515 VESTS"
}
]
}calmlake79received 0.093 SBD, 0.040 SP author reward for @calmlake79 / gcp-memorystore-redis2018/05/17 02:03:57
calmlake79received 0.093 SBD, 0.040 SP author reward for @calmlake79 / gcp-memorystore-redis
2018/05/17 02:03:57
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| sbd payout | 0.093 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 65.114515 VESTS |
| Transaction Info | Block #22496779/Virtual Operation #20 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 22496779,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 20,
"timestamp": "2018-05-17T02:03:57",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"sbd_payout": "0.093 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "65.114515 VESTS"
}
]
}calmlake79upvoted (100.00%) @calmlake79 / gcp-memorystore-redis2018/05/15 15:11:45
calmlake79upvoted (100.00%) @calmlake79 / gcp-memorystore-redis
2018/05/15 15:11:45
| voter | calmlake79 |
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22454943/Trx 6469a7012ecfe7ec091cc16bf525c02011065c8c |
View Raw JSON Data
{
"trx_id": "6469a7012ecfe7ec091cc16bf525c02011065c8c",
"block": 22454943,
"trx_in_block": 10,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-15T15:11:45",
"op": [
"vote",
{
"voter": "calmlake79",
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"weight": 10000
}
]
}omnitupvoted (100.00%) @calmlake79 / kubernetes-pod2018/05/14 10:36:00
omnitupvoted (100.00%) @calmlake79 / kubernetes-pod
2018/05/14 10:36:00
| voter | omnit |
| author | calmlake79 |
| permlink | kubernetes-pod |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22420630/Trx 1bc2761c8629c233bbd8a09328aeb598c4661702 |
View Raw JSON Data
{
"trx_id": "1bc2761c8629c233bbd8a09328aeb598c4661702",
"block": 22420630,
"trx_in_block": 24,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-14T10:36:00",
"op": [
"vote",
{
"voter": "omnit",
"author": "calmlake79",
"permlink": "kubernetes-pod",
"weight": 10000
}
]
}calmlake79published a new post: kubernetes-pod2018/05/14 09:52:48
calmlake79published a new post: kubernetes-pod
2018/05/14 09:52:48
| parent author | |
| parent permlink | kubernetes |
| author | calmlake79 |
| permlink | kubernetes-pod |
| title | kubernetes 에서 Pod 균등 분배하기 |
| body |  쿠베를 사용하다 보니, 특정 노드에 모든 Pod이 몰리는 현상이 발생했다. 이러면 곤란한데... 애초에 쿠베를 사용하는 이유가 모든 노드에 균등하게 부하를 분산시켜서 안정적으로 서비스 하기 위함 + 한대의 서버가 문제가 생겨도 전체적으로 문제없이 서비스를 제공하기 위함인데, 한곳에 몰렸다가 특정서버가 뻗어 버리거나 할경우에는.. 전체적으로 문제가 생길 수도 있고, 다양한 케이스가 발생할 수도 있으니, 방법을 찾아야 했다. /* 참고자료1 : https://bluefriday.github.io/blog/2017/10/31/Manually-schedule-a-pod-without-a-scheduler/ 참고자료2 : https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#never-co-located-in-the-same-node */ 검색하는 키워드는 어려웠지만, 해결법은 간단. [ 참고자료2 ] 에서 [ Never co-located in the same node ] 부분을 참조하면 된다. ```YAML spec: affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: app operator: In values: - app-name topologyKey: "kubernetes.io/hostname" ``` ( 여기서 app-name 은 해당 workload 이름이다 ) 위의 자료대로 YAML을 업데이트 하고 나면 잠시 경고 메시지가 뜬뒤 해당 workload에 대해서 스케쥴링이 새로 시작하고 잠시후 확인해 보면 여러 노드에 균등하게 분배됨을 알 수 있다. |
| json metadata | {"tags":["kubernetes","pod","spread","gcp","gke"],"image":["https://steemitimages.com/DQmS8YruQ3Mi6NoVfcZU9zbQBkQAFfbA2zWsG3ye1QUiy1J/screenshot%202018-05-14%2017.59.46.png"],"links":["https://bluefriday.github.io/blog/2017/10/31/Manually-schedule-a-pod-without-a-scheduler/","https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#never-co-located-in-the-same-node"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #22419766/Trx a2c33b2bef800df40a711ba181fa457a927fe671 |
View Raw JSON Data
{
"trx_id": "a2c33b2bef800df40a711ba181fa457a927fe671",
"block": 22419766,
"trx_in_block": 23,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-14T09:52:48",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kubernetes",
"author": "calmlake79",
"permlink": "kubernetes-pod",
"title": "kubernetes 에서 Pod 균등 분배하기",
"body": "\n\n쿠베를 사용하다 보니, 특정 노드에 모든 Pod이 몰리는 현상이 발생했다.\n이러면 곤란한데...\n\n애초에 쿠베를 사용하는 이유가 모든 노드에 균등하게 부하를 분산시켜서 안정적으로 서비스 하기 위함 + 한대의 서버가 문제가 생겨도 전체적으로 문제없이 서비스를 제공하기 위함인데, 한곳에 몰렸다가 특정서버가 뻗어 버리거나 할경우에는.. 전체적으로 문제가 생길 수도 있고, 다양한 케이스가 발생할 수도 있으니, 방법을 찾아야 했다.\n\n/* \n참고자료1 : https://bluefriday.github.io/blog/2017/10/31/Manually-schedule-a-pod-without-a-scheduler/ \n참고자료2 : https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#never-co-located-in-the-same-node\n*/\n\n검색하는 키워드는 어려웠지만, 해결법은 간단.\n\n[ 참고자료2 ] 에서 [ Never co-located in the same node ] 부분을 참조하면 된다.\n\n```YAML\nspec:\n affinity:\n podAntiAffinity:\n requiredDuringSchedulingIgnoredDuringExecution:\n - labelSelector:\n matchExpressions:\n - key: app\n operator: In\n values:\n - app-name\n topologyKey: \"kubernetes.io/hostname\"\n```\n( 여기서 app-name 은 해당 workload 이름이다 ) \n\n위의 자료대로 YAML을 업데이트 하고 나면 잠시 경고 메시지가 뜬뒤 해당 workload에 대해서 스케쥴링이 새로 시작하고 잠시후 확인해 보면 여러 노드에 균등하게 분배됨을 알 수 있다.",
"json_metadata": "{\"tags\":[\"kubernetes\",\"pod\",\"spread\",\"gcp\",\"gke\"],\"image\":[\"https://steemitimages.com/DQmS8YruQ3Mi6NoVfcZU9zbQBkQAFfbA2zWsG3ye1QUiy1J/screenshot%202018-05-14%2017.59.46.png\"],\"links\":[\"https://bluefriday.github.io/blog/2017/10/31/Manually-schedule-a-pod-without-a-scheduler/\",\"https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#never-co-located-in-the-same-node\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}johnyiupvoted (100.00%) @calmlake79 / namecheap-gcp-ssl2018/05/14 07:06:21
johnyiupvoted (100.00%) @calmlake79 / namecheap-gcp-ssl
2018/05/14 07:06:21
| voter | johnyi |
| author | calmlake79 |
| permlink | namecheap-gcp-ssl |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22416437/Trx 98a6e93a8631855aa70d11dbb63e4b087b3e9a91 |
View Raw JSON Data
{
"trx_id": "98a6e93a8631855aa70d11dbb63e4b087b3e9a91",
"block": 22416437,
"trx_in_block": 13,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-14T07:06:21",
"op": [
"vote",
{
"voter": "johnyi",
"author": "calmlake79",
"permlink": "namecheap-gcp-ssl",
"weight": 10000
}
]
}calmlake79published a new post: namecheap-gcp-ssl2018/05/14 05:47:42
calmlake79published a new post: namecheap-gcp-ssl
2018/05/14 05:47:42
| parent author | |
| parent permlink | gcp |
| author | calmlake79 |
| permlink | namecheap-gcp-ssl |
| title | Namecheap 에서 GCP용 SSL 인증서 만들기 |
| body | 요즘 무료로 인증서를 만들어주는 Let's Encrypt 같은 서비스가 있긴 하지만,여러가지 이유로 유료 인증서를 써야 하는 경우가 있다. 그런 경우 상대적으로 저렴한 Namecheap 에서 인증서를 구입할 수 있는데, 과정이 만만치가 않다. ( 돈주고 하는건데도 편리하지 않다는 게... ) 우선 구입 과정은 각자 알아서 하고 (...) CSR을 만드는 과정부터 보자. ( https://www.namecheap.com/support/knowledgebase/article.aspx/9852/0/csrgoogle 참고 ) ```bash harrisonjung@cloudturing-2017-05-18:~/cert/dreamyoungs.com$ openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr Generating a 2048 bit RSA private key .........................+++ .......................................................................................................................................................+++ writing new private key to 'server.key' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:KR State or Province Name (full name) [Some-State]:SEOUL Locality Name (eg, city) []:MAPOGU Organization Name (eg, company) [Internet Widgits Pty Ltd]:Dreamyoungs,Inc. Organizational Unit Name (eg, section) []:Web Common Name (e.g. server FQDN or YOUR name) []:dreamyoungs.com Email Address []:[email protected] Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:Dreamyoungs,Inc. ``` 위와 같이 하면 server.key 와 server.csr 의 두개의 파일이 생성된다. ( server.key는 당장 쓰지 않는데 굉장히 중요한 파일이다. 이거 몰라서 1시간 고생했다. ) 우선 csr 파일을 가져다가 namecheap에 업로드를 한다. 이메일을 선택하고 나면 다음과 같은 화면을 볼 수 있다.  이메일함을 확인하면 이메일이 하나 와 있고, 컨펌을 하면 다음과 같은 화면을 볼 수 있다. 컨펌을 하고 나면 이메일이 오는데 그 이메일에 있는 첨부파일을 열어보자. 2개의 파일이 있다. 잘 보관한다. 다음으로 구글의 Cloud Network 로 가서 인증서를 생성을 해야 한다.  위의 화면을 가면 순서대로 입력을 해야 하는데, 먼저 맨위의 공개 키 인증서에는 crt 파일을 업로드 한다. 다음으로 인증서 체인은 CA-bundle 에 있는 내용을 입력하고, 마지막으로 비공개키에는 앞에서 만든 server.key 의 내용을 업로드 하면 된다. 이렇게 해서 잘 적용되었나를 확인해 보면 되는데, 적용을 한뒤에 다음 사이트 ( https://decoder.link/sslchecker ) 를 통해서 확인을 해보면 된다. * 이상하게 이메일이 아닌 사이트에 가서 다운로드를 받은걸로 하면 잘 안된다. 이유가 뭘까.. |
| json metadata | {"tags":["gcp","namecheap","ssl","https"],"image":["https://steemitimages.com/DQmTomXX7ttm3i1AQ5iKHnGgryVycRarUn3gcHKBC48WpWB/screenshot%202018-05-14%2012.28.54.png","https://steemitimages.com/DQmYGyxD9VzCetANe8pCW5sSHVLX1Aagv7o7FW9WPpYL3PL/screenshot%202018-05-14%2012.58.30.png"],"links":["https://www.namecheap.com/support/knowledgebase/article.aspx/9852/0/csrgoogle","https://decoder.link/sslchecker"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #22414864/Trx b860da17497a7eff8ff3b545c3902c33c0604d28 |
View Raw JSON Data
{
"trx_id": "b860da17497a7eff8ff3b545c3902c33c0604d28",
"block": 22414864,
"trx_in_block": 16,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-14T05:47:42",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "gcp",
"author": "calmlake79",
"permlink": "namecheap-gcp-ssl",
"title": "Namecheap 에서 GCP용 SSL 인증서 만들기",
"body": "요즘 무료로 인증서를 만들어주는 Let's Encrypt 같은 서비스가 있긴 하지만,여러가지 이유로 유료 인증서를 써야 하는 경우가 있다.\n그런 경우 상대적으로 저렴한 Namecheap 에서 인증서를 구입할 수 있는데, 과정이 만만치가 않다.\n( 돈주고 하는건데도 편리하지 않다는 게... )\n\n우선 구입 과정은 각자 알아서 하고 (...)\n\nCSR을 만드는 과정부터 보자.\n( https://www.namecheap.com/support/knowledgebase/article.aspx/9852/0/csrgoogle 참고 )\n\n```bash\nharrisonjung@cloudturing-2017-05-18:~/cert/dreamyoungs.com$ openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr\nGenerating a 2048 bit RSA private key\n.........................+++\n.......................................................................................................................................................+++\nwriting new private key to 'server.key'\n-----\nYou are about to be asked to enter information that will be incorporated\ninto your certificate request.\nWhat you are about to enter is what is called a Distinguished Name or a DN.\nThere are quite a few fields but you can leave some blank\nFor some fields there will be a default value,\nIf you enter '.', the field will be left blank.\n-----\nCountry Name (2 letter code) [AU]:KR\nState or Province Name (full name) [Some-State]:SEOUL\nLocality Name (eg, city) []:MAPOGU\nOrganization Name (eg, company) [Internet Widgits Pty Ltd]:Dreamyoungs,Inc.\nOrganizational Unit Name (eg, section) []:Web\nCommon Name (e.g. server FQDN or YOUR name) []:dreamyoungs.com\nEmail Address []:[email protected]\n\nPlease enter the following 'extra' attributes\nto be sent with your certificate request\nA challenge password []:\nAn optional company name []:Dreamyoungs,Inc.\n```\n\n위와 같이 하면 server.key 와 server.csr 의 두개의 파일이 생성된다.\n( server.key는 당장 쓰지 않는데 굉장히 중요한 파일이다. 이거 몰라서 1시간 고생했다. )\n\n우선 csr 파일을 가져다가 namecheap에 업로드를 한다.\n\n이메일을 선택하고 나면 다음과 같은 화면을 볼 수 있다.\n\n\n\n이메일함을 확인하면 이메일이 하나 와 있고, 컨펌을 하면 다음과 같은 화면을 볼 수 있다.\n컨펌을 하고 나면 이메일이 오는데 그 이메일에 있는 첨부파일을 열어보자.\n2개의 파일이 있다. 잘 보관한다.\n\n다음으로 구글의 Cloud Network 로 가서 인증서를 생성을 해야 한다.\n\n\n\n위의 화면을 가면 순서대로 입력을 해야 하는데, 먼저 맨위의 공개 키 인증서에는 crt 파일을 업로드 한다.\n\n다음으로 인증서 체인은 CA-bundle 에 있는 내용을 입력하고, 마지막으로 비공개키에는 앞에서 만든 server.key 의 내용을 업로드 하면 된다.\n\n이렇게 해서 잘 적용되었나를 확인해 보면 되는데, 적용을 한뒤에 다음 사이트 ( https://decoder.link/sslchecker ) 를 통해서 확인을 해보면 된다.\n\n* 이상하게 이메일이 아닌 사이트에 가서 다운로드를 받은걸로 하면 잘 안된다. 이유가 뭘까..",
"json_metadata": "{\"tags\":[\"gcp\",\"namecheap\",\"ssl\",\"https\"],\"image\":[\"https://steemitimages.com/DQmTomXX7ttm3i1AQ5iKHnGgryVycRarUn3gcHKBC48WpWB/screenshot%202018-05-14%2012.28.54.png\",\"https://steemitimages.com/DQmYGyxD9VzCetANe8pCW5sSHVLX1Aagv7o7FW9WPpYL3PL/screenshot%202018-05-14%2012.58.30.png\"],\"links\":[\"https://www.namecheap.com/support/knowledgebase/article.aspx/9852/0/csrgoogle\",\"https://decoder.link/sslchecker\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}calmlake79published a new post: 3s5m6n-gcp-memorystore-redis2018/05/10 04:02:39
calmlake79published a new post: 3s5m6n-gcp-memorystore-redis
2018/05/10 04:02:39
| parent author | |
| parent permlink | gcp |
| author | calmlake79 |
| permlink | 3s5m6n-gcp-memorystore-redis |
| title | GCP의 새로운 Memorystore - Redis 벤치마크 |
| body | 새로 출시된 Memorystore 의 성능이 매우 궁금하여. 벤치마크를 해봤다. 우선 스펙은 가장 기초가 되는 Basic - M1 ( 1GB )기준으로 확인했다. 결과 부터 먼저 말하자면, "성능은 네트워크에 따라가더라.."라는 내용. 테스트를 위해 다음과 같은 Node.js 코드를 작성했다. ```javascript global.redis = require('redis') .createClient( "6379" , "10.0.4.3" ); redis.ping( function( err , result ){ if( err ){ console.error("[ Redis ] : Check Failed :",err ); errors.report(err); }else{ console.log("[ Redis ] : Check OK!"); } }); let countpersec = 0; const HsetTest = ()=>{ countpersec++; let key = Math.round(Math.random()*100000000); let name = ("000000"+key).slice(-6); redis.hset( `htest:${key%1000}` , name , JSON.stringify({ key: key, name: name }) , ( err , result )=>{ if( err ){ console.error( "redis:error" ); console.error( err ); return; } redis.hget( `htest:${key%1000}` , name , ( err , result )=>{ if( err ){ console.error( "redis:error" ); console.error( err ); return; } HsetTest(); }); }); }; HsetTest(); HsetTest(); HsetTest(); HsetTest(); setInterval(()=>{ console.log( countpersec ); countpersec = 0; },1000); ``` 내용은 간단히 한번 호출을 하고 나면 올때까지 기다리고, 다시 반복하는 형태로 초당 몇번이나 호출하는지 1초마다 화면에 출력하도록 해놨다. -----   현재 화면에는 9대만 있는데 실제로는 10대. 즉 초당 6.2만건의 hset / 6.2만건의 hget 을 하고 있는것이다. 재미있는것은 다음 화면을 보자.  in 을 보면 약 320MB/s , out 이 110 MB/s 다. 1GB 용량기준으로 네트워크 처리량이 375MB/s 라는걸 감안하면.. 거의 성능은 네트워크에 의해 결정된다는 의미다. 약간 다른 케이스이긴 한데, 예전에 했던 벤치마크의 경우 n1-standard1 의 경우 초당 약 1.5만건 정도 나왔던것으로 기억한다. 가성비는 굉장히 좋은듯하다. 다행이다 ㅎㅎ |
| json metadata | {"tags":["gcp","kr","memorystore","redis","cloud"],"image":["https://steemitimages.com/DQmcKTNtyN2rot5SNbmPcZTiMP5M32e1gXJznqQEN9KXizV/screenshot%202018-05-10%2012.34.48.png","https://steemitimages.com/DQmYdazq9cij1CYkNAZfWTVVXQoSv5pgzoabqUAD2PednGQ/screenshot%202018-05-10%2012.34.30.png","https://steemitimages.com/DQmUD2im4qfGiWPhVsHGyrLckg819JuSaLcHzf7UUoMCU9K/screenshot%202018-05-10%2012.37.07.png"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #22297579/Trx 929bde6220b9a1e9962c6ee9cf7f9fbc6553fef4 |
View Raw JSON Data
{
"trx_id": "929bde6220b9a1e9962c6ee9cf7f9fbc6553fef4",
"block": 22297579,
"trx_in_block": 5,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-10T04:02:39",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "gcp",
"author": "calmlake79",
"permlink": "3s5m6n-gcp-memorystore-redis",
"title": "GCP의 새로운 Memorystore - Redis 벤치마크",
"body": "새로 출시된 Memorystore 의 성능이 매우 궁금하여.\n벤치마크를 해봤다.\n\n우선 스펙은 가장 기초가 되는 Basic - M1 ( 1GB )기준으로 확인했다.\n결과 부터 먼저 말하자면, \"성능은 네트워크에 따라가더라..\"라는 내용.\n\n테스트를 위해 다음과 같은 Node.js 코드를 작성했다.\n```javascript\nglobal.redis = require('redis')\n.createClient( \"6379\" , \"10.0.4.3\" );\n\nredis.ping( function( err , result ){\n if( err ){\n console.error(\"[ Redis ] : Check Failed :\",err );\n errors.report(err);\n }else{\n console.log(\"[ Redis ] : Check OK!\");\n }\n});\n\nlet countpersec = 0;\nconst HsetTest = ()=>{\n countpersec++;\n\n let key = Math.round(Math.random()*100000000);\n let name = (\"000000\"+key).slice(-6);\n\n redis.hset( `htest:${key%1000}` , name , JSON.stringify({\n key: key,\n name: name\n }) , ( err , result )=>{\n if( err ){\n console.error( \"redis:error\" );\n console.error( err );\n return;\n }\n\n redis.hget( `htest:${key%1000}` , name , ( err , result )=>{\n if( err ){\n console.error( \"redis:error\" );\n console.error( err );\n return;\n }\n\n HsetTest();\n });\n });\n};\n\nHsetTest();\nHsetTest();\nHsetTest();\nHsetTest();\n\nsetInterval(()=>{\n console.log( countpersec );\n countpersec = 0;\n},1000);\n```\n\n내용은 간단히 한번 호출을 하고 나면 올때까지 기다리고, 다시 반복하는 형태로 초당 몇번이나 호출하는지 1초마다 화면에 출력하도록 해놨다.\n\n-----\n\n\n\n\n\n현재 화면에는 9대만 있는데 실제로는 10대.\n\n즉 초당 6.2만건의 hset / 6.2만건의 hget 을 하고 있는것이다.\n\n재미있는것은 다음 화면을 보자.\n\n\n\nin 을 보면 약 320MB/s , out 이 110 MB/s 다.\n1GB 용량기준으로 네트워크 처리량이 375MB/s 라는걸 감안하면.. 거의 성능은 네트워크에 의해 결정된다는 의미다.\n\n약간 다른 케이스이긴 한데, 예전에 했던 벤치마크의 경우 n1-standard1 의 경우 초당 약 1.5만건 정도 나왔던것으로 기억한다.\n\n가성비는 굉장히 좋은듯하다. 다행이다 ㅎㅎ",
"json_metadata": "{\"tags\":[\"gcp\",\"kr\",\"memorystore\",\"redis\",\"cloud\"],\"image\":[\"https://steemitimages.com/DQmcKTNtyN2rot5SNbmPcZTiMP5M32e1gXJznqQEN9KXizV/screenshot%202018-05-10%2012.34.48.png\",\"https://steemitimages.com/DQmYdazq9cij1CYkNAZfWTVVXQoSv5pgzoabqUAD2PednGQ/screenshot%202018-05-10%2012.34.30.png\",\"https://steemitimages.com/DQmUD2im4qfGiWPhVsHGyrLckg819JuSaLcHzf7UUoMCU9K/screenshot%202018-05-10%2012.37.07.png\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}wonsamaupvoted (10.00%) @calmlake79 / gcp-memorystore-redis2018/05/10 03:20:06
wonsamaupvoted (10.00%) @calmlake79 / gcp-memorystore-redis
2018/05/10 03:20:06
| voter | wonsama |
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| weight | 1000 (10.00%) |
| Transaction Info | Block #22296728/Trx e1232e3eb241e82f60aff1d7253fbb62226c32a6 |
View Raw JSON Data
{
"trx_id": "e1232e3eb241e82f60aff1d7253fbb62226c32a6",
"block": 22296728,
"trx_in_block": 54,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-10T03:20:06",
"op": [
"vote",
{
"voter": "wonsama",
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"weight": 1000
}
]
}nurinamuupvoted (100.00%) @calmlake79 / gcp-memorystore-redis2018/05/10 02:39:57
nurinamuupvoted (100.00%) @calmlake79 / gcp-memorystore-redis
2018/05/10 02:39:57
| voter | nurinamu |
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22295925/Trx 6b4b5ccc595bb0fce82a56e3ecc0622306a5c3a9 |
View Raw JSON Data
{
"trx_id": "6b4b5ccc595bb0fce82a56e3ecc0622306a5c3a9",
"block": 22295925,
"trx_in_block": 19,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-10T02:39:57",
"op": [
"vote",
{
"voter": "nurinamu",
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"weight": 10000
}
]
}cowboybebopupvoted (100.00%) @calmlake79 / gcp-memorystore-redis2018/05/10 02:30:15
cowboybebopupvoted (100.00%) @calmlake79 / gcp-memorystore-redis
2018/05/10 02:30:15
| voter | cowboybebop |
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| weight | 10000 (100.00%) |
| Transaction Info | Block #22295731/Trx a310c2151958cb957a721968849bc2c4740553cb |
View Raw JSON Data
{
"trx_id": "a310c2151958cb957a721968849bc2c4740553cb",
"block": 22295731,
"trx_in_block": 48,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-10T02:30:15",
"op": [
"vote",
{
"voter": "cowboybebop",
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"weight": 10000
}
]
}ubgupvoted (1.00%) @calmlake79 / gcp-memorystore-redis2018/05/10 02:05:03
ubgupvoted (1.00%) @calmlake79 / gcp-memorystore-redis
2018/05/10 02:05:03
| voter | ubg |
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| weight | 100 (1.00%) |
| Transaction Info | Block #22295227/Trx 02d13307fb826d0bd20c96db155a90cebc521b2b |
View Raw JSON Data
{
"trx_id": "02d13307fb826d0bd20c96db155a90cebc521b2b",
"block": 22295227,
"trx_in_block": 11,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-10T02:05:03",
"op": [
"vote",
{
"voter": "ubg",
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"weight": 100
}
]
}calmlake79published a new post: gcp-memorystore-redis2018/05/10 02:03:57
calmlake79published a new post: gcp-memorystore-redis
2018/05/10 02:03:57
| parent author | |
| parent permlink | gcp |
| author | calmlake79 |
| permlink | gcp-memorystore-redis |
| title | GCP의 새로운 Memorystore - Redis 출시 |
| body | Google 의 Cloud Platform 에서 새로운 제품이 출시되었다. 개인적으로 올해초 Cloud Conference 때 알게된 제품중에서 가장 기다렸던 제품들중의 하나다. 이번에 새로 프로젝트를 시작하면서도 Memorystore의 출시를 가정해서 설계를 하고, 구현을 해왔던 제품이기도 하다. ( 사실 Redis 니까 그냥 IP만 바꾸면 되긴 하긴 하지만서도.. ) 우선 이번에 출시된 Memorystore 의 경우 간단히 말하면 Redis 의 구글판 매니지드(Managed) 서비스정도로 이해하면 딱 맞다. 매니지드 서비스들을 이해하자면 기본적으로 알려진 서비스들 ( 예를들면 MySQL , Redis 등등의 오픈소스들 ) 을 "관리"의 영역과 "개발"의 영역을 분리하는 서비스라고 생각하면 된다. 서버 운영에 있어서 필수적인 유지 운영 관리부분, 예를들면 서버를 업데이트 하거나, 보안 패치를 하거나 하는 등등의 상황을 대신 관리해주고, 기존과 같은 API , 시스템 , Port 등을 그대로 쓸 수 있는 서비스이다. 개발자 입장에서는 기존과 같은 방식으로 사용이 가능하고, 운영을 함에 있어서 업데이트나 리부팅등에 대한 부담을 덜 수 있어서 좋다. ( 물론 가격은 조금 더 비싸다. 관리비를 받는 셈이라.. ) 다음 메뉴를 보도록 하자.  저장소에 Memorystore가 추가된것을 알 수 있다. 메뉴를 들어가면 먼저 해당 API를 활성화 하는데 필요한 시간이 흐른후 사용이 가능하다. ( 사실 어제 처음 출시되었다고 포스팅이 올라오자 마자 들어갔다가 바로 활성화 하려고 했는데, 무슨 문제가 생겼는지 오류가 난뒤 화면을 갱신한뒤 사라졌다가 하루가 지난 오늘 다시 확인하니 열려 있었다. )  화면에서 인스턴트 만들기를 누르면 다음과 같은 화면이 나온다 ( 내용이 조금 많다. )  우선 인스턴스 ID는 사용할 ID를 입력한다. 사실 뭘로 입력을 하던 크게 상관은 없는데 다만, 여러대를 만들었을때 구분을 한다거나 혹은 gcloud를 이용해서 뭔가 작업을 할때 구분하기 위한 식별자 정도이다. 다음으로 인스턴스 이름은 단순히 표시를 위한 용도로 사용이 된다고 적혀 있다. 그냥 이름에 대한 설명정도? 현재 Redis 버전은 선택을 할 수 없다. 3.2 버전으로 제공이 되고 있다. Redis 공식 홈페이지에 가면 안정버전이 4.0인걸 감안하면 조금 아쉬운 부분이지만, 기존에 내가 쓰던것도 3.2 버전이니까 (...) 그냥 그럭저럭 만족하고 쓴다. ( 사실 ubuntu 에서 뭔가 특별히 하지 않고 그냥 설치하면 그정도 버전이 깔린다. ) 지역은 현재 선택 가능한것은 미국 서,중,동부 그리고 유럽 서부1, 대만 정도이다. 아직 선택의 폭이 넓지는 않은데, 나의 경우 일반적으로 서버 사용이 미국 서부지역이라서 크게 상관은 없다. ( 향후 점차 확대되지 않을까? 아마 GA가 될때쯤이면 모든 리전에서 사용이 가능하지 않을까 싶긴 하다. ) 인스턴스 용량은 "메모리"의 양을 선택한다. 사실 이 부분에서 매니지드와 서버에 직접 세팅하는게 달라지는 부분중의 하나인데, 직접 서버를 세팅할 경우에는 Redis 가 쓰는 메모리 뿐 아니라, OS가 올라가고, 관리 시스템이 올라가는 부분들에 대한 메모리도 고려해야 하는데 , 그런게 없다. 그냥 순수하게 내가 쓸만큼만 정하면 된다. 당연히 메모리의 양에 따라 가격이 달라지고, 설정된 메모리의 양이 많아지면 허용 가능한 네트워크 용량이 늘어난다. 최소한으로 설정하면 1GB가 가능하고, 그럴경우 네트워크는 375MB/s 가 세팅된다. 이부분에 관해서는 아래에서 다시 언급하겠다. 승인된 네트워크 부분은 보안정도로 생각하면 되는데 사실 개인적으로 Redis 혹은 Memcached 같은 서비스들은 Private Network 에서만 써야 한다고 생각해서.. 참 맘에 드는데 내부 네트워크에서만 동작이 된다.. ( GCP 의 Cloud SQL은 언제쯤 ㅠㅠ ) 여기까지 하고 우선 만들기를 누른다. 다음과 같은 화면을 볼 수 있다 별거 없다.  만들어진 시스템에 대한 기본적인 정보들을 볼 수 있는데, 방금전에 언급 했던 대로, IP 주소가 내부에서만 접근 가능함을 알 수 있다. 들어가서 좀 더 자세히 본다.  들어가서 보면, 인스턴스의 ID가 위에 표시되고, 아래 인스턴스 속성에 [ 인스턴스 이름 ] , [ 인스턴스 용량 ] 등이 표시된다. 아까 설정했던 대부분의 내용들이 화면에 표시됨을 알 수 있다. 우리가 얻어야 할 정보는 IP 주소와, 포트 번호인데, 사실 포트번호는 항상 고정이니까.. IP 만 신경쓰도록 한다. 왼쪽위의 [ 메모리 사용량/최대 메모리 ] 를 선택하면 다양한 정보들을 볼 수 있으니 참고하자. =========================== 전체적으로 문서는 다음 링크를 통해 볼 수 있다. https://cloud.google.com/memorystore/ 가격표는 다음과 같은데.. 저렴하진 않아 보인다. 자세한건 2편으로.. https://cloud.google.com/memorystore/pricing#instance_pricing  |
| json metadata | {"tags":["gcp","kr","memorystore","redis","cloud"],"image":["https://steemitimages.com/DQmSSzGiHUSMgs43PNMGyoHN6b8acY95XsKnennJbnbNcS4/screenshot%202018-05-10%2010.25.45.png","https://steemitimages.com/DQmPz1Ldh3sMi35x59WsPr2exT3DGVrugPMPgWSGyexTpe9/screenshot%202018-05-10%2010.27.54.png","https://steemitimages.com/DQmQwSc2AekbK1SzteZ7SiXua9aGYjEeWzbdL9E7M22HstX/screenshot%202018-05-10%2010.30.46.png","https://steemitimages.com/DQmUZVvLaRCwjWo4EuRFT7Aqu6YXhLdFaqz2mLCvc4epFLm/screenshot%202018-05-10%2010.44.02.png","https://steemitimages.com/DQmWJSyhpzSqwPWGqT5wdhVnTAAp6NPeKPYNTRVXMfeBbhP/screenshot%202018-05-10%2010.45.22.png","https://steemitimages.com/DQmZdbjFWHGyUvU75iKSvawx8V2NK8NahfmAaaz3Ui66JdL/screenshot%202018-05-10%2011.03.23.png"],"links":["https://cloud.google.com/memorystore/","https://cloud.google.com/memorystore/pricing#instance_pricing"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #22295205/Trx a3a75d8882acf8307c1e771b56f918bd11132dbb |
View Raw JSON Data
{
"trx_id": "a3a75d8882acf8307c1e771b56f918bd11132dbb",
"block": 22295205,
"trx_in_block": 53,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-05-10T02:03:57",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "gcp",
"author": "calmlake79",
"permlink": "gcp-memorystore-redis",
"title": "GCP의 새로운 Memorystore - Redis 출시",
"body": "Google 의 Cloud Platform 에서 새로운 제품이 출시되었다.\n\n개인적으로 올해초 Cloud Conference 때 알게된 제품중에서 가장 기다렸던 제품들중의 하나다.\n이번에 새로 프로젝트를 시작하면서도 Memorystore의 출시를 가정해서 설계를 하고, 구현을 해왔던 제품이기도 하다.\n( 사실 Redis 니까 그냥 IP만 바꾸면 되긴 하긴 하지만서도.. )\n\n우선 이번에 출시된 Memorystore 의 경우 간단히 말하면 Redis 의 구글판 매니지드(Managed) 서비스정도로 이해하면 딱 맞다.\n\n매니지드 서비스들을 이해하자면 기본적으로 알려진 서비스들 ( 예를들면 MySQL , Redis 등등의 오픈소스들 ) 을 \"관리\"의 영역과 \"개발\"의 영역을 분리하는 서비스라고 생각하면 된다.\n\n서버 운영에 있어서 필수적인 유지 운영 관리부분, 예를들면 서버를 업데이트 하거나, 보안 패치를 하거나 하는 등등의 상황을 대신 관리해주고, 기존과 같은 API , 시스템 , Port 등을 그대로 쓸 수 있는 서비스이다. 개발자 입장에서는 기존과 같은 방식으로 사용이 가능하고, 운영을 함에 있어서 업데이트나 리부팅등에 대한 부담을 덜 수 있어서 좋다. ( 물론 가격은 조금 더 비싸다. 관리비를 받는 셈이라.. )\n\n다음 메뉴를 보도록 하자.\n\n\n저장소에 Memorystore가 추가된것을 알 수 있다.\n메뉴를 들어가면 먼저 해당 API를 활성화 하는데 필요한 시간이 흐른후 사용이 가능하다.\n( 사실 어제 처음 출시되었다고 포스팅이 올라오자 마자 들어갔다가 바로 활성화 하려고 했는데, 무슨 문제가 생겼는지 오류가 난뒤 화면을 갱신한뒤 사라졌다가 하루가 지난 오늘 다시 확인하니 열려 있었다. )\n\n\n\n화면에서 인스턴트 만들기를 누르면 다음과 같은 화면이 나온다 ( 내용이 조금 많다. )\n\n\n\n우선 인스턴스 ID는 사용할 ID를 입력한다. 사실 뭘로 입력을 하던 크게 상관은 없는데 다만, 여러대를 만들었을때 구분을 한다거나 혹은 gcloud를 이용해서 뭔가 작업을 할때 구분하기 위한 식별자 정도이다.\n\n다음으로 인스턴스 이름은 단순히 표시를 위한 용도로 사용이 된다고 적혀 있다.\n그냥 이름에 대한 설명정도?\n\n현재 Redis 버전은 선택을 할 수 없다. 3.2 버전으로 제공이 되고 있다.\nRedis 공식 홈페이지에 가면 안정버전이 4.0인걸 감안하면 조금 아쉬운 부분이지만, 기존에 내가 쓰던것도 3.2 버전이니까 (...) 그냥 그럭저럭 만족하고 쓴다. ( 사실 ubuntu 에서 뭔가 특별히 하지 않고 그냥 설치하면 그정도 버전이 깔린다. )\n\n지역은 현재 선택 가능한것은 미국 서,중,동부 그리고 유럽 서부1, 대만 정도이다.\n아직 선택의 폭이 넓지는 않은데, 나의 경우 일반적으로 서버 사용이 미국 서부지역이라서 크게 상관은 없다.\n( 향후 점차 확대되지 않을까? 아마 GA가 될때쯤이면 모든 리전에서 사용이 가능하지 않을까 싶긴 하다. )\n\n인스턴스 용량은 \"메모리\"의 양을 선택한다. 사실 이 부분에서 매니지드와 서버에 직접 세팅하는게 달라지는 부분중의 하나인데,\n직접 서버를 세팅할 경우에는 Redis 가 쓰는 메모리 뿐 아니라, OS가 올라가고, 관리 시스템이 올라가는 부분들에 대한 메모리도 고려해야 하는데 , 그런게 없다. 그냥 순수하게 내가 쓸만큼만 정하면 된다. 당연히 메모리의 양에 따라 가격이 달라지고, 설정된 메모리의 양이 많아지면 허용 가능한 네트워크 용량이 늘어난다. 최소한으로 설정하면 1GB가 가능하고, 그럴경우 네트워크는 375MB/s 가 세팅된다.\n이부분에 관해서는 아래에서 다시 언급하겠다.\n\n승인된 네트워크 부분은 보안정도로 생각하면 되는데 사실 개인적으로 Redis 혹은 Memcached 같은 서비스들은 Private Network 에서만 써야 한다고 생각해서.. 참 맘에 드는데 내부 네트워크에서만 동작이 된다.. ( GCP 의 Cloud SQL은 언제쯤 ㅠㅠ )\n\n여기까지 하고 우선 만들기를 누른다.\n\n다음과 같은 화면을 볼 수 있다 별거 없다.\n\n\n\n만들어진 시스템에 대한 기본적인 정보들을 볼 수 있는데, 방금전에 언급 했던 대로, IP 주소가 내부에서만 접근 가능함을 알 수 있다.\n들어가서 좀 더 자세히 본다.\n\n\n\n들어가서 보면, 인스턴스의 ID가 위에 표시되고, 아래 인스턴스 속성에 [ 인스턴스 이름 ] , [ 인스턴스 용량 ] 등이 표시된다.\n아까 설정했던 대부분의 내용들이 화면에 표시됨을 알 수 있다.\n\n우리가 얻어야 할 정보는 IP 주소와, 포트 번호인데, 사실 포트번호는 항상 고정이니까.. IP 만 신경쓰도록 한다.\n\n왼쪽위의 [ 메모리 사용량/최대 메모리 ] 를 선택하면 다양한 정보들을 볼 수 있으니 참고하자.\n\n===========================\n\n전체적으로 문서는 다음 링크를 통해 볼 수 있다.\n\nhttps://cloud.google.com/memorystore/\n\n가격표는 다음과 같은데.. 저렴하진 않아 보인다.\n자세한건 2편으로..\n\nhttps://cloud.google.com/memorystore/pricing#instance_pricing\n\n",
"json_metadata": "{\"tags\":[\"gcp\",\"kr\",\"memorystore\",\"redis\",\"cloud\"],\"image\":[\"https://steemitimages.com/DQmSSzGiHUSMgs43PNMGyoHN6b8acY95XsKnennJbnbNcS4/screenshot%202018-05-10%2010.25.45.png\",\"https://steemitimages.com/DQmPz1Ldh3sMi35x59WsPr2exT3DGVrugPMPgWSGyexTpe9/screenshot%202018-05-10%2010.27.54.png\",\"https://steemitimages.com/DQmQwSc2AekbK1SzteZ7SiXua9aGYjEeWzbdL9E7M22HstX/screenshot%202018-05-10%2010.30.46.png\",\"https://steemitimages.com/DQmUZVvLaRCwjWo4EuRFT7Aqu6YXhLdFaqz2mLCvc4epFLm/screenshot%202018-05-10%2010.44.02.png\",\"https://steemitimages.com/DQmWJSyhpzSqwPWGqT5wdhVnTAAp6NPeKPYNTRVXMfeBbhP/screenshot%202018-05-10%2010.45.22.png\",\"https://steemitimages.com/DQmZdbjFWHGyUvU75iKSvawx8V2NK8NahfmAaaz3Ui66JdL/screenshot%202018-05-10%2011.03.23.png\"],\"links\":[\"https://cloud.google.com/memorystore/\",\"https://cloud.google.com/memorystore/pricing#instance_pricing\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}calmlake79claimed reward balance: 0.076 SBD, 0.036 SP2018/04/19 11:32:15
calmlake79claimed reward balance: 0.076 SBD, 0.036 SP
2018/04/19 11:32:15
| account | calmlake79 |
| reward steem | 0.000 STEEM |
| reward sbd | 0.076 SBD |
| reward vests | 59.098294 VESTS |
| Transaction Info | Block #21702547/Trx 95beecb92618a00412e86eae4e2333b4b223baa8 |
View Raw JSON Data
{
"trx_id": "95beecb92618a00412e86eae4e2333b4b223baa8",
"block": 21702547,
"trx_in_block": 6,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-19T11:32:15",
"op": [
"claim_reward_balance",
{
"account": "calmlake79",
"reward_steem": "0.000 STEEM",
"reward_sbd": "0.076 SBD",
"reward_vests": "59.098294 VESTS"
}
]
}calmlake79received 0.076 SBD, 0.036 SP author reward for @calmlake79 / google-kubernetes-engine-private-network2018/04/18 06:37:12
calmlake79received 0.076 SBD, 0.036 SP author reward for @calmlake79 / google-kubernetes-engine-private-network
2018/04/18 06:37:12
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| sbd payout | 0.076 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 59.098294 VESTS |
| Transaction Info | Block #21667846/Virtual Operation #21 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 21667846,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 21,
"timestamp": "2018-04-18T06:37:12",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"sbd_payout": "0.076 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "59.098294 VESTS"
}
]
}2018/04/12 01:14:30
2018/04/12 01:14:30
| parent author | calmlake79 |
| parent permlink | google-kubernetes-engine-private-network |
| author | taewan.kim |
| permlink | re-calmlake79-google-kubernetes-engine-private-network-20180412t011430416z |
| title | |
| body | 좋은 자료 감사합니다. 유용하겠네요 |
| json metadata | {"tags":["kr"],"app":"steemit/0.1"} |
| Transaction Info | Block #21488628/Trx 970757483de53784edee794084a0453b092f50bb |
View Raw JSON Data
{
"trx_id": "970757483de53784edee794084a0453b092f50bb",
"block": 21488628,
"trx_in_block": 25,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-12T01:14:30",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "google-kubernetes-engine-private-network",
"author": "taewan.kim",
"permlink": "re-calmlake79-google-kubernetes-engine-private-network-20180412t011430416z",
"title": "",
"body": "좋은 자료 감사합니다. 유용하겠네요",
"json_metadata": "{\"tags\":[\"kr\"],\"app\":\"steemit/0.1\"}"
}
]
}taewan.kimupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/12 01:14:03
taewan.kimupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/12 01:14:03
| voter | taewan.kim |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21488619/Trx efd2c3f78aac09823c36ec7f064f3402cfe63b45 |
View Raw JSON Data
{
"trx_id": "efd2c3f78aac09823c36ec7f064f3402cfe63b45",
"block": 21488619,
"trx_in_block": 9,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-12T01:14:03",
"op": [
"vote",
{
"voter": "taewan.kim",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 10000
}
]
}cowboybebopupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/11 14:12:45
cowboybebopupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/11 14:12:45
| voter | cowboybebop |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21475394/Trx 78c76048d490ed4c4d564169cfaa14b254399427 |
View Raw JSON Data
{
"trx_id": "78c76048d490ed4c4d564169cfaa14b254399427",
"block": 21475394,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T14:12:45",
"op": [
"vote",
{
"voter": "cowboybebop",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 10000
}
]
}steemitboardupvoted (1.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/11 11:58:57
steemitboardupvoted (1.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/11 11:58:57
| voter | steemitboard |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 100 (1.00%) |
| Transaction Info | Block #21472719/Trx 5e55c0df785c5df985b8b45bcb2ccedfc8ef71e1 |
View Raw JSON Data
{
"trx_id": "5e55c0df785c5df985b8b45bcb2ccedfc8ef71e1",
"block": 21472719,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T11:58:57",
"op": [
"vote",
{
"voter": "steemitboard",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 100
}
]
}2018/04/11 11:58:54
2018/04/11 11:58:54
| parent author | calmlake79 |
| parent permlink | google-kubernetes-engine-private-network |
| author | steemitboard |
| permlink | steemitboard-notify-calmlake79-20180411t115856000z |
| title | |
| body | Congratulations @calmlake79! You have completed some achievement on Steemit and have been rewarded with new badge(s) : [](http://steemitboard.com/@calmlake79) Award for the number of posts published Click on any badge to view your own Board of Honor on SteemitBoard. To support your work, I also upvoted your post! For more information about SteemitBoard, click [here](https://steemit.com/@steemitboard) If you no longer want to receive notifications, reply to this comment with the word `STOP` > Upvote this notification to help all Steemit users. Learn why [here](https://steemit.com/steemitboard/@steemitboard/http-i-cubeupload-com-7ciqeo-png)! |
| json metadata | {"image":["https://steemitboard.com/img/notifications.png"]} |
| Transaction Info | Block #21472718/Trx 637fdb0dedfc05002530a8dc37811da4fbbdf9a4 |
View Raw JSON Data
{
"trx_id": "637fdb0dedfc05002530a8dc37811da4fbbdf9a4",
"block": 21472718,
"trx_in_block": 41,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T11:58:54",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "google-kubernetes-engine-private-network",
"author": "steemitboard",
"permlink": "steemitboard-notify-calmlake79-20180411t115856000z",
"title": "",
"body": "Congratulations @calmlake79! You have completed some achievement on Steemit and have been rewarded with new badge(s) :\n\n[](http://steemitboard.com/@calmlake79) Award for the number of posts published\n\nClick on any badge to view your own Board of Honor on SteemitBoard.\n\nTo support your work, I also upvoted your post!\nFor more information about SteemitBoard, click [here](https://steemit.com/@steemitboard)\n\nIf you no longer want to receive notifications, reply to this comment with the word `STOP`\n\n> Upvote this notification to help all Steemit users. Learn why [here](https://steemit.com/steemitboard/@steemitboard/http-i-cubeupload-com-7ciqeo-png)!",
"json_metadata": "{\"image\":[\"https://steemitboard.com/img/notifications.png\"]}"
}
]
}calmlake79published a new post: google-kubernetes-engine-private-network2018/04/11 11:48:24
calmlake79published a new post: google-kubernetes-engine-private-network
2018/04/11 11:48:24
| parent author | |
| parent permlink | kr |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| title | Google Kubernetes Engine 에서 Private Network 접속하기 |
| body | @@ -1041,16 +1041,781 @@ %EC%86%8D%EC%9D%B4 %EB%90%9C%EB%8B%A4.%0A%0A +%EC%97%AD%EC%9C%BC%EB%A1%9C Private Network%EC%83%81%EC%9D%98 %EB%8B%A4%EB%A5%B8 %EC%84%9C%EB%B2%84%EC%97%90%EC%84%9C %EC%BF%A0%EB%B2%A0 %EB%82%B4%EB%B6%80%EC%9D%98 %EC%84%9C%EB%B9%84%EC%8A%A4%EC%97%90 %EC%A0%91%EC%86%8D%ED%95%98%EB%A0%A4%EB%A9%B4 %EB%8B%A4%EC%9D%8C%EA%B3%BC %EA%B0%99%EC%9D%80 2%EA%B0%80%EC%A7%80 %EB%B0%A9%EB%B2%95%EC%9D%B4 %EC%9E%88%EB%8B%A4.%0A%0A%60%60%60bash%0A$ kubectl describe svc nginx-service%0AName: nginx-service%0ANamespace: default%0ALabels: app=nginx%0AAnnotations: %3Cnone%3E%0ASelector: app=nginx%0AType: NodePort%0AIP: 10.0.31.7%0APort: %3Cunset%3E 80/TCP%0ATargetPort: 80/TCP%0ANodePort: %3Cunset%3E 30056/TCP%0AEndpoints: 10.4.0.10:80,10.4.1.9:80,10.4.2.11:80%0ASession Affinity: None%0AExternal Traffic Policy: Cluster%0AEvents: %3Cnone%3E%0A%60%60%60%0A%0A%EC%9C%84%EC%99%80 %EA%B0%99%EC%9D%80 %EC%8B%9D%EC%9C%BC%EB%A1%9C %EC%A0%95%EB%B3%B4%EB%A5%BC %EC%96%BB%EC%96%B4%EB%82%B4%EB%A9%B4 Endpoints %EA%B0%80 %EA%B0%9C%EB%B3%84 %EC%A0%91%EC%86%8D %EC%A3%BC%EC%86%8C%EC%9D%B4%EB%8B%A4. %EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC%EC%83%81%EC%9D%98 %EB%8B%A4%EB%A5%B8 %EC%84%9C%EB%B2%84%EC%97%90%EC%84%9C %0A%60%60%60bash%0A# curl 10.4.0.10%0A%60%60%60%0A%EC%99%80 %EA%B0%99%EC%9D%80 %EC%8B%9D%EC%9C%BC%EB%A1%9C %ED%95%98%EB%A9%B4 %EC%A0%91%EC%86%8D%EC%9D%84 %ED%99%95%EC%9D%B8%ED%95%A0 %EC%88%98 %EC%9E%88%EB%8B%A4.%0A%0A %EC%A2%80%EB%8D%94 %EC%9E%90%EC%84%B8%ED%95%9C %EC%84%A4 |
| json metadata | {"tags":["kr","gcp","kubernetes","privatenetwork"],"image":["https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png","https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png"],"app":"steemit/0.1","format":"markdown","links":["https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters"]} |
| Transaction Info | Block #21472508/Trx 86b736f14a64afe44b8f0d573172da927948e432 |
View Raw JSON Data
{
"trx_id": "86b736f14a64afe44b8f0d573172da927948e432",
"block": 21472508,
"trx_in_block": 25,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T11:48:24",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kr",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"title": "Google Kubernetes Engine 에서 Private Network 접속하기",
"body": "@@ -1041,16 +1041,781 @@\n %EC%86%8D%EC%9D%B4 %EB%90%9C%EB%8B%A4.%0A%0A\n+%EC%97%AD%EC%9C%BC%EB%A1%9C Private Network%EC%83%81%EC%9D%98 %EB%8B%A4%EB%A5%B8 %EC%84%9C%EB%B2%84%EC%97%90%EC%84%9C %EC%BF%A0%EB%B2%A0 %EB%82%B4%EB%B6%80%EC%9D%98 %EC%84%9C%EB%B9%84%EC%8A%A4%EC%97%90 %EC%A0%91%EC%86%8D%ED%95%98%EB%A0%A4%EB%A9%B4 %EB%8B%A4%EC%9D%8C%EA%B3%BC %EA%B0%99%EC%9D%80 2%EA%B0%80%EC%A7%80 %EB%B0%A9%EB%B2%95%EC%9D%B4 %EC%9E%88%EB%8B%A4.%0A%0A%60%60%60bash%0A$ kubectl describe svc nginx-service%0AName: nginx-service%0ANamespace: default%0ALabels: app=nginx%0AAnnotations: %3Cnone%3E%0ASelector: app=nginx%0AType: NodePort%0AIP: 10.0.31.7%0APort: %3Cunset%3E 80/TCP%0ATargetPort: 80/TCP%0ANodePort: %3Cunset%3E 30056/TCP%0AEndpoints: 10.4.0.10:80,10.4.1.9:80,10.4.2.11:80%0ASession Affinity: None%0AExternal Traffic Policy: Cluster%0AEvents: %3Cnone%3E%0A%60%60%60%0A%0A%EC%9C%84%EC%99%80 %EA%B0%99%EC%9D%80 %EC%8B%9D%EC%9C%BC%EB%A1%9C %EC%A0%95%EB%B3%B4%EB%A5%BC %EC%96%BB%EC%96%B4%EB%82%B4%EB%A9%B4 Endpoints %EA%B0%80 %EA%B0%9C%EB%B3%84 %EC%A0%91%EC%86%8D %EC%A3%BC%EC%86%8C%EC%9D%B4%EB%8B%A4. %EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC%EC%83%81%EC%9D%98 %EB%8B%A4%EB%A5%B8 %EC%84%9C%EB%B2%84%EC%97%90%EC%84%9C %0A%60%60%60bash%0A# curl 10.4.0.10%0A%60%60%60%0A%EC%99%80 %EA%B0%99%EC%9D%80 %EC%8B%9D%EC%9C%BC%EB%A1%9C %ED%95%98%EB%A9%B4 %EC%A0%91%EC%86%8D%EC%9D%84 %ED%99%95%EC%9D%B8%ED%95%A0 %EC%88%98 %EC%9E%88%EB%8B%A4.%0A%0A\n %EC%A2%80%EB%8D%94 %EC%9E%90%EC%84%B8%ED%95%9C %EC%84%A4\n",
"json_metadata": "{\"tags\":[\"kr\",\"gcp\",\"kubernetes\",\"privatenetwork\"],\"image\":[\"https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png\",\"https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\",\"links\":[\"https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters\"]}"
}
]
}calmlake79published a new post: google-kubernetes-engine-private-network2018/04/11 11:45:00
calmlake79published a new post: google-kubernetes-engine-private-network
2018/04/11 11:45:00
| parent author | |
| parent permlink | kr |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| title | Google Kubernetes Engine 에서 Private Network 접속하기 |
| body | @@ -919,19 +919,16 @@ %EC%88%98 %EC%9E%88%EB%8B%A4.%0A%0A -%EC%9A%B0%EC%84%A0 Master I @@ -971,295 +971,20 @@ %ED%95%9C%EB%8B%A4.%0A -%EB%8B%A4%EC%9D%8C%EC%9C%BC%EB%A1%9C Node address range %EB%8A%94 %EA%B0%9C%EB%B3%84 %EB%85%B8%EB%93%9C%EB%93%A4%EC%9D%98 IP%EB%B2%94%EC%9C%84%EB%A5%BC %EC%9D%98%EB%AF%B8%ED%95%98%EB%8A%94%EB%8D%B0, %EC%9D%B4 %EB%B6%80%EB%B6%84%EC%9D%80 %EC%98%88%EC%8B%9C%EC%B2%98%EB%9F%BC 10.64.0.0/19%EB%A1%9C %EB%84%A3%EB%8A%94%EB%8B%A4.%0A%EB%8B%A4%EC%9D%8C%EC%9C%BC%EB%A1%9C Container address range %EB%8A%94 %EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88%EB%93%A4%EC%9D%98 IP%EB%B2%94%EC%9C%84%EC%9D%B4%EB%A9%B0, %EC%9D%B4 %EB%B6%80%EB%B6%84%EC%9D%80 %EC%98%88%EC%8B%9C %EC%B2%98%EB%9F%BC 10.96.0.0/11 %EC%9C%BC%EB%A1%9C %EB%84%A3%EA%B3%A0,%0A%EB%A7%88%EC%A7%80%EB%A7%89%EC%9C%BC%EB%A1%9C Service address range %EB%8A%94 %EA%B0%9C%EB%B3%84 %EC%84%9C%EB%B9%84%EC%8A%A4%EB%93%A4%EC%9D%84 %EB%A7%8C%EB%93%A4%EC%97%88%EC%9D%84%EB%95%8C %EB%B2%94%EC%9C%84%EB%A5%BC %EC%9D%98%EB%AF%B8%ED%95%9C%EB%8B%A4. ( %EB%82%98%EC%A4%91%EC%97%90 %ED%95%98%EB%82%98%EC%9D%98 %EC%84%9C%EB%B9%84%EC%8A%A4%EC%97%90%EC%84%9C %EB%8B%A4%EB%A5%B8 %EC%84%9C%EB%B9%84%EC%8A%A4%EB%A1%9C %EC%97%B0%EA%B2%B0%ED%95%A0%EB%95%8C %EC%82%AC%EC%9A%A9%ED%95%9C%EB%8B%A4. %EC%9D%B4 %EB%B6%80%EB%B6%84%EC%9D%80 %EC%98%88%EC%8B%9C%EC%B2%98%EB%9F%BC 10.94.0.0/18 %EB%A1%9C %EB%84%A3%EA%B3%A0 %EC%83%9D%EC%84%B1%EC%9D%84 %ED%95%98%EB%A9%B4 %EC%83%9D%EC%84%B1%EC%9D%B4 %EB%90%98%EA%B3%A0 +( %EB%82%98%EB%A8%B8%EC%A7%80%EB%8A%94 %EB%B9%84%EC%9B%8C%EB%91%A0 ) %0A%0A%ED%95%B4%EB%8B%B9 |
| json metadata | {"tags":["kr","gcp","kubernetes","privatenetwork"],"image":["https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png","https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png"],"app":"steemit/0.1","format":"markdown","links":["https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters"]} |
| Transaction Info | Block #21472440/Trx 2520bb24dadc89b0a140ab74c16923946451eacb |
View Raw JSON Data
{
"trx_id": "2520bb24dadc89b0a140ab74c16923946451eacb",
"block": 21472440,
"trx_in_block": 40,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T11:45:00",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kr",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"title": "Google Kubernetes Engine 에서 Private Network 접속하기",
"body": "@@ -919,19 +919,16 @@\n %EC%88%98 %EC%9E%88%EB%8B%A4.%0A%0A\n-%EC%9A%B0%EC%84%A0 \n Master I\n@@ -971,295 +971,20 @@\n %ED%95%9C%EB%8B%A4.%0A\n-%EB%8B%A4%EC%9D%8C%EC%9C%BC%EB%A1%9C Node address range %EB%8A%94 %EA%B0%9C%EB%B3%84 %EB%85%B8%EB%93%9C%EB%93%A4%EC%9D%98 IP%EB%B2%94%EC%9C%84%EB%A5%BC %EC%9D%98%EB%AF%B8%ED%95%98%EB%8A%94%EB%8D%B0, %EC%9D%B4 %EB%B6%80%EB%B6%84%EC%9D%80 %EC%98%88%EC%8B%9C%EC%B2%98%EB%9F%BC 10.64.0.0/19%EB%A1%9C %EB%84%A3%EB%8A%94%EB%8B%A4.%0A%EB%8B%A4%EC%9D%8C%EC%9C%BC%EB%A1%9C Container address range %EB%8A%94 %EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88%EB%93%A4%EC%9D%98 IP%EB%B2%94%EC%9C%84%EC%9D%B4%EB%A9%B0, %EC%9D%B4 %EB%B6%80%EB%B6%84%EC%9D%80 %EC%98%88%EC%8B%9C %EC%B2%98%EB%9F%BC 10.96.0.0/11 %EC%9C%BC%EB%A1%9C %EB%84%A3%EA%B3%A0,%0A%EB%A7%88%EC%A7%80%EB%A7%89%EC%9C%BC%EB%A1%9C Service address range %EB%8A%94 %EA%B0%9C%EB%B3%84 %EC%84%9C%EB%B9%84%EC%8A%A4%EB%93%A4%EC%9D%84 %EB%A7%8C%EB%93%A4%EC%97%88%EC%9D%84%EB%95%8C %EB%B2%94%EC%9C%84%EB%A5%BC %EC%9D%98%EB%AF%B8%ED%95%9C%EB%8B%A4. ( %EB%82%98%EC%A4%91%EC%97%90 %ED%95%98%EB%82%98%EC%9D%98 %EC%84%9C%EB%B9%84%EC%8A%A4%EC%97%90%EC%84%9C %EB%8B%A4%EB%A5%B8 %EC%84%9C%EB%B9%84%EC%8A%A4%EB%A1%9C %EC%97%B0%EA%B2%B0%ED%95%A0%EB%95%8C %EC%82%AC%EC%9A%A9%ED%95%9C%EB%8B%A4. %EC%9D%B4 %EB%B6%80%EB%B6%84%EC%9D%80 %EC%98%88%EC%8B%9C%EC%B2%98%EB%9F%BC 10.94.0.0/18 %EB%A1%9C %EB%84%A3%EA%B3%A0 %EC%83%9D%EC%84%B1%EC%9D%84 %ED%95%98%EB%A9%B4 %EC%83%9D%EC%84%B1%EC%9D%B4 %EB%90%98%EA%B3%A0\n+( %EB%82%98%EB%A8%B8%EC%A7%80%EB%8A%94 %EB%B9%84%EC%9B%8C%EB%91%A0 )\n %0A%0A%ED%95%B4%EB%8B%B9\n",
"json_metadata": "{\"tags\":[\"kr\",\"gcp\",\"kubernetes\",\"privatenetwork\"],\"image\":[\"https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png\",\"https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\",\"links\":[\"https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters\"]}"
}
]
}flightsimulatorupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/11 07:59:21
flightsimulatorupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/11 07:59:21
| voter | flightsimulator |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21467929/Trx a0e1ac504ee90a645913eb871699d9833c5821d2 |
View Raw JSON Data
{
"trx_id": "a0e1ac504ee90a645913eb871699d9833c5821d2",
"block": 21467929,
"trx_in_block": 67,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T07:59:21",
"op": [
"vote",
{
"voter": "flightsimulator",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 10000
}
]
}johnyiupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/11 07:05:27
johnyiupvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/11 07:05:27
| voter | johnyi |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21466851/Trx c1cf595a0a2a947d98bd487cc3e64a728e9f5559 |
View Raw JSON Data
{
"trx_id": "c1cf595a0a2a947d98bd487cc3e64a728e9f5559",
"block": 21466851,
"trx_in_block": 11,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T07:05:27",
"op": [
"vote",
{
"voter": "johnyi",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 10000
}
]
}adface417upvoted (10.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/11 06:41:15
adface417upvoted (10.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/11 06:41:15
| voter | adface417 |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 1000 (10.00%) |
| Transaction Info | Block #21466367/Trx 16466c66cc668df7b9d56038ecc563d030ae552f |
View Raw JSON Data
{
"trx_id": "16466c66cc668df7b9d56038ecc563d030ae552f",
"block": 21466367,
"trx_in_block": 47,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T06:41:15",
"op": [
"vote",
{
"voter": "adface417",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 1000
}
]
}calmlake79published a new post: google-kubernetes-engine-private-network2018/04/11 06:38:48
calmlake79published a new post: google-kubernetes-engine-private-network
2018/04/11 06:38:48
| parent author | |
| parent permlink | kr |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| title | Google Kubernetes Engine 에서 Private Network 접속하기 |
| body | @@ -1317,8 +1317,118 @@ %EC%A0%91%EC%86%8D%EC%9D%B4 %EB%90%9C%EB%8B%A4. +%0A%0A%EC%A2%80%EB%8D%94 %EC%9E%90%EC%84%B8%ED%95%9C %EC%84%A4%EB%AA%85%EC%9D%80 %EA%B5%AC%EA%B8%80%EC%9D%98 GCP %ED%8E%98%EC%9D%B4%EC%A7%80%EB%A5%BC %ED%86%B5%ED%95%B4%EC%84%9C %EC%95%8C %EC%88%98 %EC%9E%88%EB%8B%A4.%0A%0Ahttps://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters |
| json metadata | {"tags":["kr","gcp","kubernetes","privatenetwork"],"image":["https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png","https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png"],"app":"steemit/0.1","format":"markdown","links":["https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters"]} |
| Transaction Info | Block #21466318/Trx 6a2977ab3311c5fbe29186106fd2ae0169e299e8 |
View Raw JSON Data
{
"trx_id": "6a2977ab3311c5fbe29186106fd2ae0169e299e8",
"block": 21466318,
"trx_in_block": 42,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T06:38:48",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kr",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"title": "Google Kubernetes Engine 에서 Private Network 접속하기",
"body": "@@ -1317,8 +1317,118 @@\n %EC%A0%91%EC%86%8D%EC%9D%B4 %EB%90%9C%EB%8B%A4.\n+%0A%0A%EC%A2%80%EB%8D%94 %EC%9E%90%EC%84%B8%ED%95%9C %EC%84%A4%EB%AA%85%EC%9D%80 %EA%B5%AC%EA%B8%80%EC%9D%98 GCP %ED%8E%98%EC%9D%B4%EC%A7%80%EB%A5%BC %ED%86%B5%ED%95%B4%EC%84%9C %EC%95%8C %EC%88%98 %EC%9E%88%EB%8B%A4.%0A%0Ahttps://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters\n",
"json_metadata": "{\"tags\":[\"kr\",\"gcp\",\"kubernetes\",\"privatenetwork\"],\"image\":[\"https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png\",\"https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\",\"links\":[\"https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters\"]}"
}
]
}calmlake79upvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network2018/04/11 06:37:12
calmlake79upvoted (100.00%) @calmlake79 / google-kubernetes-engine-private-network
2018/04/11 06:37:12
| voter | calmlake79 |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21466286/Trx 457707c6d3b85e56008f48c2e3150aa03ece9f94 |
View Raw JSON Data
{
"trx_id": "457707c6d3b85e56008f48c2e3150aa03ece9f94",
"block": 21466286,
"trx_in_block": 45,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T06:37:12",
"op": [
"vote",
{
"voter": "calmlake79",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"weight": 10000
}
]
}calmlake79published a new post: google-kubernetes-engine-private-network2018/04/11 06:37:12
calmlake79published a new post: google-kubernetes-engine-private-network
2018/04/11 06:37:12
| parent author | |
| parent permlink | kr |
| author | calmlake79 |
| permlink | google-kubernetes-engine-private-network |
| title | Google Kubernetes Engine 에서 Private Network 접속하기 |
| body | 쿠버네티즈 ( 이하 쿠베 )에서 작업을 하다 보면, 외부의 서비스 혹은 서버에 접속해야 하는 경우가 발생 할 수 있다. 사실 완전히 외부 네트워크 ( 예를들면 구글이나 그러한 Public IP 에 있는 곳들.. )에 접속하는것은 크게 무리가 없는데, Private IP ( 예를들면 동일한 프로젝트 안에 MySQL 서버를 둔다거나, Redis 서버를 둔다거나..등등 ) 를 사용하려고 하면.. 조금 많이 복잡해진다. 덕분에 엄청나게 고생을 했었던.. ( 거의 2일을 날렸다. ) 결론 부터 말하자면, 간단히 Network 설정만으로도 간단히 해결된다. ( 만약에 이미 있는 쿠베 클러스터는 설정 변경하는 방법은 잘 모른다. 새 클러스터만 가능하다 )  클러스터를 생성하는 화면에서 맨 하단으로 내려가면 [ More ] 가 보인다. 여기를 클릭하면 훨씬 많은 메뉴를 볼 수 있는데, 우선 클릭을 한다.  매우 많은 메뉴들이 있는데, 그중에서 [ Private cluster ( beta ) ] 를 찾는다. ( 현재 내 프로젝트는 영어로 설정이 되어 있다 한글의 경우 조금 다를 수 있다. 이 부분을 Disabled 에서 Enabled 로 변경을 하면 새로 많은 메뉴들이 추가된것을 확인 할 수 있다. 우선 Master IP range 는 예시에 있는것 처럼 172.16.0.0/28로 한다. 다음으로 Node address range 는 개별 노드들의 IP범위를 의미하는데, 이 부분은 예시처럼 10.64.0.0/19로 넣는다. 다음으로 Container address range 는 컨테이너들의 IP범위이며, 이 부분은 예시 처럼 10.96.0.0/11 으로 넣고, 마지막으로 Service address range 는 개별 서비스들을 만들었을때 범위를 의미한다. ( 나중에 하나의 서비스에서 다른 서비스로 연결할때 사용한다. 이 부분은 예시처럼 10.94.0.0/18 로 넣고 생성을 하면 생성이 되고 해당 프로젝트에서 내부적으로 내부 IP를 이용하여 다른 서버에 접속할때 사용하면 정상적으로 접속이 된다. |
| json metadata | {"tags":["kr","gcp","kubernetes","privatenetwork"],"image":["https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png","https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #21466286/Trx 457707c6d3b85e56008f48c2e3150aa03ece9f94 |
View Raw JSON Data
{
"trx_id": "457707c6d3b85e56008f48c2e3150aa03ece9f94",
"block": 21466286,
"trx_in_block": 45,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-11T06:37:12",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kr",
"author": "calmlake79",
"permlink": "google-kubernetes-engine-private-network",
"title": "Google Kubernetes Engine 에서 Private Network 접속하기",
"body": "쿠버네티즈 ( 이하 쿠베 )에서 작업을 하다 보면, 외부의 서비스 혹은 서버에 접속해야 하는 경우가 발생 할 수 있다.\n사실 완전히 외부 네트워크 ( 예를들면 구글이나 그러한 Public IP 에 있는 곳들.. )에 접속하는것은 크게 무리가 없는데,\nPrivate IP ( 예를들면 동일한 프로젝트 안에 MySQL 서버를 둔다거나, Redis 서버를 둔다거나..등등 ) 를 사용하려고 하면..\n조금 많이 복잡해진다.\n\n덕분에 엄청나게 고생을 했었던.. ( 거의 2일을 날렸다. )\n\n결론 부터 말하자면, 간단히 Network 설정만으로도 간단히 해결된다. \n( 만약에 이미 있는 쿠베 클러스터는 설정 변경하는 방법은 잘 모른다. 새 클러스터만 가능하다 )\n\n\n\n클러스터를 생성하는 화면에서 맨 하단으로 내려가면 [ More ] 가 보인다.\n여기를 클릭하면 훨씬 많은 메뉴를 볼 수 있는데, 우선 클릭을 한다.\n\n\n\n매우 많은 메뉴들이 있는데, 그중에서 [ Private cluster ( beta ) ] 를 찾는다.\n( 현재 내 프로젝트는 영어로 설정이 되어 있다 한글의 경우 조금 다를 수 있다.\n\n이 부분을 Disabled 에서 Enabled 로 변경을 하면 새로 많은 메뉴들이 추가된것을 확인 할 수 있다.\n\n우선 Master IP range 는 예시에 있는것 처럼 172.16.0.0/28로 한다.\n다음으로 Node address range 는 개별 노드들의 IP범위를 의미하는데, 이 부분은 예시처럼 10.64.0.0/19로 넣는다.\n다음으로 Container address range 는 컨테이너들의 IP범위이며, 이 부분은 예시 처럼 10.96.0.0/11 으로 넣고,\n마지막으로 Service address range 는 개별 서비스들을 만들었을때 범위를 의미한다. ( 나중에 하나의 서비스에서 다른 서비스로 연결할때 사용한다. 이 부분은 예시처럼 10.94.0.0/18 로 넣고 생성을 하면 생성이 되고\n\n해당 프로젝트에서 내부적으로 내부 IP를 이용하여 다른 서버에 접속할때 사용하면 정상적으로 접속이 된다.",
"json_metadata": "{\"tags\":[\"kr\",\"gcp\",\"kubernetes\",\"privatenetwork\"],\"image\":[\"https://steemitimages.com/DQmZjnt2VQwuUZsH5Pk6RhBFGg2L14fuo3Wq6XUCBPaYkRH/screenshot%202018-04-11%2015.22.46.png\",\"https://steemitimages.com/DQmU1e4UZT8J5st8dBecQCp9QCi1HmDGYaYbqWwHHzyoBng/screenshot%202018-04-11%2015.27.00.png\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}choibo21cupvoted (100.00%) @calmlake79 / 6cjsdy2018/04/10 21:01:54
choibo21cupvoted (100.00%) @calmlake79 / 6cjsdy
2018/04/10 21:01:54
| voter | choibo21c |
| author | calmlake79 |
| permlink | 6cjsdy |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21454780/Trx a0ee8a175eb6dbd80a5ed8fc11c2e0a8413dafe7 |
View Raw JSON Data
{
"trx_id": "a0ee8a175eb6dbd80a5ed8fc11c2e0a8413dafe7",
"block": 21454780,
"trx_in_block": 35,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-10T21:01:54",
"op": [
"vote",
{
"voter": "choibo21c",
"author": "calmlake79",
"permlink": "6cjsdy",
"weight": 10000
}
]
}calmlake79powered up 2.351 STEEM to @calmlake792018/04/03 03:24:03
calmlake79powered up 2.351 STEEM to @calmlake79
2018/04/03 03:24:03
| from | calmlake79 |
| to | calmlake79 |
| amount | 2.351 STEEM |
| Transaction Info | Block #21232046/Trx 760240734609faa6c9650458ff4869e75f22901c |
View Raw JSON Data
{
"trx_id": "760240734609faa6c9650458ff4869e75f22901c",
"block": 21232046,
"trx_in_block": 88,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-03T03:24:03",
"op": [
"transfer_to_vesting",
{
"from": "calmlake79",
"to": "calmlake79",
"amount": "2.351 STEEM"
}
]
}calmlake79blockchain operation: limit order create2018/04/03 03:23:30
calmlake79blockchain operation: limit order create
2018/04/03 03:23:30
| owner | calmlake79 |
| orderid | 1522725808 |
| amount to sell | 1.957 SBD |
| min to receive | 2.081 STEEM |
| fill or kill | false |
| expiration | 1969-12-31T23:59:59 |
| Transaction Info | Block #21232035/Trx 62de5dbe9d81b3f39450d3bb579f2efdbdceb032 |
View Raw JSON Data
{
"trx_id": "62de5dbe9d81b3f39450d3bb579f2efdbdceb032",
"block": 21232035,
"trx_in_block": 32,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-03T03:23:30",
"op": [
"limit_order_create",
{
"owner": "calmlake79",
"orderid": 1522725808,
"amount_to_sell": "1.957 SBD",
"min_to_receive": "2.081 STEEM",
"fill_or_kill": false,
"expiration": "1969-12-31T23:59:59"
}
]
}calmlake79bought 2.081 STEEM for 1.957 SBD from @happychau1232018/04/03 03:23:30
calmlake79bought 2.081 STEEM for 1.957 SBD from @happychau123
2018/04/03 03:23:30
| current owner | calmlake79 |
| current orderid | 1522725808 |
| current pays | 1.957 SBD |
| open owner | happychau123 |
| open orderid | 119976418 |
| open pays | 2.081 STEEM |
| Transaction Info | Block #21232035/Trx 62de5dbe9d81b3f39450d3bb579f2efdbdceb032 |
View Raw JSON Data
{
"trx_id": "62de5dbe9d81b3f39450d3bb579f2efdbdceb032",
"block": 21232035,
"trx_in_block": 32,
"op_in_trx": 0,
"virtual_op": 1,
"timestamp": "2018-04-03T03:23:30",
"op": [
"fill_order",
{
"current_owner": "calmlake79",
"current_orderid": 1522725808,
"current_pays": "1.957 SBD",
"open_owner": "happychau123",
"open_orderid": 119976418,
"open_pays": "2.081 STEEM"
}
]
}calmlake79claimed reward balance: 0.270 STEEM, 1.957 SBD, 1.855 SP2018/04/03 03:23:09
calmlake79claimed reward balance: 0.270 STEEM, 1.957 SBD, 1.855 SP
2018/04/03 03:23:09
| account | calmlake79 |
| reward steem | 0.270 STEEM |
| reward sbd | 1.957 SBD |
| reward vests | 3016.746270 VESTS |
| Transaction Info | Block #21232028/Trx c175727becc88f12d948c868050560f1b03bf42e |
View Raw JSON Data
{
"trx_id": "c175727becc88f12d948c868050560f1b03bf42e",
"block": 21232028,
"trx_in_block": 58,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-04-03T03:23:09",
"op": [
"claim_reward_balance",
{
"account": "calmlake79",
"reward_steem": "0.270 STEEM",
"reward_sbd": "1.957 SBD",
"reward_vests": "3016.746270 VESTS"
}
]
}calmlake79received 0.094 STEEM, 0.437 SBD, 0.482 SP author reward for @calmlake79 / kubernetes-in-google-cloud-platform-22018/04/02 03:04:48
calmlake79received 0.094 STEEM, 0.437 SBD, 0.482 SP author reward for @calmlake79 / kubernetes-in-google-cloud-platform-2
2018/04/02 03:04:48
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| sbd payout | 0.437 SBD |
| steem payout | 0.094 STEEM |
| vesting payout | 783.206951 VESTS |
| Transaction Info | Block #21202866/Virtual Operation #10 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 21202866,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 10,
"timestamp": "2018-04-02T03:04:48",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"sbd_payout": "0.437 SBD",
"steem_payout": "0.094 STEEM",
"vesting_payout": "783.206951 VESTS"
}
]
}calmlake79received 0.176 STEEM, 1.520 SBD, 1.373 SP author reward for @calmlake79 / kubernetes-in-google-cloud-platform2018/03/31 15:23:27
calmlake79received 0.176 STEEM, 1.520 SBD, 1.373 SP author reward for @calmlake79 / kubernetes-in-google-cloud-platform
2018/03/31 15:23:27
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform |
| sbd payout | 1.520 SBD |
| steem payout | 0.176 STEEM |
| vesting payout | 2233.539319 VESTS |
| Transaction Info | Block #21160047/Virtual Operation #15 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 21160047,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 15,
"timestamp": "2018-03-31T15:23:27",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform",
"sbd_payout": "1.520 SBD",
"steem_payout": "0.176 STEEM",
"vesting_payout": "2233.539319 VESTS"
}
]
}smart0927upvoted (100.00%) @calmlake79 / 4qp3xg2018/03/30 20:13:36
smart0927upvoted (100.00%) @calmlake79 / 4qp3xg
2018/03/30 20:13:36
| voter | smart0927 |
| author | calmlake79 |
| permlink | 4qp3xg |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21137058/Trx f32e66da5bbbd4d0283ba59c6dadc9ee6ecfb891 |
View Raw JSON Data
{
"trx_id": "f32e66da5bbbd4d0283ba59c6dadc9ee6ecfb891",
"block": 21137058,
"trx_in_block": 7,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-30T20:13:36",
"op": [
"vote",
{
"voter": "smart0927",
"author": "calmlake79",
"permlink": "4qp3xg",
"weight": 10000
}
]
}2018/03/30 20:12:57
2018/03/30 20:12:57
| parent author | calmlake79 |
| parent permlink | 6cjsdy |
| author | smart0927 |
| permlink | re-calmlake79-6cjsdy-20180330t201256963z |
| title | |
| body | 제대로 인식하지 못하고 있던건데, 알려주셔서 감사합니다. 팔로우 하고 갑니다. :) |
| json metadata | {"tags":["kr"],"app":"steemit/0.1"} |
| Transaction Info | Block #21137045/Trx 51b7893ccf2771959dd6c8dba3a853d11d99b547 |
View Raw JSON Data
{
"trx_id": "51b7893ccf2771959dd6c8dba3a853d11d99b547",
"block": 21137045,
"trx_in_block": 30,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-30T20:12:57",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "6cjsdy",
"author": "smart0927",
"permlink": "re-calmlake79-6cjsdy-20180330t201256963z",
"title": "",
"body": "제대로 인식하지 못하고 있던건데, 알려주셔서 감사합니다. 팔로우 하고 갑니다. :)",
"json_metadata": "{\"tags\":[\"kr\"],\"app\":\"steemit/0.1\"}"
}
]
}smart0927upvoted (100.00%) @calmlake79 / 6cjsdy2018/03/30 20:12:09
smart0927upvoted (100.00%) @calmlake79 / 6cjsdy
2018/03/30 20:12:09
| voter | smart0927 |
| author | calmlake79 |
| permlink | 6cjsdy |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21137029/Trx b467eb1abe1a5409b054e45316b00258b85ef23d |
View Raw JSON Data
{
"trx_id": "b467eb1abe1a5409b054e45316b00258b85ef23d",
"block": 21137029,
"trx_in_block": 27,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-30T20:12:09",
"op": [
"vote",
{
"voter": "smart0927",
"author": "calmlake79",
"permlink": "6cjsdy",
"weight": 10000
}
]
}earlybird316upvoted (100.00%) @calmlake79 / 4qp3xg2018/03/29 01:28:45
earlybird316upvoted (100.00%) @calmlake79 / 4qp3xg
2018/03/29 01:28:45
| voter | earlybird316 |
| author | calmlake79 |
| permlink | 4qp3xg |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21085780/Trx c3322c0d0fbebe024d0728b32997d036b6846963 |
View Raw JSON Data
{
"trx_id": "c3322c0d0fbebe024d0728b32997d036b6846963",
"block": 21085780,
"trx_in_block": 2,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-29T01:28:45",
"op": [
"vote",
{
"voter": "earlybird316",
"author": "calmlake79",
"permlink": "4qp3xg",
"weight": 10000
}
]
}2018/03/27 10:11:30
2018/03/27 10:11:30
| parent author | calmlake79 |
| parent permlink | 6cjsdy |
| author | kkk1818 |
| permlink | re-calmlake79-6cjsdy-20180327t101135390z |
| title | |
| body | 공감합니다 |
| json metadata | {"tags":["kr"],"app":"steemit/0.1"} |
| Transaction Info | Block #21038653/Trx 976e9ad8116f6b02d97094f0d6a26ba075dff881 |
View Raw JSON Data
{
"trx_id": "976e9ad8116f6b02d97094f0d6a26ba075dff881",
"block": 21038653,
"trx_in_block": 42,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-27T10:11:30",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "6cjsdy",
"author": "kkk1818",
"permlink": "re-calmlake79-6cjsdy-20180327t101135390z",
"title": "",
"body": "공감합니다",
"json_metadata": "{\"tags\":[\"kr\"],\"app\":\"steemit/0.1\"}"
}
]
}kkk1818upvoted (100.00%) @calmlake79 / 6cjsdy2018/03/27 10:11:09
kkk1818upvoted (100.00%) @calmlake79 / 6cjsdy
2018/03/27 10:11:09
| voter | kkk1818 |
| author | calmlake79 |
| permlink | 6cjsdy |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21038646/Trx 036408dfdf1cf37bd88768d10bad3783dd384953 |
View Raw JSON Data
{
"trx_id": "036408dfdf1cf37bd88768d10bad3783dd384953",
"block": 21038646,
"trx_in_block": 16,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-27T10:11:09",
"op": [
"vote",
{
"voter": "kkk1818",
"author": "calmlake79",
"permlink": "6cjsdy",
"weight": 10000
}
]
}calmlake79published a new post: kubernetes-in-google-cloud-platform-22018/03/27 10:05:39
calmlake79published a new post: kubernetes-in-google-cloud-platform-2
2018/03/27 10:05:39
| parent author | |
| parent permlink | gcp |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| title | Kubernetes in Google Cloud Platform - (2) |
| body | @@ -1019,24 +1019,78 @@ %EC%97%90 %EB%93%B1%EB%A1%9D%EC%9D%84 %ED%95%B4%EC%A4%80%EB%8B%A4.%0A%0A +*%EC%A3%BC%EC%9D%98%EC%82%AC%ED%95%AD*%0A%60%60%60%EA%B3%B5%EA%B0%9C%ED%82%A4 %EC%9D%B8%EC%A6%9D%EC%84%9C ( tls.crt ) %EC%97%90 %EC%B2%B4%EC%9D%B8%EC%9D%84 %ED%95%A9%EC%B3%90%EC%84%9C %EC%97%85%EB%A1%9C%EB%93%9C %ED%95%B4%EC%95%BC %ED%95%A8.%60%60%60%0A%0A %60%60%60%0Akubectl |
| json metadata | {"tags":["gcp","kr","kubernetes","gke"],"image":["https://steemitimages.com/DQmQhkvkN5xFKAH65fNqED8TXUA5pebHMrkTP4rffTAntQp/screenshot%202018-03-26%2011.24.06.png","https://steemitimages.com/DQmfZMP7mZmseT4RcK7h1cKdNuSFT7odGMK2crDw2q6vekg/screenshot%202018-03-26%2011.29.21.png","https://steemitimages.com/DQmWkRqcnLZqk2kahgqyhTsKD4btSHEj2mxqUebTh5x8VED/screenshot%202018-03-26%2011.33.01.png","https://steemitimages.com/DQmdzaRjLEE65wWZUtbNFjjviaBQzzL1NSBeDZeh7U3ZeVd/screenshot%202018-03-26%2011.52.06.png","https://steemitimages.com/DQmULDQZHrkEWBAZt5VG8QoePtFYh7fzV1qaXXKifXoQPaA/screenshot%202018-03-26%2011.53.19.png"],"links":["https://www.namecheap.com/security/ssl-certificates.aspx"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #21038536/Trx 2a32260ea13d670ce371bdb6f9b4c4c281f4c6e5 |
View Raw JSON Data
{
"trx_id": "2a32260ea13d670ce371bdb6f9b4c4c281f4c6e5",
"block": 21038536,
"trx_in_block": 25,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-27T10:05:39",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "gcp",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"title": "Kubernetes in Google Cloud Platform - (2)",
"body": "@@ -1019,24 +1019,78 @@\n %EC%97%90 %EB%93%B1%EB%A1%9D%EC%9D%84 %ED%95%B4%EC%A4%80%EB%8B%A4.%0A%0A\n+*%EC%A3%BC%EC%9D%98%EC%82%AC%ED%95%AD*%0A%60%60%60%EA%B3%B5%EA%B0%9C%ED%82%A4 %EC%9D%B8%EC%A6%9D%EC%84%9C ( tls.crt ) %EC%97%90 %EC%B2%B4%EC%9D%B8%EC%9D%84 %ED%95%A9%EC%B3%90%EC%84%9C %EC%97%85%EB%A1%9C%EB%93%9C %ED%95%B4%EC%95%BC %ED%95%A8.%60%60%60%0A%0A\n %60%60%60%0Akubectl \n",
"json_metadata": "{\"tags\":[\"gcp\",\"kr\",\"kubernetes\",\"gke\"],\"image\":[\"https://steemitimages.com/DQmQhkvkN5xFKAH65fNqED8TXUA5pebHMrkTP4rffTAntQp/screenshot%202018-03-26%2011.24.06.png\",\"https://steemitimages.com/DQmfZMP7mZmseT4RcK7h1cKdNuSFT7odGMK2crDw2q6vekg/screenshot%202018-03-26%2011.29.21.png\",\"https://steemitimages.com/DQmWkRqcnLZqk2kahgqyhTsKD4btSHEj2mxqUebTh5x8VED/screenshot%202018-03-26%2011.33.01.png\",\"https://steemitimages.com/DQmdzaRjLEE65wWZUtbNFjjviaBQzzL1NSBeDZeh7U3ZeVd/screenshot%202018-03-26%2011.52.06.png\",\"https://steemitimages.com/DQmULDQZHrkEWBAZt5VG8QoePtFYh7fzV1qaXXKifXoQPaA/screenshot%202018-03-26%2011.53.19.png\"],\"links\":[\"https://www.namecheap.com/security/ssl-certificates.aspx\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}2018/03/26 08:17:03
2018/03/26 08:17:03
| voter | calmlake79 |
| author | ellenalee |
| permlink | re-calmlake79-kubernetes-in-google-cloud-platform-2-20180326t034837192z |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21007572/Trx 82129b2e017871d464abddbf1e947da14f8b682a |
View Raw JSON Data
{
"trx_id": "82129b2e017871d464abddbf1e947da14f8b682a",
"block": 21007572,
"trx_in_block": 40,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T08:17:03",
"op": [
"vote",
{
"voter": "calmlake79",
"author": "ellenalee",
"permlink": "re-calmlake79-kubernetes-in-google-cloud-platform-2-20180326t034837192z",
"weight": 10000
}
]
}bramdupvoted (10.00%) @calmlake79 / kubernetes-in-google-cloud-platform-22018/03/26 05:01:36
bramdupvoted (10.00%) @calmlake79 / kubernetes-in-google-cloud-platform-2
2018/03/26 05:01:36
| voter | bramd |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| weight | 1000 (10.00%) |
| Transaction Info | Block #21003665/Trx 649476466c84b1569dac277be862ad87212f128c |
View Raw JSON Data
{
"trx_id": "649476466c84b1569dac277be862ad87212f128c",
"block": 21003665,
"trx_in_block": 45,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T05:01:36",
"op": [
"vote",
{
"voter": "bramd",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"weight": 1000
}
]
}2018/03/26 03:48:36
2018/03/26 03:48:36
| parent author | calmlake79 |
| parent permlink | kubernetes-in-google-cloud-platform-2 |
| author | ellenalee |
| permlink | re-calmlake79-kubernetes-in-google-cloud-platform-2-20180326t034837192z |
| title | |
| body |  |
| json metadata | {"tags":["gcp"],"image":["https://steemitimages.com/DQmYUHbGc69teh6w5brDVB6exBEKvUey5dPeBcgweotwmgE/voting_20180326_111859823.jpg"],"app":"steemit/0.1"} |
| Transaction Info | Block #21002208/Trx 8797cec1412949772859d1648a2b624aee58149d |
View Raw JSON Data
{
"trx_id": "8797cec1412949772859d1648a2b624aee58149d",
"block": 21002208,
"trx_in_block": 28,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:48:36",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "kubernetes-in-google-cloud-platform-2",
"author": "ellenalee",
"permlink": "re-calmlake79-kubernetes-in-google-cloud-platform-2-20180326t034837192z",
"title": "",
"body": "",
"json_metadata": "{\"tags\":[\"gcp\"],\"image\":[\"https://steemitimages.com/DQmYUHbGc69teh6w5brDVB6exBEKvUey5dPeBcgweotwmgE/voting_20180326_111859823.jpg\"],\"app\":\"steemit/0.1\"}"
}
]
}ellenaleeupvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform-22018/03/26 03:48:36
ellenaleeupvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform-2
2018/03/26 03:48:36
| voter | ellenalee |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21002208/Trx d9fffa0e62738fb883c0d9c12b13e9e1106fed03 |
View Raw JSON Data
{
"trx_id": "d9fffa0e62738fb883c0d9c12b13e9e1106fed03",
"block": 21002208,
"trx_in_block": 7,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:48:36",
"op": [
"vote",
{
"voter": "ellenalee",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"weight": 10000
}
]
}hr1upvoted (0.02%) @calmlake79 / kubernetes-in-google-cloud-platform-22018/03/26 03:34:42
hr1upvoted (0.02%) @calmlake79 / kubernetes-in-google-cloud-platform-2
2018/03/26 03:34:42
| voter | hr1 |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| weight | 2 (0.02%) |
| Transaction Info | Block #21001930/Trx 021175f6678ab5b349a5c18470b00dbb80079b53 |
View Raw JSON Data
{
"trx_id": "021175f6678ab5b349a5c18470b00dbb80079b53",
"block": 21001930,
"trx_in_block": 8,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:34:42",
"op": [
"vote",
{
"voter": "hr1",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"weight": 2
}
]
}sanghkaangupvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform-22018/03/26 03:15:45
sanghkaangupvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform-2
2018/03/26 03:15:45
| voter | sanghkaang |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21001551/Trx 151cdf66d2c56e7b163a84f3451ea791b1ed9b5d |
View Raw JSON Data
{
"trx_id": "151cdf66d2c56e7b163a84f3451ea791b1ed9b5d",
"block": 21001551,
"trx_in_block": 1,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:15:45",
"op": [
"vote",
{
"voter": "sanghkaang",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"weight": 10000
}
]
}2018/03/26 03:05:54
2018/03/26 03:05:54
| parent author | calmlake79 |
| parent permlink | kubernetes-in-google-cloud-platform-2 |
| author | kissyou |
| permlink | re-calmlake79-kubernetes-in-google-cloud-platform-2-20180326t030543121z |
| title | |
| body | Thank you for your sharing, I love it @calmlake79 (♥) |
| json metadata | {"tags":["gcp"],"users":["calmlake79"],"app":"steemit/0.1"} |
| Transaction Info | Block #21001354/Trx 0a1a2a63acb75b406b576918b3b581fa4d322573 |
View Raw JSON Data
{
"trx_id": "0a1a2a63acb75b406b576918b3b581fa4d322573",
"block": 21001354,
"trx_in_block": 33,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:05:54",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "kubernetes-in-google-cloud-platform-2",
"author": "kissyou",
"permlink": "re-calmlake79-kubernetes-in-google-cloud-platform-2-20180326t030543121z",
"title": "",
"body": "Thank you for your sharing, I love it @calmlake79 (♥)",
"json_metadata": "{\"tags\":[\"gcp\"],\"users\":[\"calmlake79\"],\"app\":\"steemit/0.1\"}"
}
]
}calmlake79upvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform-22018/03/26 03:04:48
calmlake79upvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform-2
2018/03/26 03:04:48
| voter | calmlake79 |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| weight | 10000 (100.00%) |
| Transaction Info | Block #21001332/Trx c9c87d8cfacb6eb881f135afafd7fab38a94054a |
View Raw JSON Data
{
"trx_id": "c9c87d8cfacb6eb881f135afafd7fab38a94054a",
"block": 21001332,
"trx_in_block": 23,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:04:48",
"op": [
"vote",
{
"voter": "calmlake79",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"weight": 10000
}
]
}calmlake79published a new post: kubernetes-in-google-cloud-platform-22018/03/26 03:04:48
calmlake79published a new post: kubernetes-in-google-cloud-platform-2
2018/03/26 03:04:48
| parent author | |
| parent permlink | gcp |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform-2 |
| title | Kubernetes in Google Cloud Platform - (2) |
| body | 지난번 포스팅에서 놓친 내용이 있는데 구성도에 관한 부분이다. 하나의 Kubernetes Cluster( 쿠베 클러스터 )는 여러개의 물리적인 Node Pool 로 구성되고 각각의 Node Pool들은 여러개의 Node로 구성이 된다. 이 부분은 물리적으로 구성이 되는 이야기이고, 가상화 된 내용은 다음과 같다. 하나의 쿠베 클러스터 안에는 여러개의 Service( 서비스 )가 유기적으로 돌아가며 개별 서비스들은 한개 혹은 여러개의 Pod(팟) 으로 구성이 된다. 각각의 Pod은 1~2개의 docker container ( 컨테이너 ) 로 이뤄져 있다. 우리는 이 컨테이너는 신경쓰지 않고 pod만 신경쓰고 개발하면 된다. ( 물론 뭔가 유니크한 작업을 해야만 하는게 있다면 당연히 신경써야 하는데, 애초에 pod이 여러개라는걸 감안하면 당연히 신경써야 하는 내용이긴 하다. ) 물리적으로 1개의 pod은 1개의 노드( 물리서버) 위에서 동작한다. 따라서 앞에서 언급한것처럼 경우에 따라 2개의 도커가 들어가게 되는 경우에는 하나의 서버에 그만큼 부하가 더 걸릴 수 있으나 쿠베가 알아서 할것이니 우리는 신경쓰지 않는다. --- 쿠베를 배우는 전체적인 흐름은 우리 회사에서 내가 시스템을 구축하고 있는 현재 상황을 그대로 따라갈것이다. 따라서, 이게 절대적인건 아니고 향후 학습을 통해 더 좋은 방법이 나오게 되면 바뀌어야 겠지만, 아쉽게도 스팀잇은 1주일이 지나면 글 본문을 수정할 수 없기에... 댓글 정도 남기는 선에서 끝날듯 하다; --- 현재 당장의 목표는 쿠베를 이용해서 HTTPS가 지원되는 웹서버를 만드는것이었다. 처음에는 Let's Encrypt를 이용하여 자동으로 구성하게 하려 했으나, 시도를 하는대로 했으나 결국 포기하고. ( 지금은 가능할꺼 같지만 ) NameCheap 에서 인증서를 구매했다. https://www.namecheap.com/security/ssl-certificates.aspx ( 8.88$ ) --- 구입한 인증서를 다음과 같은 명령어를 통해서 쿠베에 등록을 해준다. ``` kubectl create secret tls custom-tls-cert --key tls.key --cert tls.crt ``` 그러면 다음과 같이 [ 구성 ] 에 등록이 된다.  다음으로 [ 작업 부하 ] 로 가서 [ 배포 ] 를 눌러 새로운 작업단위를 만든다.  다음과 같은 화면이 뜨는데, 여기서는 [ 어플리케이션 이름 ] 만 nginx 로 바꾸고 바로 [ 배포 ]를 눌러 만든다. *여기서 가능하면 YAML 보기라는 버튼이 있는데, 매번 뭔가 작업할때 마다 보고 배우면 나중에 직접 스크립트를 통해서 컨트롤이 가능해진다.*  다음으로 이제 클라우드 콘솔을 사용하여 작업을 진행한다. 개별적으로 터미널에서 해도 되지만 이건 그냥 간단한 작업이므로..  화면에서 [ 연결 ] 버튼을 누른다. 그러면 다음과 같은 화면이 뜬다.  여기서 [ Cloud Shell 에서 실행 ]을 누르면 아래에 터미널 비슷한 창이 뜬다. 명령줄이 입력되어 있을껀데, 엔터를 눌러 실행한다. ``` echo " apiVersion: v1 kind: Service metadata: name: nginx-service namespace: default labels: app: nginx spec: type: NodePort ports: - port: 80 targetPort: 80 protocol: TCP name: http selector: app: nginx " | kubectl create -f - ``` 위와 같은 코드를 콘솔창에 입력하여 새로운 서비스를 생성한다. 간단히 설명하면 앞에서 만든 nginx 앱을 선택해서 80 포트로 http 서비스를 생성하되, 이름은 nginx-service로 한다는 내용이다. 다음으로 다음과 같이 입력하여 GCLB와 연동을 한다. ``` echo " apiVersion: extensions/v1beta1 kind: Ingress metadata: name: web namespace: default spec: rules: - host: example.com tls: - secretName: custom-tls-cert hosts: - waplchat.com backend: serviceName: nginx-service servicePort: 80 " | kubectl create -f - ``` 역시 간단히 설명하면, Ingress( 외부에서 접속가능한것을 만드는 내용 ) 서비스를 생성하되, 이름은 web 이고, 앞에서 만든 custom-tls-cert 라는 인증서를 이용하여 https 까지 지원하는 내용이다. 백엔드는 바로 앞에서 만든 nginx-service 를 이용한다. 포트는 물론 80 포트이고, rules 에서 host를 통해서 어떤 도메인을 지원할것인가를 지정이 가능하다. 여기까지 하고 나면 약간의 시간이 걸리고 [ 네트워크 서비스 -> 부하 분산 ] 에 가보면 새로운 로드 밸런서가 만들어져 있다. |
| json metadata | {"tags":["gcp","kr","kubernetes","gke"],"image":["https://steemitimages.com/DQmQhkvkN5xFKAH65fNqED8TXUA5pebHMrkTP4rffTAntQp/screenshot%202018-03-26%2011.24.06.png","https://steemitimages.com/DQmfZMP7mZmseT4RcK7h1cKdNuSFT7odGMK2crDw2q6vekg/screenshot%202018-03-26%2011.29.21.png","https://steemitimages.com/DQmWkRqcnLZqk2kahgqyhTsKD4btSHEj2mxqUebTh5x8VED/screenshot%202018-03-26%2011.33.01.png","https://steemitimages.com/DQmdzaRjLEE65wWZUtbNFjjviaBQzzL1NSBeDZeh7U3ZeVd/screenshot%202018-03-26%2011.52.06.png","https://steemitimages.com/DQmULDQZHrkEWBAZt5VG8QoePtFYh7fzV1qaXXKifXoQPaA/screenshot%202018-03-26%2011.53.19.png"],"links":["https://www.namecheap.com/security/ssl-certificates.aspx"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #21001332/Trx c9c87d8cfacb6eb881f135afafd7fab38a94054a |
View Raw JSON Data
{
"trx_id": "c9c87d8cfacb6eb881f135afafd7fab38a94054a",
"block": 21001332,
"trx_in_block": 23,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-26T03:04:48",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "gcp",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform-2",
"title": "Kubernetes in Google Cloud Platform - (2)",
"body": "지난번 포스팅에서 놓친 내용이 있는데 구성도에 관한 부분이다.\n\n하나의 Kubernetes Cluster( 쿠베 클러스터 )는 여러개의 물리적인 Node Pool 로 구성되고 각각의 Node Pool들은 여러개의 Node로 구성이 된다. 이 부분은 물리적으로 구성이 되는 이야기이고, 가상화 된 내용은 다음과 같다.\n\n하나의 쿠베 클러스터 안에는 여러개의 Service( 서비스 )가 유기적으로 돌아가며 개별 서비스들은 한개 혹은 여러개의 Pod(팟) 으로 구성이 된다. 각각의 Pod은 1~2개의 docker container ( 컨테이너 ) 로 이뤄져 있다. 우리는 이 컨테이너는 신경쓰지 않고 pod만 신경쓰고 개발하면 된다. ( 물론 뭔가 유니크한 작업을 해야만 하는게 있다면 당연히 신경써야 하는데, 애초에 pod이 여러개라는걸 감안하면 당연히 신경써야 하는 내용이긴 하다. )\n\n물리적으로 1개의 pod은 1개의 노드( 물리서버) 위에서 동작한다. 따라서 앞에서 언급한것처럼 경우에 따라 2개의 도커가 들어가게 되는 경우에는 하나의 서버에 그만큼 부하가 더 걸릴 수 있으나 쿠베가 알아서 할것이니 우리는 신경쓰지 않는다.\n\n---\n\n쿠베를 배우는 \n전체적인 흐름은 우리 회사에서 내가 시스템을 구축하고 있는 현재 상황을 그대로 따라갈것이다. \n따라서, 이게 절대적인건 아니고 향후 학습을 통해 더 좋은 방법이 나오게 되면 바뀌어야 겠지만, 아쉽게도 스팀잇은 1주일이 지나면 글 본문을 수정할 수 없기에...\n댓글 정도 남기는 선에서 끝날듯 하다;\n\n---\n\n현재 당장의 목표는 쿠베를 이용해서 HTTPS가 지원되는 웹서버를 만드는것이었다.\n처음에는 Let's Encrypt를 이용하여 자동으로 구성하게 하려 했으나, 시도를 하는대로 했으나 결국 포기하고. ( 지금은 가능할꺼 같지만 )\nNameCheap 에서 인증서를 구매했다. https://www.namecheap.com/security/ssl-certificates.aspx ( 8.88$ )\n\n---\n\n구입한 인증서를 다음과 같은 명령어를 통해서 쿠베에 등록을 해준다.\n\n```\nkubectl create secret tls custom-tls-cert --key tls.key --cert tls.crt\n```\n\n그러면 다음과 같이 [ 구성 ] 에 등록이 된다.\n\n\n\n다음으로 [ 작업 부하 ] 로 가서 [ 배포 ] 를 눌러 새로운 작업단위를 만든다.\n\n\n\n다음과 같은 화면이 뜨는데, 여기서는 [ 어플리케이션 이름 ] 만 nginx 로 바꾸고 바로 [ 배포 ]를 눌러 만든다.\n\n*여기서 가능하면 YAML 보기라는 버튼이 있는데, 매번 뭔가 작업할때 마다 보고 배우면 나중에 직접 스크립트를 통해서 컨트롤이 가능해진다.*\n\n\n\n다음으로 이제 클라우드 콘솔을 사용하여 작업을 진행한다. 개별적으로 터미널에서 해도 되지만 이건 그냥 간단한 작업이므로..\n\n\n\n화면에서 [ 연결 ] 버튼을 누른다. 그러면 다음과 같은 화면이 뜬다.\n\n\n\n여기서 [ Cloud Shell 에서 실행 ]을 누르면 아래에 터미널 비슷한 창이 뜬다.\n명령줄이 입력되어 있을껀데, 엔터를 눌러 실행한다.\n\n```\necho \"\napiVersion: v1\nkind: Service\nmetadata:\n name: nginx-service\n namespace: default\n labels:\n app: nginx\nspec:\n type: NodePort\n ports:\n - port: 80\n targetPort: 80\n protocol: TCP\n name: http\n selector:\n app: nginx\n\" | kubectl create -f - \n\n```\n위와 같은 코드를 콘솔창에 입력하여 새로운 서비스를 생성한다.\n간단히 설명하면 앞에서 만든 nginx 앱을 선택해서 80 포트로 http 서비스를 생성하되, 이름은 nginx-service로 한다는 내용이다.\n\n다음으로 다음과 같이 입력하여 GCLB와 연동을 한다.\n```\necho \"\napiVersion: extensions/v1beta1\nkind: Ingress\nmetadata:\n name: web\n namespace: default\n\nspec:\n rules:\n - host: example.com\n tls:\n - secretName: custom-tls-cert\n hosts:\n - waplchat.com\n backend:\n serviceName: nginx-service\n servicePort: 80\n\" | kubectl create -f - \n```\n역시 간단히 설명하면, Ingress( 외부에서 접속가능한것을 만드는 내용 ) 서비스를 생성하되, 이름은 web 이고, 앞에서 만든 custom-tls-cert 라는 인증서를 이용하여 https 까지 지원하는 내용이다. 백엔드는 바로 앞에서 만든 nginx-service 를 이용한다. 포트는 물론 80 포트이고, rules 에서 host를 통해서 어떤 도메인을 지원할것인가를 지정이 가능하다.\n\n여기까지 하고 나면 약간의 시간이 걸리고 [ 네트워크 서비스 -> 부하 분산 ] 에 가보면 새로운 로드 밸런서가 만들어져 있다.",
"json_metadata": "{\"tags\":[\"gcp\",\"kr\",\"kubernetes\",\"gke\"],\"image\":[\"https://steemitimages.com/DQmQhkvkN5xFKAH65fNqED8TXUA5pebHMrkTP4rffTAntQp/screenshot%202018-03-26%2011.24.06.png\",\"https://steemitimages.com/DQmfZMP7mZmseT4RcK7h1cKdNuSFT7odGMK2crDw2q6vekg/screenshot%202018-03-26%2011.29.21.png\",\"https://steemitimages.com/DQmWkRqcnLZqk2kahgqyhTsKD4btSHEj2mxqUebTh5x8VED/screenshot%202018-03-26%2011.33.01.png\",\"https://steemitimages.com/DQmdzaRjLEE65wWZUtbNFjjviaBQzzL1NSBeDZeh7U3ZeVd/screenshot%202018-03-26%2011.52.06.png\",\"https://steemitimages.com/DQmULDQZHrkEWBAZt5VG8QoePtFYh7fzV1qaXXKifXoQPaA/screenshot%202018-03-26%2011.53.19.png\"],\"links\":[\"https://www.namecheap.com/security/ssl-certificates.aspx\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}bramdupvoted (30.00%) @calmlake79 / kubernetes-in-google-cloud-platform2018/03/25 12:45:51
bramdupvoted (30.00%) @calmlake79 / kubernetes-in-google-cloud-platform
2018/03/25 12:45:51
| voter | bramd |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform |
| weight | 3000 (30.00%) |
| Transaction Info | Block #20984161/Trx 6d37f9297e86d6cee38cc3565ddf7a7235b86e1d |
View Raw JSON Data
{
"trx_id": "6d37f9297e86d6cee38cc3565ddf7a7235b86e1d",
"block": 20984161,
"trx_in_block": 28,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-25T12:45:51",
"op": [
"vote",
{
"voter": "bramd",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform",
"weight": 3000
}
]
}calmlake79published a new post: kubernetes-in-google-cloud-platform2018/03/24 15:37:27
calmlake79published a new post: kubernetes-in-google-cloud-platform
2018/03/24 15:37:27
| parent author | |
| parent permlink | kr |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform |
| title | Kubernetes in Google Cloud Platform - (1) |
| body |  Kubernetes( 쿠버네티즈 이하 짧게 쿠베라고 호칭하겠음 )를 처음에 배우기 시작하게 된건 비용절감이었다. docker를 쓰기 시작한 이후 docker가 많아져서 관리가 매우 불편해지는 상황이 왔고, (당시 내가 알기로는 ) 구글에서 gcp 위에 한개의 머신에 한개의 docker 컨테이너를 올려주는 서비스는 있었지만, 하나의 서버에 여러개의 docker 컨테이너를 올려주는 서비스가 없어서 아쉬워 하던 찰나에 누군가 쿠베를 알려주어 알게 되었다. 사실, 개별적으로 관리하면 상관없는데, 쿠베와 같은 서비스를 이용하고 싶었던 이유는 "비용 절감"이었다. 각각의 docker 컨테이너들이 항상 풀로드가 걸리는것도 아니고, 많은 메모리를 사용하는것도 아닌데, 저렴한 비용으로 많은 docker 컨테이너를 돌리고 싶었던것. 더구나 우리 회사는 챗봇이라는 서비스를 하는데, 챗봇의 특성상 항상 균일하게 서버에 로드가 걸리지 않는다. 쿠베를 알고 난뒤, 이건 정말 나를 위한 서비스구나..하는 생각을 하게 되었다. 쿠베를 알기전 하나의 서버에서 도커를 운용하기 위해서 자체적으로 shell script와 node를 이용해서 관리시스템을 만들었었다. 하나의 명령어로 서버의 도커들을 업데이트하고 최신 버전으로 유지하고 등등을 하기 위한, 그러나 쿠베를 알고 보니 참 부질없는 짓이었.. -------- 쿠버네티즈는 그리스어로 "키잡이"를 의미한다. 구글이 Go 언어를 이용해 만들었으며 2014년 중반쯤 발표된 시스템이다. 구글이 처음 만들었지만 오픈소스형태로 기부되었고, 구글에서는 GKE ( https://cloud.google.com/kubernetes-engine/?hl=ko )라는 이름으로 서비스 중이고, AWS에서는 EKS ( https://aws.amazon.com/ko/eks/ ) 라는 이름의 서비스. Azure 에서는 그냥 원래의 이름대로 ( https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/ ) 서비스가 되고 있다. ( 링크의 사이트를 한번씩 방문해보는것도 좋을듯 ) 쿠베의 장점과 특징은 여러가지가 있지만, 간략히 말하자면 앞에서 말한듯이 "여러대의 서버가 돌아가는 시스템에서 , 각각의 도커 컨테이너들이 각각의 서버에서 하나의 서비스로 돌아갈 수 있도록 유기적으로 연결해주는것"이다. 오케스트레이션이라는 용어를 사용하는데, 용어는 인터넷에서 찾음 될꺼고, 예를들자면 이런것이다. 우선 서버를 3대 세팅한다. 3대의 서버에서는 nginx 를 이용하는 컨테이너가 3개가 돌아가고, 각각의 nginx는 그 뒤에 여러개의 다양한 node.js 컨테이너들을 다양하게 구동한다고 치자. 각각의 node.js 컨테이너들은 각각 다른 url을 라우팅한다. 이런 경우 단일 서버에서 운영하는것도 쉽지 않은데, 심지어 서버가 여러대가 되면 더욱 답이 없다. 이러한 문제를 쿠베가 해결해준다. 서버 3대를 각각 개별 node 라고 부른다. ( node.js의 node 가 아니다! ) 각각의 nginx 컨테이너를 하나로 묶어 하나의 pod 라고 부른다. 개별적인 pod에는 여러개의 컨테이너가 동시에 돌아간다. pod안의 컨테이너들은 node에 분산되어 돌아가게 된다. 즉, 하나의 시스템에는 node라고 부르는 물리적인 서버 ( 물론 클라우드 일수도 있다. ) 가 있고, 각각의 node에는 pod라고 부르는 가상화 된 컨테이너 묶음들이 운영되게 된다. 이러한 시스템을 활용하면 GCP의 경우 선점형( preemptible ) 서버를 활용해 비용을 줄 일 수도 있다.( 현재는 베타임 ) 아직은 초짜인 상황이라.. 아직은 잘 모르는게 많지만, 공부를 해나가면서 포스팅을 더 해야 할듯. 이글은 여기까지.. |
| json metadata | {"tags":["kr","gcp","gke","eks","kubernetes"],"image":["https://steemitimages.com/DQmUqZiJf2RGxpaAB9SYcFNmPJZMsh3PxFeigMZ5PXEeJhh/favicon.png"],"links":["https://cloud.google.com/kubernetes-engine/?hl=ko","https://aws.amazon.com/ko/eks/","https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #20958797/Trx fee93f194474ae137c1bb7e620660c41713ca7e0 |
View Raw JSON Data
{
"trx_id": "fee93f194474ae137c1bb7e620660c41713ca7e0",
"block": 20958797,
"trx_in_block": 26,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-24T15:37:27",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kr",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform",
"title": "Kubernetes in Google Cloud Platform - (1)",
"body": "\n\nKubernetes( 쿠버네티즈 이하 짧게 쿠베라고 호칭하겠음 )를 처음에 배우기 시작하게 된건 비용절감이었다.\ndocker를 쓰기 시작한 이후 docker가 많아져서 관리가 매우 불편해지는 상황이 왔고, (당시 내가 알기로는 ) 구글에서 gcp 위에 한개의 머신에 한개의 docker 컨테이너를 올려주는 서비스는 있었지만, 하나의 서버에 여러개의 docker 컨테이너를 올려주는 서비스가 없어서 아쉬워 하던 찰나에 누군가 쿠베를 알려주어 알게 되었다. 사실, 개별적으로 관리하면 상관없는데, 쿠베와 같은 서비스를 이용하고 싶었던 이유는 \"비용 절감\"이었다. 각각의 docker 컨테이너들이 항상 풀로드가 걸리는것도 아니고, 많은 메모리를 사용하는것도 아닌데, 저렴한 비용으로 많은 docker 컨테이너를 돌리고 싶었던것.\n\n더구나 우리 회사는 챗봇이라는 서비스를 하는데, 챗봇의 특성상 항상 균일하게 서버에 로드가 걸리지 않는다. 쿠베를 알고 난뒤, 이건 정말 나를 위한 서비스구나..하는 생각을 하게 되었다.\n\n쿠베를 알기전 하나의 서버에서 도커를 운용하기 위해서 자체적으로 shell script와 node를 이용해서 관리시스템을 만들었었다. \n하나의 명령어로 서버의 도커들을 업데이트하고 최신 버전으로 유지하고 등등을 하기 위한, 그러나 쿠베를 알고 보니 참 부질없는 짓이었.. \n\n--------\n\n쿠버네티즈는 그리스어로 \"키잡이\"를 의미한다.\n구글이 Go 언어를 이용해 만들었으며 2014년 중반쯤 발표된 시스템이다.\n\n구글이 처음 만들었지만 오픈소스형태로 기부되었고, 구글에서는 GKE ( https://cloud.google.com/kubernetes-engine/?hl=ko )라는 이름으로 서비스 중이고, AWS에서는 EKS ( https://aws.amazon.com/ko/eks/ ) 라는 이름의 서비스. Azure 에서는 그냥 원래의 이름대로 ( https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/ ) 서비스가 되고 있다.\n( 링크의 사이트를 한번씩 방문해보는것도 좋을듯 )\n\n쿠베의 장점과 특징은 여러가지가 있지만, 간략히 말하자면 앞에서 말한듯이 \"여러대의 서버가 돌아가는 시스템에서 , 각각의 도커 컨테이너들이 각각의 서버에서 하나의 서비스로 돌아갈 수 있도록 유기적으로 연결해주는것\"이다.\n\n오케스트레이션이라는 용어를 사용하는데, 용어는 인터넷에서 찾음 될꺼고, 예를들자면 이런것이다.\n\n우선 서버를 3대 세팅한다. 3대의 서버에서는 nginx 를 이용하는 컨테이너가 3개가 돌아가고, 각각의 nginx는 그 뒤에 여러개의 다양한 node.js 컨테이너들을 다양하게 구동한다고 치자. 각각의 node.js 컨테이너들은 각각 다른 url을 라우팅한다.\n\n이런 경우 단일 서버에서 운영하는것도 쉽지 않은데, 심지어 서버가 여러대가 되면 더욱 답이 없다.\n\n이러한 문제를 쿠베가 해결해준다. 서버 3대를 각각 개별 node 라고 부른다. ( node.js의 node 가 아니다! )\n각각의 nginx 컨테이너를 하나로 묶어 하나의 pod 라고 부른다. 개별적인 pod에는 여러개의 컨테이너가 동시에 돌아간다.\npod안의 컨테이너들은 node에 분산되어 돌아가게 된다.\n\n즉, 하나의 시스템에는 node라고 부르는 물리적인 서버 ( 물론 클라우드 일수도 있다. ) 가 있고, 각각의 node에는 pod라고 부르는 가상화 된 컨테이너 묶음들이 운영되게 된다. \n\n이러한 시스템을 활용하면 GCP의 경우 선점형( preemptible ) 서버를 활용해 비용을 줄 일 수도 있다.( 현재는 베타임 )\n\n아직은 초짜인 상황이라.. 아직은 잘 모르는게 많지만, 공부를 해나가면서 포스팅을 더 해야 할듯.\n\n이글은 여기까지..",
"json_metadata": "{\"tags\":[\"kr\",\"gcp\",\"gke\",\"eks\",\"kubernetes\"],\"image\":[\"https://steemitimages.com/DQmUqZiJf2RGxpaAB9SYcFNmPJZMsh3PxFeigMZ5PXEeJhh/favicon.png\"],\"links\":[\"https://cloud.google.com/kubernetes-engine/?hl=ko\",\"https://aws.amazon.com/ko/eks/\",\"https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}frenzy27upvoted (50.00%) @calmlake79 / kubernetes-in-google-cloud-platform2018/03/24 15:32:51
frenzy27upvoted (50.00%) @calmlake79 / kubernetes-in-google-cloud-platform
2018/03/24 15:32:51
| voter | frenzy27 |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform |
| weight | 5000 (50.00%) |
| Transaction Info | Block #20958705/Trx 170a85c006d9f30ad8744c3cf86e632ced6908c9 |
View Raw JSON Data
{
"trx_id": "170a85c006d9f30ad8744c3cf86e632ced6908c9",
"block": 20958705,
"trx_in_block": 39,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-24T15:32:51",
"op": [
"vote",
{
"voter": "frenzy27",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform",
"weight": 5000
}
]
}calmlake79upvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform2018/03/24 15:23:27
calmlake79upvoted (100.00%) @calmlake79 / kubernetes-in-google-cloud-platform
2018/03/24 15:23:27
| voter | calmlake79 |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform |
| weight | 10000 (100.00%) |
| Transaction Info | Block #20958517/Trx 1d71a358a33778dd322d5fabcf035dd7c89e06e9 |
View Raw JSON Data
{
"trx_id": "1d71a358a33778dd322d5fabcf035dd7c89e06e9",
"block": 20958517,
"trx_in_block": 29,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-24T15:23:27",
"op": [
"vote",
{
"voter": "calmlake79",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform",
"weight": 10000
}
]
}calmlake79published a new post: kubernetes-in-google-cloud-platform2018/03/24 15:23:27
calmlake79published a new post: kubernetes-in-google-cloud-platform
2018/03/24 15:23:27
| parent author | |
| parent permlink | kr |
| author | calmlake79 |
| permlink | kubernetes-in-google-cloud-platform |
| title | Kubernetes in Google Cloud Platform |
| body |  Kubernetes( 쿠버네티즈 이하 짧게 쿠베라고 호칭하겠음 )를 처음에 배우기 시작하게 된건 비용절감이었다. docker를 쓰기 시작한 이후 docker가 많아져서 관리가 매우 불편해지는 상황이 왔고, (당시 내가 알기로는 ) 구글에서 gcp 위에 한개의 머신에 한개의 docker 컨테이너를 올려주는 서비스는 있었지만, 하나의 서버에 여러개의 docker 컨테이너를 올려주는 서비스가 없어서 아쉬워 하던 찰나에 누군가 쿠베를 알려주어 알게 되었다. 사실, 개별적으로 관리하면 상관없는데, 쿠베와 같은 서비스를 이용하고 싶었던 이유는 "비용 절감"이었다. 각각의 docker 컨테이너들이 항상 풀로드가 걸리는것도 아니고, 많은 메모리를 사용하는것도 아닌데, 저렴한 비용으로 많은 docker 컨테이너를 돌리고 싶었던것. 더구나 우리 회사는 챗봇이라는 서비스를 하는데, 챗봇의 특성상 항상 균일하게 서버에 로드가 걸리지 않는다. 쿠베를 알고 난뒤, 이건 정말 나를 위한 서비스구나..하는 생각을 하게 되었다. 쿠베를 알기전 하나의 서버에서 도커를 운용하기 위해서 자체적으로 shell script와 node를 이용해서 관리시스템을 만들었었다. 하나의 명령어로 서버의 도커들을 업데이트하고 최신 버전으로 유지하고 등등을 하기 위한, 그러나 쿠베를 알고 보니 참 부질없는 짓이었.. -------- 쿠버네티즈는 그리스어로 "키잡이"를 의미한다. 구글이 Go 언어를 이용해 만들었으며 2014년 중반쯤 발표된 시스템이다. 구글이 처음 만들었지만 오픈소스형태로 기부되었고, 구글에서는 GKE ( https://cloud.google.com/kubernetes-engine/?hl=ko )라는 이름으로 서비스 중이고, AWS에서는 EKS ( https://aws.amazon.com/ko/eks/ ) 라는 이름의 서비스. Azure 에서는 그냥 원래의 이름대로 ( https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/ ) 서비스가 되고 있다. ( 링크의 사이트를 한번씩 방문해보는것도 좋을듯 ) 쿠베의 장점과 특징은 여러가지가 있지만, 간략히 말하자면 앞에서 말한듯이 "여러대의 서버가 돌아가는 시스템에서 , 각각의 도커 컨테이너들이 각각의 서버에서 하나의 서비스로 돌아갈 수 있도록 유기적으로 연결해주는것"이다. 오케스트레이션이라는 용어를 사용하는데, 용어는 인터넷에서 찾음 될꺼고, 예를들자면 이런것이다. 우선 서버를 3대 세팅한다. 3대의 서버에서는 nginx 를 이용하는 컨테이너가 3개가 돌아가고, 각각의 nginx는 그 뒤에 여러개의 다양한 node.js 컨테이너들을 다양하게 구동한다고 치자. 각각의 node.js 컨테이너들은 각각 다른 url을 라우팅한다. 이런 경우 단일 서버에서 운영하는것도 쉽지 않은데, 심지어 서버가 여러대가 되면 더욱 답이 없다. 이러한 문제를 쿠베가 해결해준다. 서버 3대를 각각 개별 node 라고 부른다. ( node.js의 node 가 아니다! ) 각각의 nginx 컨테이너를 하나로 묶어 하나의 pod 라고 부른다. 개별적인 pod에는 여러개의 컨테이너가 동시에 돌아간다. pod안의 컨테이너들은 node에 분산되어 돌아가게 된다. 즉, 하나의 시스템에는 node라고 부르는 물리적인 서버 ( 물론 클라우드 일수도 있다. ) 가 있고, 각각의 node에는 pod라고 부르는 가상화 된 컨테이너 묶음들이 운영되게 된다. 이러한 시스템을 활용하면 GCP의 경우 선점형( preemptible ) 서버를 활용해 비용을 줄 일 수도 있다.( 현재는 베타임 ) 아직은 초짜인 상황이라.. 아직은 잘 모르는게 많지만, 공부를 해나가면서 포스팅을 더 해야 할듯. 이글은 여기까지.. |
| json metadata | {"tags":["kr","gcp","gke","eks","kubernetes"],"image":["https://steemitimages.com/DQmUqZiJf2RGxpaAB9SYcFNmPJZMsh3PxFeigMZ5PXEeJhh/favicon.png"],"links":["https://cloud.google.com/kubernetes-engine/?hl=ko","https://aws.amazon.com/ko/eks/","https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/"],"app":"steemit/0.1","format":"markdown"} |
| Transaction Info | Block #20958517/Trx 1d71a358a33778dd322d5fabcf035dd7c89e06e9 |
View Raw JSON Data
{
"trx_id": "1d71a358a33778dd322d5fabcf035dd7c89e06e9",
"block": 20958517,
"trx_in_block": 29,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-24T15:23:27",
"op": [
"comment",
{
"parent_author": "",
"parent_permlink": "kr",
"author": "calmlake79",
"permlink": "kubernetes-in-google-cloud-platform",
"title": "Kubernetes in Google Cloud Platform",
"body": "\n\nKubernetes( 쿠버네티즈 이하 짧게 쿠베라고 호칭하겠음 )를 처음에 배우기 시작하게 된건 비용절감이었다.\ndocker를 쓰기 시작한 이후 docker가 많아져서 관리가 매우 불편해지는 상황이 왔고, (당시 내가 알기로는 ) 구글에서 gcp 위에 한개의 머신에 한개의 docker 컨테이너를 올려주는 서비스는 있었지만, 하나의 서버에 여러개의 docker 컨테이너를 올려주는 서비스가 없어서 아쉬워 하던 찰나에 누군가 쿠베를 알려주어 알게 되었다. 사실, 개별적으로 관리하면 상관없는데, 쿠베와 같은 서비스를 이용하고 싶었던 이유는 \"비용 절감\"이었다. 각각의 docker 컨테이너들이 항상 풀로드가 걸리는것도 아니고, 많은 메모리를 사용하는것도 아닌데, 저렴한 비용으로 많은 docker 컨테이너를 돌리고 싶었던것.\n\n더구나 우리 회사는 챗봇이라는 서비스를 하는데, 챗봇의 특성상 항상 균일하게 서버에 로드가 걸리지 않는다. 쿠베를 알고 난뒤, 이건 정말 나를 위한 서비스구나..하는 생각을 하게 되었다.\n\n쿠베를 알기전 하나의 서버에서 도커를 운용하기 위해서 자체적으로 shell script와 node를 이용해서 관리시스템을 만들었었다. \n하나의 명령어로 서버의 도커들을 업데이트하고 최신 버전으로 유지하고 등등을 하기 위한, 그러나 쿠베를 알고 보니 참 부질없는 짓이었.. \n\n--------\n\n쿠버네티즈는 그리스어로 \"키잡이\"를 의미한다.\n구글이 Go 언어를 이용해 만들었으며 2014년 중반쯤 발표된 시스템이다.\n\n구글이 처음 만들었지만 오픈소스형태로 기부되었고, 구글에서는 GKE ( https://cloud.google.com/kubernetes-engine/?hl=ko )라는 이름으로 서비스 중이고, AWS에서는 EKS ( https://aws.amazon.com/ko/eks/ ) 라는 이름의 서비스. Azure 에서는 그냥 원래의 이름대로 ( https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/ ) 서비스가 되고 있다.\n( 링크의 사이트를 한번씩 방문해보는것도 좋을듯 )\n\n쿠베의 장점과 특징은 여러가지가 있지만, 간략히 말하자면 앞에서 말한듯이 \"여러대의 서버가 돌아가는 시스템에서 , 각각의 도커 컨테이너들이 각각의 서버에서 하나의 서비스로 돌아갈 수 있도록 유기적으로 연결해주는것\"이다.\n\n오케스트레이션이라는 용어를 사용하는데, 용어는 인터넷에서 찾음 될꺼고, 예를들자면 이런것이다.\n\n우선 서버를 3대 세팅한다. 3대의 서버에서는 nginx 를 이용하는 컨테이너가 3개가 돌아가고, 각각의 nginx는 그 뒤에 여러개의 다양한 node.js 컨테이너들을 다양하게 구동한다고 치자. 각각의 node.js 컨테이너들은 각각 다른 url을 라우팅한다.\n\n이런 경우 단일 서버에서 운영하는것도 쉽지 않은데, 심지어 서버가 여러대가 되면 더욱 답이 없다.\n\n이러한 문제를 쿠베가 해결해준다. 서버 3대를 각각 개별 node 라고 부른다. ( node.js의 node 가 아니다! )\n각각의 nginx 컨테이너를 하나로 묶어 하나의 pod 라고 부른다. 개별적인 pod에는 여러개의 컨테이너가 동시에 돌아간다.\npod안의 컨테이너들은 node에 분산되어 돌아가게 된다.\n\n즉, 하나의 시스템에는 node라고 부르는 물리적인 서버 ( 물론 클라우드 일수도 있다. ) 가 있고, 각각의 node에는 pod라고 부르는 가상화 된 컨테이너 묶음들이 운영되게 된다. \n\n이러한 시스템을 활용하면 GCP의 경우 선점형( preemptible ) 서버를 활용해 비용을 줄 일 수도 있다.( 현재는 베타임 )\n\n아직은 초짜인 상황이라.. 아직은 잘 모르는게 많지만, 공부를 해나가면서 포스팅을 더 해야 할듯.\n\n이글은 여기까지..",
"json_metadata": "{\"tags\":[\"kr\",\"gcp\",\"gke\",\"eks\",\"kubernetes\"],\"image\":[\"https://steemitimages.com/DQmUqZiJf2RGxpaAB9SYcFNmPJZMsh3PxFeigMZ5PXEeJhh/favicon.png\"],\"links\":[\"https://cloud.google.com/kubernetes-engine/?hl=ko\",\"https://aws.amazon.com/ko/eks/\",\"https://azure.microsoft.com/ko-kr/services/container-service/kubernetes/\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
}
]
}calmlake79powered up 0.087 STEEM to @calmlake792018/03/22 02:28:36
calmlake79powered up 0.087 STEEM to @calmlake79
2018/03/22 02:28:36
| from | calmlake79 |
| to | calmlake79 |
| amount | 0.087 STEEM |
| Transaction Info | Block #20885780/Trx d7a43e508c75db088acbfec9ccbb02304c0e7e6a |
View Raw JSON Data
{
"trx_id": "d7a43e508c75db088acbfec9ccbb02304c0e7e6a",
"block": 20885780,
"trx_in_block": 23,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-22T02:28:36",
"op": [
"transfer_to_vesting",
{
"from": "calmlake79",
"to": "calmlake79",
"amount": "0.087 STEEM"
}
]
}calmlake79blockchain operation: limit order create2018/03/22 02:28:00
calmlake79blockchain operation: limit order create
2018/03/22 02:28:00
| owner | calmlake79 |
| orderid | 1521685676 |
| amount to sell | 0.083 SBD |
| min to receive | 0.084 STEEM |
| fill or kill | false |
| expiration | 1969-12-31T23:59:59 |
| Transaction Info | Block #20885768/Trx 6e7be06168797b67f42a50e6c21c781c83af7673 |
View Raw JSON Data
{
"trx_id": "6e7be06168797b67f42a50e6c21c781c83af7673",
"block": 20885768,
"trx_in_block": 10,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-22T02:28:00",
"op": [
"limit_order_create",
{
"owner": "calmlake79",
"orderid": 1521685676,
"amount_to_sell": "0.083 SBD",
"min_to_receive": "0.084 STEEM",
"fill_or_kill": false,
"expiration": "1969-12-31T23:59:59"
}
]
}calmlake79bought 0.084 STEEM for 0.083 SBD from @michelcamacaro2018/03/22 02:28:00
calmlake79bought 0.084 STEEM for 0.083 SBD from @michelcamacaro
2018/03/22 02:28:00
| current owner | calmlake79 |
| current orderid | 1521685676 |
| current pays | 0.083 SBD |
| open owner | michelcamacaro |
| open orderid | 1521685584 |
| open pays | 0.084 STEEM |
| Transaction Info | Block #20885768/Trx 6e7be06168797b67f42a50e6c21c781c83af7673 |
View Raw JSON Data
{
"trx_id": "6e7be06168797b67f42a50e6c21c781c83af7673",
"block": 20885768,
"trx_in_block": 10,
"op_in_trx": 0,
"virtual_op": 1,
"timestamp": "2018-03-22T02:28:00",
"op": [
"fill_order",
{
"current_owner": "calmlake79",
"current_orderid": 1521685676,
"current_pays": "0.083 SBD",
"open_owner": "michelcamacaro",
"open_orderid": 1521685584,
"open_pays": "0.084 STEEM"
}
]
}calmlake79claimed reward balance: 0.003 STEEM, 0.083 SBD, 0.060 SP2018/03/22 02:25:12
calmlake79claimed reward balance: 0.003 STEEM, 0.083 SBD, 0.060 SP
2018/03/22 02:25:12
| account | calmlake79 |
| reward steem | 0.003 STEEM |
| reward sbd | 0.083 SBD |
| reward vests | 97.962206 VESTS |
| Transaction Info | Block #20885712/Trx 90bf65f83856bfe1e710427807b66cb983b42325 |
View Raw JSON Data
{
"trx_id": "90bf65f83856bfe1e710427807b66cb983b42325",
"block": 20885712,
"trx_in_block": 34,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-22T02:25:12",
"op": [
"claim_reward_balance",
{
"account": "calmlake79",
"reward_steem": "0.003 STEEM",
"reward_sbd": "0.083 SBD",
"reward_vests": "97.962206 VESTS"
}
]
}calmlake79received 0.003 STEEM, 0.083 SBD, 0.060 SP author reward for @calmlake79 / re-hansikhouse-4wz9ps-20180314t050911307z2018/03/21 05:09:12
calmlake79received 0.003 STEEM, 0.083 SBD, 0.060 SP author reward for @calmlake79 / re-hansikhouse-4wz9ps-20180314t050911307z
2018/03/21 05:09:12
| author | calmlake79 |
| permlink | re-hansikhouse-4wz9ps-20180314t050911307z |
| sbd payout | 0.083 SBD |
| steem payout | 0.003 STEEM |
| vesting payout | 97.962206 VESTS |
| Transaction Info | Block #20860623/Virtual Operation #19 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 20860623,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 19,
"timestamp": "2018-03-21T05:09:12",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "re-hansikhouse-4wz9ps-20180314t050911307z",
"sbd_payout": "0.083 SBD",
"steem_payout": "0.003 STEEM",
"vesting_payout": "97.962206 VESTS"
}
]
}everslothupvoted (5.00%) @calmlake79 / re-hansikhouse-4wz9ps-20180314t050911307z2018/03/19 07:49:09
everslothupvoted (5.00%) @calmlake79 / re-hansikhouse-4wz9ps-20180314t050911307z
2018/03/19 07:49:09
| voter | eversloth |
| author | calmlake79 |
| permlink | re-hansikhouse-4wz9ps-20180314t050911307z |
| weight | 500 (5.00%) |
| Transaction Info | Block #20806270/Trx ab11b93b3decc54fd217c7d11396ba88f03d26a7 |
View Raw JSON Data
{
"trx_id": "ab11b93b3decc54fd217c7d11396ba88f03d26a7",
"block": 20806270,
"trx_in_block": 39,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-19T07:49:09",
"op": [
"vote",
{
"voter": "eversloth",
"author": "calmlake79",
"permlink": "re-hansikhouse-4wz9ps-20180314t050911307z",
"weight": 500
}
]
}2018/03/18 22:48:33
2018/03/18 22:48:33
| parent author | calmlake79 |
| parent permlink | 6cjsdy |
| author | johndoer123 |
| permlink | re-calmlake79-6cjsdy-20180318t224828953z |
| title | |
| body | Thanks for the upvote on " dragon tree." |
| json metadata | {"tags":["kr"],"app":"steemit/0.1"} |
| Transaction Info | Block #20795460/Trx 276d5ec5fd4255998a1741662595caa0ed123e54 |
View Raw JSON Data
{
"trx_id": "276d5ec5fd4255998a1741662595caa0ed123e54",
"block": 20795460,
"trx_in_block": 7,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-18T22:48:33",
"op": [
"comment",
{
"parent_author": "calmlake79",
"parent_permlink": "6cjsdy",
"author": "johndoer123",
"permlink": "re-calmlake79-6cjsdy-20180318t224828953z",
"title": "",
"body": "Thanks for the upvote on \" dragon tree.\"",
"json_metadata": "{\"tags\":[\"kr\"],\"app\":\"steemit/0.1\"}"
}
]
}steemdelegated 0.000 SP to @calmlake792018/03/16 05:34:06
steemdelegated 0.000 SP to @calmlake79
2018/03/16 05:34:06
| delegator | steem |
| delegatee | calmlake79 |
| vesting shares | 0.000000 VESTS |
| Transaction Info | Block #20717195/Trx 378064bae9742c05f129e45fc1470491e4dcb26f |
View Raw JSON Data
{
"trx_id": "378064bae9742c05f129e45fc1470491e4dcb26f",
"block": 20717195,
"trx_in_block": 8,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-16T05:34:06",
"op": [
"delegate_vesting_shares",
{
"delegator": "steem",
"delegatee": "calmlake79",
"vesting_shares": "0.000000 VESTS"
}
]
}calmlake79powered up 8.781 STEEM to @calmlake792018/03/16 04:40:21
calmlake79powered up 8.781 STEEM to @calmlake79
2018/03/16 04:40:21
| from | calmlake79 |
| to | calmlake79 |
| amount | 8.781 STEEM |
| Transaction Info | Block #20716120/Trx bcc8a9e04ed90935971eebff5b4818527b991c45 |
View Raw JSON Data
{
"trx_id": "bcc8a9e04ed90935971eebff5b4818527b991c45",
"block": 20716120,
"trx_in_block": 26,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-16T04:40:21",
"op": [
"transfer_to_vesting",
{
"from": "calmlake79",
"to": "calmlake79",
"amount": "8.781 STEEM"
}
]
}calmlake79blockchain operation: limit order create2018/03/16 04:37:45
calmlake79blockchain operation: limit order create
2018/03/16 04:37:45
| owner | calmlake79 |
| orderid | 1521175063 |
| amount to sell | 8.436 SBD |
| min to receive | 8.781 STEEM |
| fill or kill | false |
| expiration | 1969-12-31T23:59:59 |
| Transaction Info | Block #20716068/Trx 71fb0363806face64d4cc97c20145c75965b88cc |
View Raw JSON Data
{
"trx_id": "71fb0363806face64d4cc97c20145c75965b88cc",
"block": 20716068,
"trx_in_block": 67,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-16T04:37:45",
"op": [
"limit_order_create",
{
"owner": "calmlake79",
"orderid": 1521175063,
"amount_to_sell": "8.436 SBD",
"min_to_receive": "8.781 STEEM",
"fill_or_kill": false,
"expiration": "1969-12-31T23:59:59"
}
]
}calmlake79bought 8.781 STEEM for 8.436 SBD from @happychau1232018/03/16 04:37:45
calmlake79bought 8.781 STEEM for 8.436 SBD from @happychau123
2018/03/16 04:37:45
| current owner | calmlake79 |
| current orderid | 1521175063 |
| current pays | 8.436 SBD |
| open owner | happychau123 |
| open orderid | 119880754 |
| open pays | 8.781 STEEM |
| Transaction Info | Block #20716068/Trx 71fb0363806face64d4cc97c20145c75965b88cc |
View Raw JSON Data
{
"trx_id": "71fb0363806face64d4cc97c20145c75965b88cc",
"block": 20716068,
"trx_in_block": 67,
"op_in_trx": 0,
"virtual_op": 1,
"timestamp": "2018-03-16T04:37:45",
"op": [
"fill_order",
{
"current_owner": "calmlake79",
"current_orderid": 1521175063,
"current_pays": "8.436 SBD",
"open_owner": "happychau123",
"open_orderid": 119880754,
"open_pays": "8.781 STEEM"
}
]
}calmlake79claimed reward balance: 1.541 SBD, 0.835 SP2018/03/16 04:36:30
calmlake79claimed reward balance: 1.541 SBD, 0.835 SP
2018/03/16 04:36:30
| account | calmlake79 |
| reward steem | 0.000 STEEM |
| reward sbd | 1.541 SBD |
| reward vests | 1357.546441 VESTS |
| Transaction Info | Block #20716043/Trx 3a70d5a6ac84e5f5910cc5fdc370c44803d3465d |
View Raw JSON Data
{
"trx_id": "3a70d5a6ac84e5f5910cc5fdc370c44803d3465d",
"block": 20716043,
"trx_in_block": 71,
"op_in_trx": 0,
"virtual_op": 0,
"timestamp": "2018-03-16T04:36:30",
"op": [
"claim_reward_balance",
{
"account": "calmlake79",
"reward_steem": "0.000 STEEM",
"reward_sbd": "1.541 SBD",
"reward_vests": "1357.546441 VESTS"
}
]
}calmlake79received 0.837 SBD, 0.451 SP author reward for @calmlake79 / google-container-registry2018/03/16 04:05:36
calmlake79received 0.837 SBD, 0.451 SP author reward for @calmlake79 / google-container-registry
2018/03/16 04:05:36
| author | calmlake79 |
| permlink | google-container-registry |
| sbd payout | 0.837 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 732.870495 VESTS |
| Transaction Info | Block #20715425/Virtual Operation #28 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 20715425,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 28,
"timestamp": "2018-03-16T04:05:36",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "google-container-registry",
"sbd_payout": "0.837 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "732.870495 VESTS"
}
]
}calmlake79received 0.704 SBD, 0.379 SP author reward for @calmlake79 / google-app-engine-22018/03/16 03:29:51
calmlake79received 0.704 SBD, 0.379 SP author reward for @calmlake79 / google-app-engine-2
2018/03/16 03:29:51
| author | calmlake79 |
| permlink | google-app-engine-2 |
| sbd payout | 0.704 SBD |
| steem payout | 0.000 STEEM |
| vesting payout | 616.510248 VESTS |
| Transaction Info | Block #20714710/Virtual Operation #12 |
View Raw JSON Data
{
"trx_id": "0000000000000000000000000000000000000000",
"block": 20714710,
"trx_in_block": 4294967295,
"op_in_trx": 0,
"virtual_op": 12,
"timestamp": "2018-03-16T03:29:51",
"op": [
"author_reward",
{
"author": "calmlake79",
"permlink": "google-app-engine-2",
"sbd_payout": "0.704 SBD",
"steem_payout": "0.000 STEEM",
"vesting_payout": "616.510248 VESTS"
}
]
}Manabar
Voting Power100.00%
Downvote Power100.00%
Resource Credits100.00%
Reputation Progress74.81%
{
"voting_manabar": {
"current_mana": 9800,
"last_update_time": 1526397105
},
"downvote_manabar": {
"current_mana": 0,
"last_update_time": 1516856316
},
"rc_account": {
"account": "calmlake79",
"rc_manabar": {
"current_mana": "44675299372",
"last_update_time": 1537887600
},
"max_rc_creation_adjustment": {
"amount": "2020748973",
"precision": 6,
"nai": "@@000000037"
},
"max_rc": "44675299372"
}
}Account Metadata
| POSTING JSON METADATA | |
| profile | {"profile_image":"https://steemitimages.com/DQmQ5a3h1z2uGvmabAKJN1dnrgNPnePU1MhmSfppo2B82oB/24991457_909330192574202_8389185614686426350_n.jpg","cover_image":"https://steemitimages.com/DQmY6pTQmG15qJHnZP6PQumyrG6iEYMpqtvt3hajMMCGmwz/24231818_906802492826972_8513262920647644335_n.jpg","name":"해리슨","about":"안녕하세요 해리슨입니다.","location":"서울"} |
| JSON METADATA | |
| profile | {"profile_image":"https://steemitimages.com/DQmQ5a3h1z2uGvmabAKJN1dnrgNPnePU1MhmSfppo2B82oB/24991457_909330192574202_8389185614686426350_n.jpg","cover_image":"https://steemitimages.com/DQmY6pTQmG15qJHnZP6PQumyrG6iEYMpqtvt3hajMMCGmwz/24231818_906802492826972_8513262920647644335_n.jpg","name":"해리슨","about":"안녕하세요 해리슨입니다.","location":"서울"} |
{
"posting_json_metadata": {
"profile": {
"profile_image": "https://steemitimages.com/DQmQ5a3h1z2uGvmabAKJN1dnrgNPnePU1MhmSfppo2B82oB/24991457_909330192574202_8389185614686426350_n.jpg",
"cover_image": "https://steemitimages.com/DQmY6pTQmG15qJHnZP6PQumyrG6iEYMpqtvt3hajMMCGmwz/24231818_906802492826972_8513262920647644335_n.jpg",
"name": "해리슨",
"about": "안녕하세요 해리슨입니다.",
"location": "서울"
}
},
"json_metadata": {
"profile": {
"profile_image": "https://steemitimages.com/DQmQ5a3h1z2uGvmabAKJN1dnrgNPnePU1MhmSfppo2B82oB/24991457_909330192574202_8389185614686426350_n.jpg",
"cover_image": "https://steemitimages.com/DQmY6pTQmG15qJHnZP6PQumyrG6iEYMpqtvt3hajMMCGmwz/24231818_906802492826972_8513262920647644335_n.jpg",
"name": "해리슨",
"about": "안녕하세요 해리슨입니다.",
"location": "서울"
}
}
}Auth Keys
Owner
Single Signature
Public Keys
STM6DgfXkzqXR2YxM98HQ9Lg1ThVADEcFGDZ2yY5b7ruitvfC8yrp1/1
Active
Single Signature
Public Keys
STM5aNufyeorQkCkk1y75R7ty2wPNR2YkRZWBu1TmscG3Zn38fBay1/1
Posting
Single Signature
Public Keys
STM5EmR8ZaH9rXQWDhikDm4pLArDYg47Yrj9MYSi4bgWPjrjVWdC61/1
Memo
STM6GZ45TnXk1B36PE1uaQWtFzgFSHNJcz6y9GoArDLhkSqCZBVK5
{
"owner": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM6DgfXkzqXR2YxM98HQ9Lg1ThVADEcFGDZ2yY5b7ruitvfC8yrp",
1
]
]
},
"active": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM5aNufyeorQkCkk1y75R7ty2wPNR2YkRZWBu1TmscG3Zn38fBay",
1
]
]
},
"posting": {
"weight_threshold": 1,
"account_auths": [],
"key_auths": [
[
"STM5EmR8ZaH9rXQWDhikDm4pLArDYg47Yrj9MYSi4bgWPjrjVWdC6",
1
]
]
},
"memo": "STM6GZ45TnXk1B36PE1uaQWtFzgFSHNJcz6y9GoArDLhkSqCZBVK5"
}Witness Votes
0 / 30
No active witness votes.
[]