pokusio / le-defi

Does the any opensource blockchain exists ? I dare anyone in this world to prove it. If you have any, open an issue.
1 stars 1 forks source link

helm charts bitcoin #1

Open Jean-Baptiste-Lasselle opened 4 years ago

Jean-Baptiste-Lasselle commented 4 years ago

I am trying to defeat myself. This attempt, is based on bitcoin deployement, using the curated helm charts library.

Where I am today on this one

jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ helm package bitcoind
Successfully packaged chart and saved it to: /home/jbl/helm-ethereum/stable/bitcoind-1.0.0.tgz
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ ls -allh ./bitcoind-1.0.0.tgz
-rw-r--r-- 1 jbl jbl 4.3K May  3 09:34 ./bitcoind-1.0.0.tgz
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ helm install bleublancrougeb ./bitcoind-1.0.0.tgz
NAME: bleublancrougeb
LAST DEPLOYED: Sun May  3 09:36:33 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
bitcoind RPC can be accessed via port 8332 on the following DNS name from within your cluster:
bleublancrougeb-bitcoind.default.svc.cluster.local

To connect to bitcoind RPC:

1. Forward the port for the node:

  $ kubectl port-forward --namespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 8332

2. Test connection with user and password provided in configuration file:

  $ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getinfo", "params": [] }' -H 'content-type: text/plain;'
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ git remote -v
origin  git@github.com:helm/charts.git (fetch)
origin  git@github.com:helm/charts.git (push)
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl cluster-info
Kubernetes master is running at https://minikube.pegasusio.io:8443
KubeDNS is running at https://minikube.pegasusio.io:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --namespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 8332
Forwarding from 127.0.0.1:8332 -> 8332
Forwarding from [::1]:8332 -> 8332
Handling connection for 8332
E0503 09:44:15.883285   23981 portforward.go:400] an error occurred forwarding 8332 -> 8332: error forwarding port 8332 to pod 76a1b02bef6f752d3a277cee73691dc92d782b4dcfdb7e01ee1486f8d3f89a45, uid : unable to do port forwarding: socat not found
Handling connection for 8332
E0503 09:44:21.411688   23981 portforward.go:400] an error occurred forwarding 8332 -> 8332: error forwarding port 8332 to pod 76a1b02bef6f752d3a277cee73691dc92d782b4dcfdb7e01ee1486f8d3f89a45, uid : unable to do port forwarding: socat not found
^Cjbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --nespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 8333
Forwarding from 127.0.0.1:8333 -> 8333
Forwarding from [::1]:8333 -> 8333
Handling connection for 8333
E0503 09:45:14.277552   24049 portforward.go:400] an error occurred forwarding 8333 -> 8333: error forwarding port 8333 to pod 76a1b02bef6f752d3a277cee73691dc92d782b4dcfdb7e01ee1486f8d3f89a45, uid : unable to do port forwarding: socat not found
^Cjbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --nespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 8332
Forwarding from 127.0.0.1:8332 -> 8332
Forwarding from [::1]:8332 -> 8332
^Cjbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --nespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 18332
Forwarding from 127.0.0.1:18332 -> 18332
Forwarding from [::1]:18332 -> 18332
Handling connection for 18332
E0503 09:46:42.743213   24145 portforward.go:400] an error occurred forwarding 18332 -> 18332: error forwarding port 18332 to pod 76a1b02bef6f752d3a277cee73691dc92d782b4dcfdb7e01ee1486f8d3f89a45, uid : unable to do port forwarding: socat not found
^Cjbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --nespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 18333
Forwarding from 127.0.0.1:18333 -> 18333
Forwarding from [::1]:18333 -> 18333
Handling connection for 18333
E0503 09:48:07.639219   24178 portforward.go:400] an error occurred forwarding 18333 -> 18333: error forwarding port 18333 to pod 76a1b02bef6f752d3a277cee73691dc92d782b4dcfdb7e01ee1486f8d3f89a45, uid : unable to do port forwarding: socat not found
# I have tested 8332, 8333, 18332, 18333
export TESTED_PORT_NO=8332
curl -iv http://127.0.0.1:${TESTED_PORT_NO}/
E0503 09:46:42.743213   24145 portforward.go:400] an error occurred forwarding 18332 -> 18332: error forwarding port 18332 to pod 76a1b02bef6f752d3a277cee73691dc92d782b4dcfdb7e01ee1486f8d3f89a45, uid : unable to do port forwarding: socat not found
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getinfo", "params": [] }' -H 'content-type: text/plain;'
curl: (52) Empty reply from server
* in the logs of the `kubectl port-forward`, I get :
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --namespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadataame }") 8332
Forwarding from 127.0.0.1:8332 -> 8332
Forwarding from [::1]:8332 -> 8332

