Skip to content

Instantly share code, notes, and snippets.

@mohan43u
Created May 10, 2020 04:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mohan43u/9abac833a2faa6f790d94864809a4ac6 to your computer and use it in GitHub Desktop.
Save mohan43u/9abac833a2faa6f790d94864809a4ac6 to your computer and use it in GitHub Desktop.
2020-05-09 15:00:32 mbuf Hello, and welcome to the monthly ILUG-C meet-up!
2020-05-09 15:01:19 shrini hello all
2020-05-09 15:01:22 mbuf We will give few more minutes for people to join, before we begin the sessions
2020-05-09 15:01:26 mbuf shrini, you are the first speaker?
2020-05-09 15:01:37 --> protocol255 (~protocol2@103.99.150.196) has joined #ilugc
2020-05-09 15:01:54 shrini mbuf: yes
2020-05-09 15:02:05 mbuf shrini, the floor is yours!
2020-05-09 15:02:48 shrini hello all,
2020-05-09 15:03:18 shrini Today we are going to discuss about a open source infrastructure monitoring tool called prometheus
2020-05-09 15:03:32 shrini we can use it to monitor anything
2020-05-09 15:04:01 shrini from metrics of our computers to weather, petrol price, gold price
2020-05-09 15:04:25 shrini anything that can be said using numbers can be monitored using prometheus
2020-05-09 15:05:00 shrini it is created by soundcloud
2020-05-09 15:05:20 --> kaartic (~androirc@106.198.17.149) has joined #ilugc
2020-05-09 15:05:26 shrini prometheus has the following components
2020-05-09 15:05:35 shrini 1. prometheus server
2020-05-09 15:05:43 shrini 2. various exporters
2020-05-09 15:05:49 shrini 3. Alert manager
2020-05-09 15:06:04 shrini along with these 4. Grafana ia good combo for building dashboards
2020-05-09 15:06:21 mohan43u ?
2020-05-09 15:06:33 shrini ask mohan43u
2020-05-09 15:06:47 mohan43u shrini: prometheus dont have dashboard?
2020-05-09 15:06:59 shrini no
2020-05-09 15:07:14 shrini grafana is used to build dashboard
2020-05-09 15:07:40 shrini grafana is generic dashbaord system which can get inputs from many systems including prometheus
2020-05-09 15:08:01 <-- winircuser-244 (~winircuse@117.241.15.34) has quit (Read error: Connection reset by peer)
2020-05-09 15:08:15 shrini Let me explain with an example of how all thse works together
2020-05-09 15:08:42 shrini I have 200 servers with various disks/volumes attached
2020-05-09 15:09:18 shrini for many servers, I get disk full issues and many scripts are failing due to hard disk full
2020-05-09 15:09:44 --> gandalfdwite (~gandalfdw@49.207.52.2) has joined #ilugc
2020-05-09 15:09:51 shrini I can not run df -h in all the servers frequently to monitor all these
2020-05-09 15:11:41 shrini in this situation
2020-05-09 15:12:00 shrini it will be very nice, if I get some dashboard to monitor all the disk space for all servers
2020-05-09 15:12:27 shrini and alert on email or in any chat system
2020-05-09 15:12:41 shrini for the servers that go >80% of disk space
2020-05-09 15:12:56 shrini so that I can check only those servers and fix them
2020-05-09 15:13:05 --> bharath13 (9d3254a4@157.50.84.164) has joined #ilugc
2020-05-09 15:13:14 shrini Here prometheus helps well
2020-05-09 15:13:26 --> khaleel (75d7d5c0@117.215.213.192) has joined #ilugc
2020-05-09 15:13:47 shrini I just configure one central prometheus server and a client in all 200 servers
2020-05-09 15:14:00 shrini that client is called "node exporter"
2020-05-09 15:14:16 shrini which will export all the properties/metrics of the clients
2020-05-09 15:14:26 shrini like cpu/ram/disk usage
2020-05-09 15:14:30 <-- gandalfdwite (~gandalfdw@49.207.52.2) has quit (Ping timeout: 256 seconds)
2020-05-09 15:14:54 shrini in ubuntu, just install by running below commands
2020-05-09 15:15:20 shrini sudo apt-get install prometheus prometheus-node-exporter
2020-05-09 15:16:21 shrini /etc/prometheus/prometheus.yml is the config file for server
2020-05-09 15:16:32 --> KrVigneshVictor (6ac52a34@106.197.42.52) has joined #ilugc
2020-05-09 15:16:33 shrini there we write scrap configs
2020-05-09 15:16:51 shrini here, server will poll all the configured clients and get data
2020-05-09 15:17:02 shrini clients will expose their metrics on a defined port
2020-05-09 15:17:26 --> G__81 (~G__81@122.174.86.28) has joined #ilugc
2020-05-09 15:17:28 shrini in server, we should configure all the clients and their ports to read and get the data
2020-05-09 15:17:59 shrini For my situation, I will install node_Exporter in all 200 clients
2020-05-09 15:18:13 shrini and add those details in prometheus.yml file
2020-05-09 15:18:31 shrini static_configs:
2020-05-09 15:18:33 shrini - targets: ['localhost:9100']
2020-05-09 15:19:08 shrini in target, we can add any number of taget ips and 9100 to get metrics from node exporter from all the clients
2020-05-09 15:19:18 shrini we have
2020-05-09 15:19:21 shrini scrape_interval: 5s
2020-05-09 15:19:24 shrini scrape_timeout: 5s
2020-05-09 15:19:35 shrini to define the time delay for each poll/pull
2020-05-09 15:19:43 --> muthu (7aae0d10@122.174.13.16) has joined #ilugc
2020-05-09 15:20:52 shrini there is nothing to do on the client side
2020-05-09 15:21:10 shrini just install node exporter and enable the traffice flow on port 9100 from server to client
2020-05-09 15:21:13 shrini thats all
2020-05-09 15:21:23 shrini now, start prometheus service
2020-05-09 15:21:33 shrini it will start getting data from the nodes
2020-05-09 15:21:53 <-- KrVigneshVictor (6ac52a34@106.197.42.52) has quit (Remote host closed the connection)
2020-05-09 15:22:22 mbuf !
2020-05-09 15:22:31 shrini ask mbuf
2020-05-09 15:22:43 --> saranya (7aae0d10@122.174.13.16) has joined #ilugc
2020-05-09 15:22:56 mbuf Any reason why the "server" should fetch the data from the clients, as opposed to the clients pushing the data to the server?
2020-05-09 15:23:00 <-- bharath13 (9d3254a4@157.50.84.164) has quit (Remote host closed the connection)
2020-05-09 15:23:11 mbuf EOF.
2020-05-09 15:23:53 shrini the design of poll/pull is easy. we wont miss any data even if the number of clients are high
2020-05-09 15:24:16 --> g_k (9d3254a4@157.50.84.164) has joined #ilugc
2020-05-09 15:24:16 mbuf So, if I install a new client, then I will need to add an entry for the same and restart the prometheus service?
2020-05-09 15:24:18 mbuf Thanks!
2020-05-09 15:24:20 shrini on the design of clients pushing data, DoS may happen, even DDOS
2020-05-09 15:24:28 mbuf EOF.
2020-05-09 15:24:44 shrini yes. we have to add all the clients manually on the server side
2020-05-09 15:24:51 mbuf Okay
2020-05-09 15:24:55 mbuf Please continue.
2020-05-09 15:24:58 shrini there are configuraion for service discovery automatically
2020-05-09 15:25:01 stof1 ?
2020-05-09 15:25:26 shrini like it can poll all the instances in a subnet
2020-05-09 15:25:39 shrini even all the ec2 instances with a specific tag
2020-05-09 15:25:47 shrini we can configure like this too
2020-05-09 15:25:58 shrini in production, we use only service discovery.
2020-05-09 15:26:07 shrini we dont add clients manually
2020-05-09 15:26:11 shrini ask stof1
2020-05-09 15:26:39 stof1 how yu deploy the configuration to the monitored servers? ansible? or has prometheus something own?
2020-05-09 15:27:08 --> linuxchennai (dfb5d5e4@223.181.213.228) has joined #ilugc
2020-05-09 15:27:27 saranya ?
2020-05-09 15:27:35 shrini we can use any config management tool like ansible
2020-05-09 15:27:36 mohan43u shrini: ?
2020-05-09 15:27:45 shrini prometheus dont provide anything
2020-05-09 15:27:53 stof1 thanks
2020-05-09 15:27:56 shrini we have to manage the configs ourself manually or using any tool
2020-05-09 15:28:02 shrini ask saranya
2020-05-09 15:28:37 shrini ask mohan43u
2020-05-09 15:28:43 saranya I tried running the prometheus but..whenever i change anything it takes and build the old image...always..even i delet the image it recreates the image.....
2020-05-09 15:29:01 mohan43u what is service discovery? how it prometheus finds client using this?
2020-05-09 15:29:33 shrini saranya: are you building docker image
2020-05-09 15:29:36 shrini ?
2020-05-09 15:29:39 saranya Yes
2020-05-09 15:29:58 shrini delete all the old images and build freshly
2020-05-09 15:30:10 protocol255 ?
2020-05-09 15:30:50 shrini mohan43u: service discovery is a system to get all the required instances information with simple configuration
2020-05-09 15:30:50 saranya Yes i did that but while doing docker compose it automatically building the old images and using that
2020-05-09 15:31:08 bala ?
2020-05-09 15:31:11 shrini saranya: ok. shall we explore it after the session?
2020-05-09 15:31:23 shrini need more inputs and time to explore the issue
2020-05-09 15:31:29 shrini protocol255: ask
2020-05-09 15:31:36 protocol255 How much network bandwidth it will consume?
2020-05-09 15:31:47 saranya Ok..shrini sure
2020-05-09 15:31:49 shrini all the data transfers are only text
2020-05-09 15:31:57 shrini so it is very low
2020-05-09 15:32:23 shrini let me live demo a node that exposes its metrics using node_exporter
2020-05-09 15:32:41 shrini http://139.59.47.5:9100/metrics
2020-05-09 15:32:45 shrini open this in browser
2020-05-09 15:32:53 shrini and just see the metrics
2020-05-09 15:33:07 shrini all the metrics are just numbers at the end
2020-05-09 15:33:18 shrini prometheus can accept only number metrics
2020-05-09 15:33:26 shrini ask bala
2020-05-09 15:33:39 bala shrini what if i want to export only few metrics from my client like( RAM usage and disk space)? where i have to specify it ? in client node or server node?
2020-05-09 15:34:33 shrini for any custom metrics, we have to write custom exporters
2020-05-09 15:34:46 shrini who are all seeing the http://139.59.47.5:9100/metrics in browser?
2020-05-09 15:34:55 shrini say "yes" here
2020-05-09 15:35:03 * mohan43u yes
2020-05-09 15:35:04 protocol255 Yes
2020-05-09 15:35:09 rhnvrm Yes
2020-05-09 15:35:13 stof1 yes
2020-05-09 15:35:15 saranya yes
2020-05-09 15:35:18 kaartic Yes
2020-05-09 15:35:39 bala yes
2020-05-09 15:35:48 shrini thanks
2020-05-09 15:36:12 shrini too many metrics. right?
2020-05-09 15:36:20 shrini we may need them sometime
2020-05-09 15:36:24 mbuf yes
2020-05-09 15:37:01 shrini I have configured the client and server on the same machine
2020-05-09 15:37:12 shrini now let us open the prometheus server UI
2020-05-09 15:37:22 kaartic ?
2020-05-09 15:37:26 shrini it runs on port 9090
2020-05-09 15:37:29 shrini open this
2020-05-09 15:37:33 shrini http://139.59.47.5:9090/graph
2020-05-09 15:38:25 shrini and give any metrics name on the query box and press execute
2020-05-09 15:39:55 shrini got it?
2020-05-09 15:40:14 saranya Yes
2020-05-09 15:40:15 shrini it can give a simple graph too
2020-05-09 15:40:22 shrini on the same page
2020-05-09 15:40:48 shrini There is a alertmanager
2020-05-09 15:41:03 shrini if we configured any alerts, they will be shown here
2020-05-09 15:41:08 shrini http://139.59.47.5:9090/alerts
2020-05-09 15:41:14 shrini currently it is empty
2020-05-09 15:41:24 <-- linuxchennai (dfb5d5e4@223.181.213.228) has quit (Remote host closed the connection)
2020-05-09 15:43:14 shrini let us explore grafana now
2020-05-09 15:43:34 shrini now, we have lots of metrics into our promethus
2020-05-09 15:43:49 shrini we can install grafana and configure prometheus as data source
2020-05-09 15:44:57 shrini we can use others like elasticsearch,
2020-05-09 15:45:26 shrini open this no
2020-05-09 15:45:28 shrini w
2020-05-09 15:45:29 shrini http://139.59.47.5:3000/d/hb7fSE0Zz/1-node-exporter-for-prometheus-dashboard-en-v20191102
2020-05-09 15:45:52 shrini this is sa sample dashboard on grafana to show all the metrics we receive from node exporter
2020-05-09 15:45:56 --> mgopi1990 (~androirc@2401:4900:360e:8f60:1:1:87ae:9a5b) has joined #ilugc
2020-05-09 15:47:33 shrini there are not much data we have
2020-05-09 15:47:41 stof1 nice
2020-05-09 15:47:44 shrini just now configured the node_exporter
2020-05-09 15:47:55 shrini see this image - https://grafana.com/api/dashboards/1860/images/7994/image
2020-05-09 15:48:12 shrini grafana has wonderful system of sharing dashboards
2020-05-09 15:48:24 shrini we can build dashboards and share to the community
2020-05-09 15:48:36 shrini anyone can import using the dashboard id number
2020-05-09 15:48:45 shrini https://grafana.com/grafana/dashboards/1860
2020-05-09 15:48:53 shrini 1860 is the id for the above dashboard
2020-05-09 15:49:12 shrini I just imported into grafana using Dashbord->import section
2020-05-09 15:49:38 shrini Aother interesting part in prometheus is the custom exporters
2020-05-09 15:50:03 shrini we can write custom exporters in any language (mostly people write in python and go)
2020-05-09 15:50:10 shrini and make wonderful dashboards
2020-05-09 15:50:30 shrini all we have to do is import prometheus_client library
2020-05-09 15:50:45 shrini define the metric and its parameters
2020-05-09 15:51:15 shrini and expose ina specific port using inbult http server or nginx etc
2020-05-09 15:51:34 shrini configure prometheus to poll on that port and build graphs on grafana
2020-05-09 15:51:38 shrini so simple
2020-05-09 15:51:45 shrini Here is another demo
2020-05-09 15:52:08 shrini Today and tomorrow, there is a remote wikimedia hackathon running
2020-05-09 15:52:41 shrini as a part of this, I wanted to build a custom exporter to get the counts of various indic wikipedia sites
2020-05-09 15:53:00 shrini http://139.59.47.5:11810/
2020-05-09 15:53:05 shrini check this page
2020-05-09 15:53:39 shrini it may take a while to load, as for every request, it fetches the numbers from each indic wikipedia API serrvers
2020-05-09 15:53:58 shrini wiki_articles{lang_code="ta",language="Tamil"} 128990.0
2020-05-09 15:54:02 shrini this is one sample metric
2020-05-09 15:54:34 shrini we can have a metric name and attributes as key,value pairs so that we can use them on our queries
2020-05-09 15:54:54 shrini there is a promQL language, simple only, to query the prometheus to get various metrics
2020-05-09 15:55:08 shrini now see this dashboard for the indic wikipedia stats
2020-05-09 15:55:23 shrini http://139.59.47.5:3000/d/kx1Pb36Zz/indic-wiki-stats?orgId=1
2020-05-09 15:56:12 shrini https://www.robustperception.io/writing-a-jenkins-exporter-in-python
2020-05-09 15:56:32 shrini this page shows a sample exporter for jenkins
2020-05-09 15:56:54 shrini I wrote similar code to get the metrics for wikipedia pages
2020-05-09 15:57:08 shrini all wikipedia sites give well rest api support
2020-05-09 15:57:16 shrini so we can get any content easily
2020-05-09 15:58:12 shrini https://prometheus.io/docs/instrumenting/exporters/
2020-05-09 15:58:20 shrini check here for availble exporters
2020-05-09 15:58:30 shrini in github we can get even more
2020-05-09 15:58:59 shrini with python we can write for anything, even to get gold rate, temperature etc
2020-05-09 15:59:44 shrini https://www.robustperception.io/blog this site has interesting articles on prometheus
2020-05-09 16:00:09 shrini https://prometheus.io/docs/introduction/first_steps/
2020-05-09 16:00:34 shrini https://opensource.com/article/19/4/weather-python-prometheus
2020-05-09 16:01:07 shrini https://winderresearch.com/introduction-to-monitoring-microservices-with-prometheus/
2020-05-09 16:01:24 shrini There is a pushgateway to push data from client side
2020-05-09 16:01:33 <-- Thanigai (25291630@gateway/web/cgi-irc/kiwiirc.com/ip.37.41.22.48) has quit (Ping timeout: 256 seconds)
2020-05-09 16:01:39 shrini but it is not advised to rely on it
2020-05-09 16:02:08 shrini https://winderresearch.com/img/blog/2017/prometheus/prometheus-architecture.svg
2020-05-09 16:02:22 shrini this image explains the architecture of prometheus
2020-05-09 16:02:30 shrini I am done with my session
2020-05-09 16:02:38 shrini Any questions?
2020-05-09 16:03:17 stof1 thanks a lot
2020-05-09 16:04:38 saranya when we have a discussion?
2020-05-09 16:04:56 shrini saranya: we have two more sessions now
2020-05-09 16:05:15 shrini saranya: let us explore after thse two sessions. is it fine?
2020-05-09 16:05:36 saranya Yaa. Sure.. Thnks
2020-05-09 16:05:57 protocol255 I understand Prometheus provides lot of customization option. How is this netdata for client monitoring?
2020-05-09 16:06:22 shrini I dont know what is netdata
2020-05-09 16:07:31 protocol255 Ok, this also kind of prometheus but it is limited for client machines stats.
2020-05-09 16:07:41 shrini ok
2020-05-09 16:08:19 shrini Netdata is an all-in-one monitoring solution, expertly crafted with a blazing-fast C core, flanked by hundreds of collectors. Featuring a comprehensive dashboard with thousands of metrics, extreme performance and configurability, it is the ultimate single-node monitoring tool.
2020-05-09 16:08:31 shrini from https://www.netdata.cloud/
2020-05-09 16:08:52 shrini seems netdata is all in one
2020-05-09 16:09:01 shrini prometheus is loosly integrated
2020-05-09 16:09:36 shrini power of prometheus comes with custom exporters, distributed, scalable architecture
2020-05-09 16:10:04 shrini The next speaker bhuvana is having some connection issues
2020-05-09 16:10:17 shrini just got a message from her
2020-05-09 16:11:25 --> bhuvana (9d3242be@gateway/web/cgi-irc/kiwiirc.com/ip.157.50.66.190) has joined #ilugc
2020-05-09 16:11:30 shrini https://www.mediawiki.org/wiki/Wikimedia_Hackathon_2020/Remote_Hackathon
2020-05-09 16:11:44 shrini this is the wiki hackathon I am participating
2020-05-09 16:11:55 shrini hello bhuvana
2020-05-09 16:12:13 bhuvana Hello all, am sorry for the 12 min delay
2020-05-09 16:12:22 shrini Thats fine
2020-05-09 16:12:28 shrini you can start bhuvana
2020-05-09 16:12:44 bhuvana Thanks shrini!
2020-05-09 16:12:58 --> raj_ (~rajkumar@2409:4072:6e9f:ffbc:522b:73ff:fee8:65ca) has joined #ilugc
2020-05-09 16:13:59 --> humachine (~ranjith@unaffiliated/humachine) has joined #ilugc
2020-05-09 16:14:47 bhuvana Good evening all! This is Bhuvana Meenakshi and have been a Mozilla contributor since 2014. I am here to let you all know about various ways of contribution to Mozilla contributions
2020-05-09 16:16:28 bhuvana Hope everyone here knows about Firefox and similar products, these all are run by Mozilla Foundations.
2020-05-09 16:17:58 bhuvana Most of the Firefox products are built by volunteers.
2020-05-09 16:18:44 bhuvana Also you can get in touch with the staff of Mozilla to coordinate with projects.
2020-05-09 16:20:25 bhuvana Mostly the current projects where one can contribute are Web extensions/ Addons, Rust, Firefox Reality.
2020-05-09 16:21:03 --> mohan43u-we (~mohan@ilugc/mohan43u) has joined #ilugc
2020-05-09 16:21:26 bhuvana Apart from this volunteers also play a vital role in helping resolve bugs on Bugzilla and also testing the beta versions of Firefox
2020-05-09 16:23:10 bhuvana Also an interesting project is L10n which is the localisation project and we have Tamil as a language too. Also Common Voice Mozilla, an open source text to voice and vice versa is very interesting to contribute.
2020-05-09 16:25:41 <-- bhuvana (9d3242be@gateway/web/cgi-irc/kiwiirc.com/ip.157.50.66.190) has quit (Quit: Connection closed)
2020-05-09 16:25:55 mohan43u shrini: bhuvana disconnected
2020-05-09 16:27:02 shrini oh ok
2020-05-09 16:27:12 shrini khaleel: can you continue the session?
2020-05-09 16:27:25 --> mohan43u-kiwi (9d33572b@gateway/web/cgi-irc/kiwiirc.com/ip.157.51.87.43) has joined #ilugc
2020-05-09 16:28:24 shrini ok. okey. let me continue bhuva's session
2020-05-09 16:28:45 --> bhuvana (9d3242be@gateway/web/cgi-irc/kiwiirc.com/ip.157.50.66.190) has joined #ilugc
2020-05-09 16:29:02 shrini Like any other open source software development, mozilla has many projects and contributing opportunities
2020-05-09 16:29:19 bhuvana Sorry my connectivity is very unstable here :(
2020-05-09 16:29:29 shrini writing code, testing, build/release, artwork, documentation, translation
2020-05-09 16:29:31 bhuvana I will share a couple of links
2020-05-09 16:29:45 shrini bhuvana: okey
2020-05-09 16:30:41 shrini https://whatcanidoformozilla.org
2020-05-09 16:30:43 bhuvana I personally contribute and spread word about : https://mixedreality.mozilla.org/firefox-reality/
2020-05-09 16:31:24 bhuvana Firefox Reality is a project in which the Firefox app is built into a Virtual Reality system.
2020-05-09 16:32:15 bhuvana Also previously Mozilla was supporting a project called Aframe, a framework used for developing webVR scenes
2020-05-09 16:33:46 bhuvana To know more how to contribute here please take a look at this blog: https://blog.mozvr.com/spoke-3d-scenes-web/
2020-05-09 16:34:09 bhuvana You can develop 3D scenes which can be used on Firefox Reality
2020-05-09 16:35:13 bhuvana Another project to make your virtual rooms more interesting is Mozilla Hubs: https://hubs.mozilla.com/
2020-05-09 16:35:48 --> Guna (31cf8ddd@49.207.141.221) has joined #ilugc
2020-05-09 16:36:00 bhuvana Also if you learn making virtual environment on Spoke it will be helpful in making on Mozilla Hubs too
2020-05-09 16:36:10 -- Guna is now known as Guest11355
2020-05-09 16:36:32 bhuvana Mozilla Hubs bring in more virtual avatars in a 360 environment and helps in more realistic engagement
2020-05-09 16:38:32 bhuvana Also please check our regional community website here: https://mozillatn.github.io/ we are doing a series of webinar on FOSS topics and on behalf of the team I invite you all to attend the webinars and also if you are interested to be a speaker you can reachout to me or Shrini
2020-05-09 16:39:07 shrini https://groups.google.com/forum/#!forum/mozillatn
2020-05-09 16:39:21 shrini this is the mailing list for mozillatn
2020-05-09 16:39:35 shrini https://voice.mozilla.org/ta
2020-05-09 16:39:55 shrini this is one more interesting project
2020-05-09 16:40:09 bhuvana https://www.youtube.com/channel/UCHOPJdy80evgWL-yOgUjWxw
2020-05-09 16:40:26 shrini this is to collect voice data for Text to speech and speech to test researched
2020-05-09 16:40:35 shrini speech to text reearches
2020-05-09 16:41:00 shrini you can contribute with mobile browser or desktop browser itself
2020-05-09 16:41:33 shrini it will show you strings. you can read them aloud. it will record and save
2020-05-09 16:41:50 shrini or you can verify what others have recorded
2020-05-09 16:42:00 shrini and say them right or wrong
2020-05-09 16:42:25 shrini very easy to contribute for the language computing world
2020-05-09 16:42:35 shrini you can contribute for any language
2020-05-09 16:43:20 shrini https://youtu.be/XSI57bFq3yk
2020-05-09 16:43:32 shrini https://m.youtube.com/watch?feature=youtu.be&v=uzIvQJfp2Zs
2020-05-09 16:43:39 shrini check these videos for demo
2020-05-09 16:43:55 shrini and finally explore this https://whatcanidoformozilla.org
2020-05-09 16:44:45 shrini is there anything to add bhuvana khaleel ?
2020-05-09 16:46:15 bhuvana From my side I guess things have been covered
2020-05-09 16:46:27 shrini okey. End of the mozilla talk
2020-05-09 16:46:33 bhuvana Yes, thanks shrini for the opportunity... Thanks all who are attending this... I may now need to quickly get into another call
2020-05-09 16:46:49 shrini ok bhuvana. Thanks for joining
2020-05-09 16:46:58 <-- bhuvana (9d3242be@gateway/web/cgi-irc/kiwiirc.com/ip.157.50.66.190) has quit (Quit: Connection closed)
2020-05-09 16:47:10 shrini Hope all are reading this :-)
2020-05-09 16:47:24 stof1 yes
2020-05-09 16:47:30 shrini Shall we have a self introduction before moving to mohan43u talk ?
2020-05-09 16:48:22 * shrini shrini is a contributor to wikipedia. Ebook publisher at FreeTamilEbooks.com
2020-05-09 16:48:47 shrini Requesting all of you to write about you here
2020-05-09 16:49:08 mbuf Yes. One request to the participants is to try to hang around in this channel whenever you are online. This channel does not exist only for meetups, and you are welcome to network with people and learn from each other. Thanks!
2020-05-09 16:49:45 mohan43u-we everyone please type '/me <name>,<interest>' to introduce yourself
2020-05-09 16:50:16 * mohan43u-we Mohan R, dev in a private company - interested anything FOSS
2020-05-09 16:50:26 <-- raj_ (~rajkumar@2409:4072:6e9f:ffbc:522b:73ff:fee8:65ca) has quit (Ping timeout: 240 seconds)
2020-05-09 16:50:40 Guest11355 Thanks shrini for shring about mozilla works on speech recognition.
2020-05-09 16:50:50 * mbuf Shakthi Kannan, Researcher at IIT, Madras, work on anything Free Software
2020-05-09 16:52:22 Guest11355 I am trying to extract the audio track for video to bring it as subtitles for .mp4 files.If any interested people would like to try or accomplished it , Please share your inputs
2020-05-09 16:52:48 * humachine sysadmin in a private company, interested in linux and FOSS
2020-05-09 16:53:00 * humachine ranjith
2020-05-09 16:53:18 mohan43u-we shrini: mbuf: I'll wait for another 5 mins before starting my session
2020-05-09 16:53:28 * stof1 stof(1/999), i'm swiss, stranded in chennai cause of corona and enjoy it, really! but once i will go up north finding camels. GNU (perl) one :)
2020-05-09 16:53:29 bala bala Balaji , Working as Developer in Private comp in Banglore, Currently in my free time contributing to open source projects. Interests are (Linux kernel, erlang, shell scripts, Python)
2020-05-09 16:53:34 mbuf mohan43u-we, okay, let people introduce themselves
2020-05-09 16:55:21 shrini G__81 g_k kaartic khaleel linuxbaskar mgopi1990 muthu nihaal pradhvan protocol255 rhnvrm saranya satyag sidntrivedi stylesen : ping
2020-05-09 16:56:06 g_k bharath, developer, interested in open source
2020-05-09 16:56:16 linuxbaskar I am Baskar from LinuXpert Systems
2020-05-09 16:56:45 -- Guest11355 is now known as Guha
2020-05-09 16:57:05 * pradhvan Pradhvan , I work as Backend Engineer. I am interested in all things related to web development and Python. :)
2020-05-09 16:58:04 rhnvrm Hey I'm rhnvrm, software dev, currently working at zerodha, floss enthu.
2020-05-09 16:58:20 * kaartic I am Kaartic Sivaraam. I'm interested in contributing to open source. Currently, I contribute to the Git and some other projects related to Wikimedia. Feel free to ask me anything related to those projects!
2020-05-09 17:00:12 mohan43u-we ok, lets start.
2020-05-09 17:00:31 mohan43u-we hi everyone, good evening to all.
2020-05-09 17:00:38 mohan43u-we this talk is about tmux
2020-05-09 17:00:53 mohan43u-we tmux is a terminal multiplexer.
2020-05-09 17:01:04 Guha I am a telecom graduate experienced in UNIX-Networking concepts. Feel free to ask question on Network protocols and UNIX.
2020-05-09 17:02:07 mohan43u-we it means, instead of doing multiple ssh, you can do one ssh and get multiple bash windows
2020-05-09 17:02:26 --> raj_ (~rajkumar@2409:4072:48a:df85:522b:73ff:fee8:65ca) has joined #ilugc
2020-05-09 17:02:35 mohan43u-we tmux can do splitting
2020-05-09 17:03:42 mohan43u-we when you run tmux first, it creates a tmux (server process)
2020-05-09 17:04:06 <-- humachine (~ranjith@unaffiliated/humachine) has quit (Ping timeout: 256 seconds)
2020-05-09 17:04:13 mohan43u-we once you have tmux (server process) running, it is responsible for all the clients and sessions
2020-05-09 17:04:42 mohan43u-we tmux (server process) listens on unix socket (typically /tmp/tmux-1000/default)
2020-05-09 17:05:02 mohan43u-we tmux (client process) connects to this unix socket to talk to the tmux (server process)
2020-05-09 17:06:01 mohan43u-we tmux provides multiple window, each tmux window typically run default shell (bash)
2020-05-09 17:06:54 mohan43u-we tmux uses key-bindings (like emacs). its prefix key is 'ctrl-b' (default)
2020-05-09 17:07:11 --> famubu (~famubu@117.222.150.229) has joined #ilugc
2020-05-09 17:07:24 <-- kaartic (~androirc@106.198.17.149) has quit (Ping timeout: 272 seconds)
2020-05-09 17:07:32 mohan43u-we to switch between 0-9 windows, you use 'ctrl-b 0' to 'ctrl-b 9'
2020-05-09 17:08:04 mohan43u-we or you can use 'ctrl-b n' to go to next window and 'ctrl-b p' to go to previous window
2020-05-09 17:08:57 mohan43u-we tmux can split a window into multiple panes
2020-05-09 17:09:44 mohan43u-we 'ctrl-b %' to do vertical split and 'ctrl-b "' to do horizontal split
2020-05-09 17:09:51 --> humachine (~ranjith@unaffiliated/humachine) has joined #ilugc
2020-05-09 17:10:28 mohan43u-we https://image.slidesharecdn.com/usesoftmuxexplained-130606092030-phpapp01/95/uses-of-tmux-explained-3-638.jpg?cb=1374454945
2020-05-09 17:10:38 mohan43u-we this link shows the architecture
2020-05-09 17:11:42 mohan43u-we because everything is controlled by the tmux (server process), you can disconnect your ssh anytime and connect back to the same tmux session using 'tmux attach-session' commandline
2020-05-09 17:12:16 mohan43u-we your previous windows alignment will be same
2020-05-09 17:12:38 --> famubu_ (~famubu@117.206.32.39) has joined #ilugc
2020-05-09 17:13:15 <-- famubu_ (~famubu@117.206.32.39) has quit (Client Quit)
2020-05-09 17:13:25 mohan43u-we to show how tmux works, I have a demo. before providing the link, few thing to note
2020-05-09 17:14:16 mohan43u-we this website is still in development, it uses ssl (self signed ceritificate) so browsers will warn about self signed certificate, please skip and it will be fine
2020-05-09 17:14:23 <-- famubu (~famubu@117.222.150.229) has quit (Ping timeout: 272 seconds)
2020-05-09 17:14:28 --> kaartic (~androirc@106.198.17.149) has joined #ilugc
2020-05-09 17:14:51 mohan43u-we it contains three windows, the top window is a chat window, the middle is trainer's session which is broadcasted and the bottom window is for user's practice
2020-05-09 17:15:43 mohan43u-we since all are already logged into this irc channel using your primary nick, I suggest to use '<primarynick>-kiwi' to use the chat window in this website
2020-05-09 17:16:04 mohan43u-we here you go https://34.208.117.147:8000
2020-05-09 17:16:32 mohan43u-we please say 'yes' once you are able to see the website
2020-05-09 17:17:23 --> stof1-kiwi (6ac65e86@gateway/web/cgi-irc/kiwiirc.com/ip.106.198.94.134) has joined #ilugc
2020-05-09 17:17:30 stof1-kiwi yes
2020-05-09 17:18:02 bala yes
2020-05-09 17:18:07 shrini yes
2020-05-09 17:18:27 humachine yes
2020-05-09 17:18:38 mohan43u-we thanks, i'm continuing
2020-05-09 17:18:54 mohan43u-we both presenter's terminal and practice terminal is equiped with tmux
2020-05-09 17:18:58 <-- kaartic (~androirc@106.198.17.149) has quit (Client Quit)
2020-05-09 17:19:14 mohan43u-we you cannot do anything on presenter's terminal, but you can do things in practice terminal
2020-05-09 17:19:17 --> kaartic (~androirc@106.198.17.149) has joined #ilugc
2020-05-09 17:19:27 --> humachine-kiwi (9d337734@gateway/web/cgi-irc/kiwiirc.com/ip.157.51.119.52) has joined #ilugc
2020-05-09 17:20:06 mohan43u-we the current presenter's terminal is now contains 4 windows
2020-05-09 17:20:20 mohan43u-we I'm switching between them using 'ctrl-b n' now
2020-05-09 17:21:07 mohan43u-we each window is a seperate /dev/pts/n instance
2020-05-09 17:21:08 humachine ?
2020-05-09 17:21:14 mohan43u-we humachine: ask
2020-05-09 17:21:17 --> bharath-kiwi (9d3254a4@gateway/web/cgi-irc/kiwiirc.com/ip.157.50.84.164) has joined #ilugc
2020-05-09 17:21:34 humachine I am not able to view terminal window
2020-05-09 17:21:43 humachine the website shows up
2020-05-09 17:22:10 mohan43u-we humachine: lets have debugging after this talk, is it ok?
2020-05-09 17:22:23 humachine ok no problem
2020-05-09 17:22:40 mohan43u-we continuing. i'm just going to demonstrate splits
2020-05-09 17:22:59 mohan43u-we I just created a new window using 'ctrl-b c'
2020-05-09 17:23:26 mohan43u-we I just splited the newly created window with 'ctrl-b %'
2020-05-09 17:23:41 mohan43u-we if you want, you can also practice in the practice terminal, it is also tmux
2020-05-09 17:24:17 --> famubu (~famubu@117.206.32.39) has joined #ilugc
2020-05-09 17:24:21 mohan43u-we now, I splited the second pane into further two panes using horizontal split
2020-05-09 17:24:34 mohan43u-we the keycombo is 'ctrl-b "'
2020-05-09 17:24:49 mohan43u-we you can move around different panes with 'ctrl-b o'
2020-05-09 17:25:47 mbuf !
2020-05-09 17:25:56 mohan43u-we mbuf: go ahead
2020-05-09 17:26:06 mbuf What is the application that shows the clock?
2020-05-09 17:26:19 famubu 't quite follow.
2020-05-09 17:26:21 mohan43u-we mbuf: same tmux 'ctrl-b t'
2020-05-09 17:27:13 mohan43u-we contining, the bottom most line in tmux is status line
2020-05-09 17:27:17 mbuf mohan43u-we, okay
2020-05-09 17:28:00 mohan43u-we you can modify the status line however you want. the default status line shows different windows and the right corner shows time and date
2020-05-09 17:30:30 mohan43u-we I just tried to show you howto view the entire tmux tree
2020-05-09 17:31:03 mohan43u-we hope everyone can view my broadcast session
2020-05-09 17:31:42 mohan43u-we continuing. to see all the windows in a tree fashion, we use 'ctrl-b w'
2020-05-09 17:32:09 mohan43u-we here you can see that there are two sessions, one is broadcast and another one is instructor
2020-05-09 17:32:09 <-- g_k (9d3254a4@157.50.84.164) has quit (Ping timeout: 245 seconds)
2020-05-09 17:32:21 mohan43u-we the broadcast session contains 5 windows
2020-05-09 17:32:34 mohan43u-we the instructor session have only one window
2020-05-09 17:32:56 mohan43u-we if you look carefully, there is a '+' sign on the 5th window of broadcast session
2020-05-09 17:33:16 mohan43u-we the '+' sign means, that window contains multiple panes
2020-05-09 17:33:48 mohan43u-we to expand that window, we just need to select that window and press '->' key
2020-05-09 17:34:34 mohan43u-we you can see that it expanede and now showing all three panes and those pane's preview is available at the second half
2020-05-09 17:34:55 mohan43u-we the second half is basically a preview
2020-05-09 17:35:34 mohan43u-we if you move around, it will show you that particular window (or pane) content
2020-05-09 17:35:54 <-- saranya (7aae0d10@122.174.13.16) has quit (Ping timeout: 245 seconds)
2020-05-09 17:35:54 <-- muthu (7aae0d10@122.174.13.16) has quit (Ping timeout: 245 seconds)
2020-05-09 17:36:26 mohan43u-we the '-' sign indicates that the window is expanded, we can collapse using '<-' key
2020-05-09 17:36:54 mohan43u-we to get out of this 'tree' mode, press 'esc'
2020-05-09 17:37:01 mohan43u-we thats all
2020-05-09 17:37:18 mohan43u-we I mean.. that all about 'tree' view :)
2020-05-09 17:37:33 stof1-kiwi greath tool!
2020-05-09 17:38:04 stof1-kiwi go further :)
2020-05-09 17:38:07 mohan43u-we continuing my talk, lets me show you the connected clients who is currently attached to broadcast session
2020-05-09 17:38:16 --> saranya (b64166c6@182.65.102.198) has joined #ilugc
2020-05-09 17:38:28 <-- G__81 (~G__81@122.174.86.28) has quit (Quit: Leaving)
2020-05-09 17:38:50 mohan43u-we as you can see, the list shows different clients
2020-05-09 17:39:33 mohan43u-we the first column is from which pts that client is connected with tmux (server process) for example the first line says /dev/pts/3
2020-05-09 17:40:02 <-- protocol255 (~protocol2@103.99.150.196) has quit (Read error: Connection reset by peer)
2020-05-09 17:40:03 mohan43u-we i'm the one who is using pts/3 :)
2020-05-09 17:40:25 mohan43u-we I'm all clients will show the same username anyway :)
2020-05-09 17:40:55 mohan43u-we moving on, the second column indicates to which session that client is attached
2020-05-09 17:41:19 --> guha67 (31cf8ddd@gateway/web/cgi-irc/kiwiirc.com/ip.49.207.141.221) has joined #ilugc
2020-05-09 17:41:25 --> protocol255 (~protocol2@103.99.150.196) has joined #ilugc
2020-05-09 17:41:29 mohan43u-we as you see, only the second line is showing 'instructor' which mean, the client I'm using to show you this broadcast
2020-05-09 17:41:54 mohan43u-we all the other clients are connected to 'broadcast' session
2020-05-09 17:42:19 mohan43u-we the third column shows each client's geometry (width x height)
2020-05-09 17:43:00 mohan43u-we you may see the presenter terminal shows "................" lines, its because the presenter terminal is shrinked to the geometry of the smallest client
2020-05-09 17:43:25 mohan43u-we the shrinking expanding and all is taken care by tmux
2020-05-09 17:44:01 mohan43u-we if the smallest client disconnects, then the presener terminal will switch to next smallest client's geometry
2020-05-09 17:44:26 mohan43u-we the last field shows various capabilities of each client
2020-05-09 17:44:41 mohan43u-we as you see only two clients will not have 'read-only' attribute
2020-05-09 17:45:06 mohan43u-we those client are the once I'm currently using as a presenter
2020-05-09 17:45:38 mohan43u-we thats all about 'clients list mode'
2020-05-09 17:46:05 mohan43u-we I think I covered most of the basics of tmux
2020-05-09 17:46:24 <-- humachine-kiwi (9d337734@gateway/web/cgi-irc/kiwiirc.com/ip.157.51.119.52) has quit (Quit: Connection closed)
2020-05-09 17:46:26 <-- humachine (~ranjith@unaffiliated/humachine) has quit (Read error: Connection reset by peer)
2020-05-09 17:46:38 mohan43u-we there are lot of advanced features in tmux. the primary way to learn more is basically do 'man tmux'
2020-05-09 17:47:07 mohan43u-we he official manpage is enormous with information, you can get everything about tmux from the man page
2020-05-09 17:47:27 mohan43u-we tmux works across all *nix not just for linux
2020-05-09 17:48:20 mohan43u-we my presentation comes to end. I'll takes questions. any question?
2020-05-09 17:50:08 shrini To understand the pane/window of tmux, check this image.
2020-05-09 17:50:10 shrini https://leanpub.com/site_images/the-tao-of-tmux/info----server-with-laptop.png
2020-05-09 17:50:12 shrini From the book "The tao of tmux". You can read it here.
2020-05-09 17:50:15 shrini https://leanpub.com/the-tao-of-tmux/read
2020-05-09 17:50:50 <-- guha67 (31cf8ddd@gateway/web/cgi-irc/kiwiirc.com/ip.49.207.141.221) has quit (Quit: Connection closed)
2020-05-09 17:51:16 stof1-kiwi yur MeeTTY is greath. it is not cpu hungry on my small powered netbook. but with 1024x600 screen, one gets jumped all the time from practice terminal to the irc if there something happens. need a bigger screen :)
2020-05-09 17:52:10 mohan43u-we stof1-kiwi: yeah, I too noticed, that irc windows is a widget (iframe) coming from kiwiirc, they must be doing some focus-grabbing, I need to look into that further
2020-05-09 17:52:39 <-- Guha (31cf8ddd@49.207.141.221) has quit (Remote host closed the connection)
2020-05-09 17:53:08 mohan43u-we stof1-kiwi: this project is under development, idea came out after last month's ilugc meet to create something terminal only
2020-05-09 17:53:44 mohan43u-we stof1-kiwi: shrini and mbuf gave enourmous input after I initially put a prototype
2020-05-09 17:53:58 stof1 it is greath. go further with it! thanks
2020-05-09 17:54:13 --> guha (31cf8ddd@49.207.141.221) has joined #ilugc
2020-05-09 17:54:50 shrini1 Install the command line fun tool - hollywood
2020-05-09 17:55:17 shrini1 It uses tmux to make your terminal like a cracking scene in Hollywood movies
2020-05-09 17:55:18 mohan43u-we the floor is open to everyone.
2020-05-09 17:55:20 shrini1 https://itsfoss.com/hollywood-hacker-screen/
2020-05-09 17:55:38 shrini1 It seems many movies had used this tool
2020-05-09 17:56:32 kaartic mohan43u-we: Looks like tmux is a powerful tool, indeed. Thanks for the informative presentation.
2020-05-09 17:56:32 <-- guha (31cf8ddd@49.207.141.221) has quit (Remote host closed the connection)
2020-05-09 17:57:04 mohan43u-we kaartic: explore more about it using 'man tmux'
2020-05-09 17:57:31 kaartic mohan43u-we: Sure!
2020-05-09 17:57:38 kaartic Is this IRC publicly logged somewhere?
2020-05-09 17:58:01 mohan43u-we kaartic: we will send the logs by today or tomorrow.
2020-05-09 17:58:08 mbuf kaartic, we usually allow meeting minutes to be shared; but, otherwise everything discussed here stays in the channel
2020-05-09 17:58:32 mbuf kaartic, sometimes there are both non-technical discussions that happen
2020-05-09 17:58:41 mbuf *both technical and non-technical
2020-05-09 17:59:41 <-- mohan43u-kiwi (9d33572b@gateway/web/cgi-irc/kiwiirc.com/ip.157.51.87.43) has quit (Quit: Connection closed)
2020-05-09 18:01:46 <-- raj_ (~rajkumar@2409:4072:48a:df85:522b:73ff:fee8:65ca) has quit (Ping timeout: 240 seconds)
2020-05-09 18:02:08 kaartic Oh, ok. So, it looks like it's upto to the people who join to do local logging, if they wish. I was wodering about the logging as I thought it would be easy to catch up with the conversation if someone gets disconnected for some time in the middle.
2020-05-09 18:03:06 --> raj_ (~rajkumar@2409:4072:629f:ff21:522b:73ff:fee8:65ca) has joined #ilugc
2020-05-09 18:03:06 shrini1 saranya: are you there?
2020-05-09 18:03:10 <-- stof1-kiwi (6ac65e86@gateway/web/cgi-irc/kiwiirc.com/ip.106.198.94.134) has quit (Quit: Connection closed)
2020-05-09 18:03:13 mbuf kaartic, the idea of IRC is to be connected, and follow the conversation along, and learn from each other;
2020-05-09 18:03:19 saranya yes
2020-05-09 18:03:25 <-- khaleel (75d7d5c0@117.215.213.192) has quit (Ping timeout: 245 seconds)
2020-05-09 18:03:45 mbuf kaartic, although you can setup something like BNC, as long as it is used to catch up with conversation, and not publish it, it is fine
2020-05-09 18:04:22 mbuf kaartic, networking with people helps, and IRC has always been an important medium for the same
2020-05-09 18:05:33 mbuf If there are no other questions, let us end the meet, and keep the channel open for discussions.
2020-05-09 18:05:50 shrini1 I request everyone to join our mailing list
2020-05-09 18:05:54 shrini1 https://www.freelists.org/list/ilugc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment