morpheu on main
provisioner/kubernetes: add tes… (compare)
arthurcgc on fix-app-update
fix: remove debug info (compare)
arthurcgc on fix-app-update
stash: debug info fix: ignoreBaseDep flag to Upda… chore: remove debug info and 12 more (compare)
arthurcgc on fix-app-update
fix: lint (compare)
arthurcgc on fix-app-update
Fix ApiPath when cluster has a … Fix APIPath when cluster has a … provisioner/kubernetes: avoid r… and 2 more (compare)
wpjunior on main
Add k8s tracker support (compare)
arthurcgc on main
fix: wrong increment of pastUni… (compare)
wpjunior on k8s-tracker-implementation
Add k8s tracker support (compare)
@JohnAnt Today we have as example the Api of Tsuru running in 6 VMs of
CPU Cores 4
CPU (in MHz) 1530
Memory (in MB) 4096
We manage more than 2000 apps and more than 5000 docker containers
I am trying to integrate Gandalf with the Tsuru service for deploying apps through git
X - Tsuru dev environment with tsuru api, client and its components.
Y - git repository server in cloud
Tsuru API - hosted as container in X
Gandalf container with webserver hosted as container in X
in the Gandalf container "GANDALF_HOST" is set as "Y"
When I create a new application from tsuru client -
I get this message - new repository created at git@y:<proj_name>.git
and there is also repository folder created at the bare location : /var/lib/gandalf/repository
But the repository is not being created in the Git remote server
How and where should we setup the gandalf? am I missing any step? and should gandalf be hosted in the same server as our git ?
and how should we set "repo-manager" and "git:api-server" in tsuru.conf?
routers:
hipache:
type: hipache
domain: example.com
redis-server:127.0.0.1:6379
traefik:
type: api
api-url: http://traefik-router.example.com
@rodolfo3
Hi. Is the https://hub.docker.com/r/tsuru/gandalf image ready for production? I am trying to use it, but I don't know why is it not working...
Hi Rodolfo! I'm very new to Tsuru, just done a MVP some weeks ago, but I'm moving to create a 3 Node Tsuru cluster from scratch plus lots of documentation in Portuguese for end users.
Gandalf was one thing I skipped on MVP because turns out that I found tsuru-client very poweful to start. But if you want some help with this (and at least be able to test if I implement soon the Gandalf) I could try put Gandalf first on my priorities. And since I'm documenting everything in the open, could useful for you too.
If you still need help can private message me here on on Twitter.
On tsuru version 1.7.0-rc1, I'm having some problem to log as admin immediately after the creation.
I will try a bit better to find if was not some mistake on configurations, etc, but if persist I will report on the main repository.
For now I have this issue here EticaAI/aguia-pescadora#6 (in portuguese, but google translate should work fine) to document my progress if someone interested to see it earlier. The same repository have all information.
[2019-07-02T22:37:22,754][WARN ][logstash.outputs.elasticsearch] Could not index event to Elasticsearch. {:status=>400, :action=>["index", {:_id=>nil, :_index=>".measure-tsuru-2019.07.02", :_type=>"host_netrx", :routing=>nil}, #<LogStash::Event:0x2f0eda1b>], :response=>{"index"=>{"_index"=>".measure-tsuru-2019.07.02", "_type"=>"host_netrx", "_id"=>"t1nVtGsBR4vbPSvq22hZ", "status"=>400, "error"=>{"type"=>"illegal_argument_exception", "reason"=>"Rejecting mapping update to [.measure-tsuru-2019.07.02] as the final mapping would have more than 1 type: [host_cpu_wait, host_netrx]"}}}}
my first error is:
[2019-07-03T18:40:33,840][ERROR][logstash.outputs.elasticsearch] Failed to install template. {:message=>"Got response code '400' contacting Elasticsearch at URL 'https://vpc-tsuru2-apps-gialqmcwk4rsjmg4adsylan7la.us-east-1.es.amazonaws.com:443/_template/tsuru-template'", :class=>"LogStash::Outputs::ElasticSearch::HttpClient::Pool::BadResponseCodeError", :backtrace=>["/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client/manticore_adapter.rb:80:in `perform_request'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client/pool.rb:291:in `perform_request_to_url'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client/pool.rb:278:in `block in perform_request'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client/pool.rb:373:in `with_connection'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client/pool.rb:277:in `perform_request'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client/pool.rb:285:in `block in Pool'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client.rb:352:in `template_put'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/http_client.rb:86:in `template_install'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/template_manager.rb:28:in `install'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/template_manager.rb:16:in `install_template'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/common.rb:129:in `install_template'", "/usr/share/logstash/vendor/bundle/jruby/2.5.0/gems/logstash-output-elasticsearch-9.4.0-java/lib/logstash/outputs/elasticsearch/common.rb:50:in `block in setup_after_successful_connection'"]
I'm trying with ES 5.6 and 6.0
geoip
section from the template and it works on ES 5.6. But the dashboard does not shows data for the node. It saves addr
as 127.0.0.1, 10.0.3.227, 172.17.0.1, ::1, fe80::88b:edff:fe0a:6c88, fe80::42:d5ff:fe79:3d5d, fe80::2022:6cff:fe3a:4463
. The dashboard searches for {'addr.keyword': [u'ip-10-0-3-227.ec2.internal']}}
... is this a bug?
@gleicon Actually thats a great question! I'm not sure if someone else at least tried to replace Kubernetes with K3S to work with Tsuru, but this is something I personally would start testing.
One of my reasons to consider using Kubernetes (or if later is possible, k3s) is that seems to be much easier to deal with strategies to handle files (aka volumes) integrated with Kubernetes (or since is compatible, k3s) than with vanila docker. (even the first reference about k3s is my comment here, https://github.com/tsuru/tsuru/issues/2063#issuecomment-506250179, @gleicon ). I'm not saying that is bad use on vanila docker, just that maybe for usage with bigger setups, or different users, etc, kubernetes could be easier
I will take at least a few weeks to start test with k3s because I'm testing before with Kuberbetes (I'm new here, and also I'm new to Kubernetes), so I'm unable to give a fast response for you about if it works or not with k3s for now. I will leave for someone else that maybe already know Tsuru + Kubernetes to try replace with K3S.
Upgrade Tsuru Server from 1.6.2 to 1.7.4
Environment
Docker Version: 19.03.1
Linux Distribution: Ubuntu 16.04 LTS
Kubernetes Cluster: No
The result of tsurud migrate --dry
is OK.
Opening config file: /etc/tsuru/tsuru.conf
Done reading config file: /etc/tsuru/tsuru.conf
Using "mongodb" database "tsuru" from the server "mongodb://######".
Running "migrate-apps-kubernetes-crd"... OK
Running "migrate-app-image-exposed-ports"... OK
tsurud migrate
Opening config file: /etc/tsuru/tsuru.conf
Done reading config file: /etc/tsuru/tsuru.conf
Using "mongodb" database "tsuru" from the server "mongodb://######".
Error: multiple errors reported (34):
error #0: no cluster
error #1: no cluster
error #2: no cluster
error #3: no cluster
error #4: no cluster
error #5: no cluster
error #6: no cluster
error #7: no cluster
error #8: no cluster
error #9: no cluster
error #10: no cluster
error #11: no cluster
error #12: no cluster
error #13: no cluster
error #14: no cluster
error #15: no cluster
error #16: no cluster
error #17: no cluster
error #18: no cluster
error #19: no cluster
error #20: no cluster
error #21: no cluster
error #22: no cluster
error #23: no cluster
error #24: no cluster
error #25: no cluster
error #26: no cluster
error #27: no cluster
error #28: no cluster
error #29: no cluster
error #30: no cluster
error #31: no cluster
error #32: no cluster
error #33: no cluster
Running "migrate-apps-kubernetes-crd"...
tsurud migrate-list
The migrate-apps-kubernetes-crd
and migrate-app-image-exposed-ports
appear as not executed.
+----------------------------------------+------------+-----------+
| Name | Mandatory? | Executed? |
+----------------------------------------+------------+-----------+
| migrate-docker-images | true | true |
| migrate-pool | true | true |
| migrate-set-pool-to-app | true | true |
| migrate-service-proxy-actions | true | true |
| migrate-bs-envs | true | true |
| migrate-events-deploy | true | true |
| migrate-events-healer | true | true |
| migrate-rc-events | true | true |
| migrate-router-unique | true | true |
| migrate-app-plan-router-to-app-router | true | true |
| migrate-pool-teams-to-pool-constraints | true | true |
| migrate-app-service-envs | true | true |
| migrate-app-plan-id-to-plan-name | true | true |
| migrate-roles | false | true |
| migrate-apps-kubernetes-crd | true | false |
| migrate-app-image-exposed-ports | true | false |
+----------------------------------------+------------+-----------+
I got errors with tsurud migrate
. Is it necessary to fix? If I ignore them, does it have any impact?
Hello everyone , i've been trying to get tsuru set up on a cluster and when it tries to check for the availability of the Tsuru API the connection fails .
I'm trying to get it to install gandalf in the very first installation
components:
tsuru:
config:
repo-manager: gandalf
I'm using the generic driver for the installation
Deploying tsuru config...
Deploying compose file in cluster manager...
Updating service tsuru_planb (id: 7w6ugx0usv8w4odxijohjs4mj)
Updating service tsuru_registry (id: cie9whbjr3s533e3xc1q71nyb)
Updating service tsuru_tsuru (id: 712oagr7yysncjbhd8pi6isuv)
Updating service tsuru_redis (id: 4uwrmorxpmo0vwb0svgafx2f7)
Updating service tsuru_mongo (id: v5ktthl9j3qhck2swqdnw1lv4)
Waiting for Tsuru API to become responsive at "http://XXX.XXX.XXX.XXX:8080"...
Error: failed to connect to http://XXX.XXX.XXX.XXX:8080: Maximum number of retries (60) exceeded: Get http://XXX.XXX.XXX.XXX:8080: dial tcp XXX.XXX.XXX.XXX:8080: connect: connection refused
ec2:CreateInternetGateway You are not authorized to perform this operation
running tsuru-eks2 kubernetes --create-data='driver=amazonelasticcontainerservice' --create-data="access-key=*****" --create-data="secret-key=*****" --create-data="region=us-east-1" --pool=eks
, but the owner of this key has "ec2:*"
permission...
"*"
permission, but I think this may be insecure...
I'm still trying to add the eks cluster to my tsuru setup. I'm getting the Unauthorized
error:
Unauthorized
github.com/tsuru/tsuru/provision/kubernetes.ensureNamespace
I create the cluster using tsuru cluster-add
, it works (it is running on aws side), but I got this on logs:
2020/02/03 19:17:38 ERROR: failure running HTTP request POST /1.3/provisioner/clusters (500): error creating clientset: error generating token: NoCredentialProviders: no valid providers in chain. Deprecated.
and the cluster is not on tsuru anymore.