Ok, j'ai trouvé une erreur dans le déploiement

References for the test

M stable/nextcloud/Chart.yaml M stable/nextcloud/values.yaml jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ helm version version.BuildInfo{Version:"v3.2.0", GitCommit:"e11b7ce3b12db2941e90399e874513fbd24bcb71", GitTreeState:"clean", GoVersion:"go1.13.10"} jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ git remote -v origin git@github.com:helm/charts.git (fetch) origin git@github.com:helm/charts.git (push) jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$

Jean-Baptiste-Lasselle commented 4 years ago

refaire :

Jean-Baptiste-Lasselle commented 4 years ago

Resizing Hôte de vitualisation

Jean-Baptiste-Lasselle commented 4 years ago

Ok, I have now a VM with a 750 GB hard disk, 8 GB RAM, 4 vCPUs , I deploy bitcoind helm chart, and I have got logs from the only one pod provisioned :

jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl get pods,svc
NAME                                           READY   STATUS    RESTARTS   AGE
pod/bleublancrougeb-bitcoind-f9fbcd7b7-cw8vg   1/1     Running   0          83s

NAME                               TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)                                 AGE
service/bleublancrougeb-bitcoind   ClusterIP   10.109.82.21   <none>        8332/TCP,8333/TCP,18332/TCP,18333/TCP   83s
service/kubernetes                 ClusterIP   10.96.0.1      <none>        443/TCP                                 6m58s
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl logs pod/bleublancrougeb-bitcoind-f9fbcd7b7-cw8vg
+ btc_init
+ '[' '!' -e /bitcoin/.bitcoin/bitcoin.conf ']'
+ cat /bitcoin/.bitcoin/bitcoin.conf
server=1
printtoconsole=1
rpcuser=rpcuser
+ echo 'Initialization completed successfully'
rpcpassword=rpcpasswordInitialization completed successfully
+ '[' 0 -gt 0 ']'
+ args=("-rpcallowip=::/0")
+ exec bitcoind -rpcallowip=::/0
2020-05-03T09:41:50Z Bitcoin Core version v0.17.1.0-gef70f9b52b851c7997a9f1a0834714e3eebc1fd8 (release build)
2020-05-03T09:41:50Z InitParameterInteraction: parameter interaction: -whitelistforcerelay=1 -> setting -whitelistrelay=1
2020-05-03T09:41:50Z Assuming ancestors of block 0000000000000000002e63058c023a9a1de233554f28c7b21380b6c9003f36a8 have valid signatures.
2020-05-03T09:41:50Z Setting nMinimumChainWork=0000000000000000000000000000000000000000028822fef1c230963535a90d
2020-05-03T09:41:50Z Using the 'sse4(1way),sse41(4way)' SHA256 implementation
2020-05-03T09:41:50Z Using RdRand as an additional entropy source
2020-05-03T09:41:50Z Default data directory /bitcoin/.bitcoin
2020-05-03T09:41:50Z Using data directory /bitcoin/.bitcoin
2020-05-03T09:41:50Z Using config file /bitcoin/.bitcoin/bitcoin.conf
2020-05-03T09:41:50Z Using at most 125 automatic connections (1048576 file descriptors available)
2020-05-03T09:41:50Z Using 16 MiB out of 32/2 requested for signature cache, able to store 524288 elements
2020-05-03T09:41:50Z Using 16 MiB out of 32/2 requested for script execution cache, able to store 524288 elements
2020-05-03T09:41:50Z Using 4 threads for script verification
2020-05-03T09:41:50Z scheduler thread start
2020-05-03T09:41:50Z libevent: getaddrinfo: address family for nodename not supported
2020-05-03T09:41:50Z Binding RPC on address :: port 8332 failed.
2020-05-03T09:41:50Z HTTP: creating work queue of depth 16
2020-05-03T09:41:50Z Config options rpcuser and rpcpassword will soon be deprecated. Locally-run instances may remove rpcuser to use cookie-based auth, or may be replaced with rpcauth. Please see share/rpcauth for rpcauth auth generation.
2020-05-03T09:41:50Z HTTP: starting 4 worker threads
2020-05-03T09:41:50Z Using wallet directory /bitcoin/.bitcoin
2020-05-03T09:41:50Z init message: Verifying wallet(s)...
2020-05-03T09:41:50Z Using BerkeleyDB version Berkeley DB 4.8.30: (April  9, 2010)
2020-05-03T09:41:50Z Using wallet wallet.dat
2020-05-03T09:41:50Z BerkeleyEnvironment::Open: LogDir=/bitcoin/.bitcoin/database ErrorFile=/bitcoin/.bitcoin/db.log
2020-05-03T09:41:50Z Cache configuration:
2020-05-03T09:41:50Z * Using 2.0MiB for block index database
2020-05-03T09:41:50Z * Using 8.0MiB for chain state database
2020-05-03T09:41:50Z * Using 440.0MiB for in-memory UTXO set (plus up to 286.1MiB of unused mempool space)
2020-05-03T09:41:50Z init message: Loading block index...
2020-05-03T09:41:50Z Opening LevelDB in /bitcoin/.bitcoin/blocks/index
2020-05-03T09:41:50Z Opened LevelDB successfully
2020-05-03T09:41:50Z Using obfuscation key for /bitcoin/.bitcoin/blocks/index: 0000000000000000
2020-05-03T09:41:50Z LoadBlockIndexDB: last block file = 0
2020-05-03T09:41:50Z LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=0, size=0, heights=0...0, time=1970-01-01...1970-01-01)
2020-05-03T09:41:50Z Checking all blk files are present...
2020-05-03T09:41:50Z Initializing databases...
2020-05-03T09:41:50Z Pre-allocating up to position 0x1000000 in blk00000.dat
2020-05-03T09:41:50Z Opening LevelDB in /bitcoin/.bitcoin/chainstate
2020-05-03T09:41:50Z Opened LevelDB successfully
2020-05-03T09:41:50Z Wrote new obfuscate key for /bitcoin/.bitcoin/chainstate: 248d12e9c2e81e30
2020-05-03T09:41:50Z Using obfuscation key for /bitcoin/.bitcoin/chainstate: 248d12e9c2e81e30
2020-05-03T09:41:50Z init message: Rewinding blocks...
2020-05-03T09:41:50Z  block index              50ms
2020-05-03T09:41:50Z init message: Loading wallet...
2020-05-03T09:41:50Z [default wallet] nFileVersion = 170100
2020-05-03T09:41:50Z [default wallet] Keys: 0 plaintext, 0 encrypted, 0 w/ metadata, 0 total. Unknown wallet records: 0
2020-05-03T09:41:50Z [default wallet] Performing wallet upgrade to 169900
2020-05-03T09:41:51Z [default wallet] keypool added 2000 keys (1000 internal), size=2000 (1000 internal)
2020-05-03T09:41:51Z [default wallet] Wallet completed loading in            1279ms
2020-05-03T09:41:51Z [default wallet] setKeyPool.size() = 2000
2020-05-03T09:41:51Z [default wallet] mapWallet.size() = 0
2020-05-03T09:41:51Z [default wallet] mapAddressBook.size() = 0
2020-05-03T09:41:51Z UpdateTip: new best=000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f height=0 version=0x00000001 log2_work=32.000022 tx=1 date='2009-01-03T18:15:05Z' progress=0.000000 cache=0.0MiB(0txo)
2020-05-03T09:41:51Z mapBlockIndex.size() = 1
2020-05-03T09:41:51Z nBestHeight = 0
2020-05-03T09:41:51Z Failed to open mempool file from disk. Continuing anyway.
2020-05-03T09:41:51Z Bound to [::]:8333
2020-05-03T09:41:51Z Bound to 0.0.0.0:8333
2020-05-03T09:41:51Z init message: Loading P2P addresses...
2020-05-03T09:41:51Z ERROR: DeserializeFileDB: Failed to open file /bitcoin/.bitcoin/peers.dat
2020-05-03T09:41:51Z Invalid or missing peers.dat; recreating
2020-05-03T09:41:51Z torcontrol thread start
2020-05-03T09:41:51Z init message: Loading banlist...
2020-05-03T09:41:51Z ERROR: DeserializeFileDB: Failed to open file /bitcoin/.bitcoin/banlist.dat
2020-05-03T09:41:51Z Invalid or missing banlist.dat; recreating
2020-05-03T09:41:51Z init message: Starting network threads...
2020-05-03T09:41:51Z net thread start
2020-05-03T09:41:51Z dnsseed thread start
2020-05-03T09:41:51Z Loading addresses from DNS seeds (could take a while)
2020-05-03T09:41:51Z addcon thread start
2020-05-03T09:41:51Z init message: Done loading
2020-05-03T09:41:51Z opencon thread start
2020-05-03T09:41:51Z msghand thread start
2020-05-03T09:41:52Z New outbound peer connected: version: 70015, blocks=628714, peer=0
2020-05-03T09:41:52Z 163 addresses found from DNS seeds
2020-05-03T09:41:52Z dnsseed thread exit
2020-05-03T09:41:55Z New outbound peer connected: version: 70015, blocks=0, peer=1
2020-05-03T09:41:57Z New outbound peer connected: version: 70015, blocks=628714, peer=2
2020-05-03T09:41:58Z New outbound peer connected: version: 70015, blocks=628714, peer=3
2020-05-03T09:42:39Z New outbound peer connected: version: 70015, blocks=628714, peer=4
2020-05-03T09:43:12Z New outbound peer connected: version: 70015, blocks=628714, peer=5
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ 
Jean-Baptiste-Lasselle commented 4 years ago

