Post twitter using python script

$ pip install --upgrade pip
$ pip install tweepy
import tweepy

def get_api(cfg):
    auth = tweepy.OAuthHandler(cfg['consumer_key'], cfg['consumer_secret'])
    auth.set_access_token(cfg['access_token'], cfg['access_token_secret'])
    return tweepy.API(auth)

def main():
    cfg = {
        "consumer_key"        : "xxxxx",
        "consumer_secret"     : "xxxxx",
        "access_token"        : "xxxxx",
        "access_token_secret" : "xxxxx"
    }

    api = get_api(cfg)
    tweet = "my status here"
    status = api.update_status(status=tweet)

if __name__ == "__main__":
    main()

Build ELK stack on ubuntu 16.04

Logstash
Elasticsearch
Kibana
Filebeat

ELK server:

$ sudo add-apt-repository -y ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get -y install oracle-java8-installer

Install Elasticsearch

$ wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
$ echo "deb http://packages.elastic.co/elasticsearch/2.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-2.x.list
$ sudo apt-get update
$ sudo apt-get -y install elasticsearch

Config Elasticsearch

$ sudo vim /etc/elasticsearch/elasticsearch.yml

Uncomment this line, and change to network.host: 0.0.0.0

network.host: 0.0.0.0
$ sudo systemctl restart elasticsearch
$ sudo systemctl enable elasticsearch

Install Logstash

$ echo "deb http://packages.elastic.co/logstash/2.3/debian stable main" | sudo tee -a /etc/apt/sources.list
$ sudo apt-get update
$ sudo apt-get install logstash

Configure Logstash

$

 

Fix cannot access internet in your docker container

I use docker for testing environment. Somehow I found out that the docker container cannot access the internet and the solution is really simple:

$ sudo ifconfig docker0 down
$ sudo service docker restart
$ sudo ifconfig docker0 up

Or

$ sudo vim /etc/default/docker
DOCKER_OPTS="--dns 10.10.4.14 --dns 8.8.8.8 --dns 8.8.4.4"

Which:
10.10.4.14 in my localhost/laptop