https://github.com/helm/helm/issues/1371#issuecomment-351027954 seems to suggests I have to instal socat on cluster node

Jean-Baptiste-Lasselle commented 4 years ago

Very Good

# ---
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ helm install bleublancrougeb ./bitcoind-1.0.0.tgz
NAME: bleublancrougeb
LAST DEPLOYED: Sun May  3 12:28:26 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
bitcoind RPC can be accessed via port 8332 on the following DNS name from within your cluster:
bleublancrougeb-bitcoind.default.svc.cluster.local

To connect to bitcoind RPC:

1. Forward the port for the node:

  $ kubectl port-forward --namespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 8332

2. Test connection with user and password provided in configuration file:

  $ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getinfo", "params": [] }' -H 'content-type: text/plain;'

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/bleublancrougeb-bitcoind ClusterIP 10.98.15.87 8332/TCP,8333/TCP,18332/TCP,18333/TCP 31s service/kubernetes ClusterIP 10.96.0.1 443/TCP 52m jbl@poste-devops-jbl-16gbram:~$ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getinfo", "params": [] }' -H 'content-type: text/plain;' {"result":null,"error":{"code":-32601,"message":"getinfo\n\nThis call was removed in version 0.16.0. Use the appropriate fields from:\n- getblockchaininfo: blocks, difficulty, chain\n- getnetworkinfo: version, protocolversion, timeoffset, connections, proxy, relayfee, warnings\n- getwalletinfo: balance, keypoololdest, keypoolsize, paytxfee, unlocked_until, walletversion\n\nbitcoin-cli has the option -getinfo to collect and format these in the old format."},"id":"curltest"} jbl@poste-devops-jbl-16gbram:~$

  * And on the "receiver" side, The `kubectl prot-forward` command , does not output any kind of error (everything fine, this time, `kubernetes` does not complain missing `socat` ) : 

```bash 
jbl@poste-devops-jbl-16gbram:~/helm-ethereum/stable$ kubectl port-forward --namespace default $(kubectl get pods --namespace default -l "app=bitcoind,release=bleublancrougeb" -o jsonpath="{ .items[0].metadata.name }") 8332
Forwarding from 127.0.0.1:8332 -> 8332
Forwarding from [::1]:8332 -> 8332
Handling connection for 8332
jbl@pegasusio:~/minikube$ export API_SERVER_IPSLICE=192.168.1.22
jbl@pegasusio:~/minikube$ sudo minikube start --apiserver-ips ${API_SERVER_IPSLICE} --apiserver-name minikube.pegasusio.io
[sudo] Mot de passe de jbl : 
😄  minikube v1.8.2 on Debian 9.12
✨  Using the none driver based on existing profile
⌛  Reconfiguring existing host ...
🔄  Starting existing none bare metal machine for "minikube" ...
ℹ️   OS release is Debian GNU/Linux 9 (stretch)
🐳  Preparing Kubernetes v1.17.3 on Docker 19.03.8 ...
🚀  Launching Kubernetes ... 
E0503 12:21:40.247153    1009 kubeadm.go:245] Overriding stale ClientConfig host https://minikube.pegasusio.io:8443 with https://192.168.1.22:8443
🌟  Enabling addons: dashboard, default-storageclass, storage-provisioner
🤹  Configuring local host environment ...

❗  The 'none' driver provides limited isolation and may reduce system security and reliability.
❗  For more information, see:
👉  https://minikube.sigs.k8s.io/docs/reference/drivers/none/

❗  kubectl and minikube configuration will be stored in /root
❗  To use kubectl or minikube commands as your own user, you may need to relocate them. For example, to overwrite your own settings, run:

    ▪ sudo mv /root/.kube /root/.minikube $HOME
    ▪ sudo chown -R $USER $HOME/.kube $HOME/.minikube

💡  This can also be done automatically by setting the env var CHANGE_MINIKUBE_NONE_USER=true
🏄  Done! kubectl is now configured to use "minikube"
jbl@pegasusio:~/minikube$ socat -V
socat by Gerhard Rieger - see www.dest-unreach.org
socat version 1.7.3.1 on Jul 14 2017 13:52:03
   running on Linux version #1 SMP Debian 4.9.210-1 (2020-01-20), release 4.9.0-12-amd64, machine x86_64
features:
  #define WITH_STDIO 1
  #define WITH_FDNUM 1
  #define WITH_FILE 1
  #define WITH_CREAT 1
  #define WITH_GOPEN 1
  #define WITH_TERMIOS 1
  #define WITH_PIPE 1
  #define WITH_UNIX 1
  #define WITH_ABSTRACT_UNIXSOCKET 1
  #define WITH_IP4 1
  #define WITH_IP6 1
  #define WITH_RAWIP 1
  #define WITH_GENERICSOCKET 1
  #define WITH_INTERFACE 1
  #define WITH_TCP 1
  #define WITH_UDP 1
  #define WITH_SCTP 1
  #define WITH_LISTEN 1
  #define WITH_SOCKS4 1
  #define WITH_SOCKS4A 1
  #define WITH_PROXY 1
  #define WITH_SYSTEM 1
  #define WITH_EXEC 1
  #undef WITH_READLINE
  #define WITH_TUN 1
  #define WITH_PTY 1
  #define WITH_OPENSSL 1
  #undef WITH_FIPS
  #define WITH_LIBWRAP 1
  #define WITH_SYCLS 1
  #define WITH_FILAN 1
  #define WITH_RETRY 1
  #define WITH_MSGLEVEL 0 /*debug*/
jbl@pegasusio:~/minikube$ kubectl cluster-info
Kubernetes master is running at https://minikube.pegasusio.io:8443
KubeDNS is running at https://minikube.pegasusio.io:8443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
jbl@pegasusio:~/minikube$ sudo df -Th /
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté sur
/dev/sda1        ext4   730G    6,8G  686G   1% /
jbl@pegasusio:~/minikube$ sudo df -Th /tmp
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté sur
/dev/sda1        ext4   730G    6,8G  686G   1% /
jbl@pegasusio:~/minikube$ sudo df -Th /var
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté sur
/dev/sda1        ext4   730G    6,8G  686G   1% /
jbl@pegasusio:~/minikube$ sudo df -Th /home
Sys. de fichiers Type Taille Utilisé Dispo Uti% Monté sur
/dev/sda1        ext4   730G    6,8G  686G   1% /
jbl@pegasusio:~/minikube$ docker-compose version
docker-compose version 1.22.0, build f46880fe
docker-py version: 3.4.1
CPython version: 3.6.6
OpenSSL version: OpenSSL 1.1.0f  25 May 2017
jbl@pegasusio:~/minikube$ docker version
Client: Docker Engine - Community
 Version:           19.03.8
 API version:       1.40
 Go version:        go1.12.17
 Git commit:        afacb8b7f0
 Built:             Wed Mar 11 01:26:02 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.8
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.17
  Git commit:       afacb8b7f0
  Built:            Wed Mar 11 01:24:36 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683
jbl@pegasusio:~/minikube$ kubectl version
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.0", GitCommit:"9e991415386e4cf155a24b1da15becaa390438d8", GitTreeState:"clean", BuildDate:"2020-03-25T14:58:59Z", GoVersion:"go1.13.8", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.3", GitCommit:"06ad960bfd03b39c8310aaf92d1e7c12ce618213", GitTreeState:"clean", BuildDate:"2020-02-11T18:07:13Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"}
jbl@pegasusio:~/minikube$ minikube version
minikube version: v1.8.2
commit: eb13446e786c9ef70cb0a9f85a633194e62396a1
jbl@pegasusio:~/minikube$ ping -c 3 minikube.pegasusio.io
PING minikube.pegasusio.io (192.168.1.22) 56(84) bytes of data.
64 bytes from minikube.pegasusio.io (192.168.1.22): icmp_seq=1 ttl=64 time=0.099 ms
64 bytes from minikube.pegasusio.io (192.168.1.22): icmp_seq=2 ttl=64 time=0.035 ms
64 bytes from minikube.pegasusio.io (192.168.1.22): icmp_seq=3 ttl=64 time=0.033 ms

--- minikube.pegasusio.io ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2036ms
rtt min/avg/max/mdev = 0.033/0.055/0.099/0.031 ms
jbl@pegasusio:~/minikube$ 
Jean-Baptiste-Lasselle commented 4 years ago

So it f*** works ?

jbl@poste-devops-jbl-16gbram:~$ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getnetworkinfo", "params": [] }' -H 'content-type: text/plain;' | jq .
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   684  100   606  100    78  16939   2180 --:--:-- --:--:-- --:--:-- 17314
{
  "result": {
    "version": 170100,
    "subversion": "/Satoshi:0.17.1/",
    "protocolversion": 70015,
    "localservices": "000000000000040d",
    "localrelay": true,
    "timeoffset": 0,
    "networkactive": true,
    "connections": 8,
    "networks": [
      {
        "name": "ipv4",
        "limited": false,
        "reachable": true,
        "proxy": "",
        "proxy_randomize_credentials": false
      },
      {
        "name": "ipv6",
        "limited": false,
        "reachable": true,
        "proxy": "",
        "proxy_randomize_credentials": false
      },
      {
        "name": "onion",
        "limited": true,
        "reachable": false,
        "proxy": "",
        "proxy_randomize_credentials": false
      }
    ],
    "relayfee": 1e-05,
    "incrementalfee": 1e-05,
    "localaddresses": [],
    "warnings": ""
  },
  "error": null,
  "id": "curltest"
}
jbl@poste-devops-jbl-16gbram:~$ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }' -H 'content-type: text/plain;' | jq .
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   870  100   789  100    81  10470   1074 --:--:-- --:--:-- --:--:-- 10520
{
  "result": {
    "chain": "main",
    "blocks": 240155,
    "headers": 628724,
    "bestblockhash": "0000000000000018f8781393be26d0340577650087ddb9987362e9dcdf042ecf",
    "difficulty": 15605632.68128593,
    "mediantime": 1370561166,
    "verificationprogress": 0.04105070300167511,
    "initialblockdownload": true,
    "chainwork": "00000000000000000000000000000000000000000000004c79b3bc32e1c815e0",
    "size_on_disk": 9873311285,
    "pruned": false,
    "softforks": [
      {
        "id": "bip34",
        "version": 2,
        "reject": {
          "status": true
        }
      },
      {
        "id": "bip66",
        "version": 3,
        "reject": {
          "status": false
        }
      },
      {
        "id": "bip65",
        "version": 4,
        "reject": {
          "status": false
        }
      }
    ],
    "bip9_softforks": {
      "csv": {
        "status": "defined",
        "startTime": 1462060800,
        "timeout": 1493596800,
        "since": 0
      },
      "segwit": {
        "status": "defined",
        "startTime": 1479168000,
        "timeout": 1510704000,
        "since": 0
      }
    },
    "warnings": ""
  },
  "error": null,
  "id": "curltest"
}
jbl@poste-devops-jbl-16gbram:~$ 
Jean-Baptiste-Lasselle commented 4 years ago

The wallet infos


jbl@poste-devops-jbl-16gbram:~$ curl --user rpcuser:rpcpassword -k http://127.0.0.1:8332 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getwalletinfo", "params": [] }' -H 'content-type: text/plain;' | jq .
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   494  100   417  100    77   5173    955 --:--:-- --:--:-- --:--:--  5212
{
  "result": {
    "walletname": "",
    "walletversion": 169900,
    "balance": 0,
    "unconfirmed_balance": 0,
    "immature_balance": 0,
    "txcount": 0,
    "keypoololdest": 1588501713,
    "keypoolsize": 1000,
    "keypoolsize_hd_internal": 1000,
    "paytxfee": 0,
    "hdseedid": "e09d559186965e01a43cc96002ffa699c9fd8456",
    "hdmasterkeyid": "e09d559186965e01a43cc96002ffa699c9fd8456",
    "private_keys_enabled": true
  },
  "error": null,
  "id": "curltest"
}
Jean-Baptiste-Lasselle commented 4 years ago

Delete everything in the cluster, and reinstall dahsboard

kubectl delete all --all 

# --
# spekt8
kubectl apply -f https://raw.githubusercontent.com/spekt8/spekt8/master/spekt8-deployment.yaml
kubectl apply -f https://raw.githubusercontent.com/spekt8/spekt8/master/fabric8-rbac.yaml
kubectl port-forward deployment/spekt8 3000:3000
Jean-Baptiste-Lasselle commented 4 years ago
# helm installs mongo

# ------------- #
# - before helm package gravitee am chart 
# I have a special personal KUBECONTEXT at ~/.petit.kube/.kube/

export WRONG_GRAVITEE_AM_HOST=am.example.com
export GRAVITEE_AM_HOST=$(cat ~/.petit.kube/.kube/config | grep server |grep http|awk '{print $2}'|awk -F '/' '{print $3}'|awk -F ':' '{print $1}')

sed -i "s#${WRONG_GRAVITEE_AM_HOST}#${GRAVITEE_AM_HOST}#g" ./am/values.yaml

# -- MONGO interpolation

export WRONG_GRAVITEE_MONGO_HOST=mongo-mongodb-replicaset
export GRAVITEE_MONGO_HOST=devines

# --- #
# A Mongo cluster can be used through its client
# What you did, to deploy mongo with helm chart is executing [helm install ${HELM_DEPLOYMENT_NAME} mongosthg.tar.gz]
export HELM_DEPLOYMENT_NAME=gravitee-mongo
export K8S_SERVICE_NAME_FOR_MONGO_CLIENT=${HELM_DEPLOYMENT_NAME}-mongodb-replicaset-client
export K8S_NAMESPACE=default

export SERVICE_DNS_NAME=${K8S_SERVICE_NAME_FOR_MONGO_CLIENT}.${K8S_NAMESPACE}.svc.cluster.local
echo "SERVICE_DNS_NAME=[$SERVICE_DNS_NAME]"

export GRAVITEE_MONGO_HOST=${SERVICE_DNS_NAME}

sed -i "s#dbhost: ${WRONG_GRAVITEE_MONGO_HOST}#dbhost: ${GRAVITEE_MONGO_HOST}#g" ./am/values.yaml

# --- # Known issue fix

sed -i 's~apps/v1beta1~apps/v1~g' apim/templates/**/*deployment.yaml
sed -i 's~extensions/v1beta1~networking.k8s.io/v1beta1~g' apim/templates/**/*ingress.yaml
sed -i 's~apps/v1beta1~apps/v1~g' am/templates/**/*deployment.yaml
sed -i 's~extensions/v1beta1~networking.k8s.io/v1beta1~g' am/templates/**/*ingress.yaml

helm package am
helm install gravitee-am am-1.0.1.tar.gz