uvhs

Okay so we play this game in sixth form called Assassins. Basically you get a target who you have to get them alone and touch them (like on the shoulder or something) and then you have killed them. This means that everyone goes everywhere in two’s and the younger students who don’t play get really confused when you say things like ‘I almost killed him but someone came around the corner’. 

Trying to work out who is gonna kill you is incredibly fun especially when you have two free periods in the morning with almost everyone else in your year.

Anyway so I have one of my friends ex-boyfriends as my target, this is gonna be really awkward. This next month is gonna fun….

vimeo

This is the first film in my Uncanny Valley series, “UVHS” (Uncanny Valley High School)

The second film Uncanny Valley Archives will be looping May 13th-Sept 13th in the lobby of the Museum of the Moving Image in Queens, NY.

youtube

(via https://www.youtube.com/watch?v=UvH_Mq1WVFs)

youtube

Our first Non-TF2 Double Team wasn’t exactly what I planned…

We take suggestions for challenges. Keep it TF2 and Borderlands (2 and Pre-Sequel) for now.

Learn Chef#3: Manage a basic web app

This is a memo when I learned Chef with the following tutorial provided by Opscode:

https://learn.chef.io/manage-a-web-app/rhel/

1. Install ChefDK on the workstation

Let’s prepare CentOS virtual machine again:

$ cd LearnChef
$ mkdir 03_manage_a_basic_web_app; cd 03_manage_a_basic_web_app
$ vagrant init chef/centos-7.0

Remove comment out on the following lines in Vagrantfile:

config.vm.synced_folder "../data", "/vagrant_data"

Make sure chef-starter.zip and ChefDK installation .rpm file are in the ../data directory.

Let’s vagrant up:

$ vagrant up; vagrant ssh
[vagrant ~] sudo rpm -Uvh /vagrant_data/chefdk-0.6.0-1.el6.x86_64.rpm

Installation of ChefDK on your workstation is completed.

2. Create Chef repository on your workstation

Next you need to create Chef repository on your workstation.

In Learn Chef #3, it teaches that can be done with “chef generate repo” command, but when use hosted Chef Server, it may not be able to upload recipes onto the Server by default.

So let’s use chef-starter.zip file and create first cookbook for this tutorial:

[vagrant ~] sudo yum install -y unzip
[vagrant ~] unzip /vagrant_data/chef-starter.zip
[vagrant ~] cd chef-repo
[vagrant chef-repo] chef generate cookbook cookbooks/awesome_customers

3. Create the web admin user

Let’s write a recipe to create ‘web_user’, who belongs to 'web_user’ group, and has enough access to modify the system, but not a root user.

[vagrant chef-repo] chef generate recipe cookbooks/awesome_customers user

Then create a recipe and attribute file:

group node['awesome_customers']['group']

user node['awesome_customers']['user'] do
  group node['awesome_customers']['group']
  system true
  shell '/bin/bash'
end

Create the custome attributes file and edit:

[vagrant chef-repo] chef generate attribute cookbooks/awesome_customers default
default['awesome_customers']['user'] = 'web_admin'
default['awesome_customers']['group'] = 'web_admin'

Add templates:

[vagrant chef-repo] chef generate template cookbooks/awesome_customers/ customers.conf
[vagrant chef-repo] chef generate template cookbooks/awesome_customers/ firewall_http
# Managed by Chef for <%= node['hostname'] %>
<VirtualHost *:80>
  ServerAdmin <%= node['apache']['contact'] %>

  DocumentRoot <%= node['apache']['docroot_dir'] %>
  <Directory />
          Options FollowSymLinks
          AllowOverride None
  </Directory>
  <Directory <%= node['apache']['docroot_dir'] %>>
          Options Indexes FollowSymLinks MultiViews
          AllowOverride None
          Order allow,deny
          allow from all
  </Directory>

  ErrorLog <%= node['apache']['log_dir'] %>/error.log

  LogLevel warn

  CustomLog <%= node['apache']['log_dir'] %>/access.log combined
  ServerSignature Off
</VirtualHost>
# Port 80 for http
-A FWR -p tcp -m tcp --dport 80 -j ACCEPT

Set the recipe to run:

include_recipe 'awesome_customers::user'

4. Configure Apache

Next let’s configure apache with the 'apache2’ cookbook provided on Chef Supermarket.

Let’s add reference to metadata.rb in awesome_customers:

depends 'apache2', '~> 3.0.1'

Start writing the webserver recipe:

[vagrant chef-repo] chef generate recipe cookbooks/awesome_customers webserver
# Install Apache recipe and configure its service.
include_recipe 'apache2::default'

# Create and enable your custom site.
web_app node['awesome_customers']['name'] do
  template "#{node['awesome_customers']['config']}.erb"
end

# Create the document root.
directory node['apache']['docroot_dir'] do
  recursive true
end

# Write a default home page.
file "#{node['apache']['docroot_dir']}/index.php" do
  content 'This is a placeholder'
  mode '0644'
  owner node['awesome_customers']['user']
  group node['awesome_customers']['group']
end

# Open port 80 to incoming traffic.
include_recipe 'iptables'
iptables_rule 'firewall_http'

Update the attribute file:

default['awesome_customers']['user'] = 'web_admin'
default['awesome_customers']['group'] = 'web_admin'

default['awesome_customers']['name'] = 'customers'
default['awesome_customers']['config'] = 'customers.conf'

default['apache']['docroot_dir'] = '/srv/apache/customers'

default['iptables']['install_rules'] = false

5. Set SELinux to permissive mode

Add following 2 lines to metadata.rb

depends 'iptables', '~> 0.14.1'
depends 'selinux', '~> 0.9.0'

Insert the recipe for selinux before other recipes like following

include_recipe 'selinux::permissive' # Inserted!
include_recipe 'awesome_customers::user'
include_recipe 'awesome_customers::webserver'

5. Apply the recipe

Add the following 2 lines to your metadata.rb file:

depends 'iptables', '~> 0.14.1'
depends 'selinux', '~> 0.9.0'

Go to awesome_customers directory and berks install:

[vagrant chef-repo] cd cookbooks/awesome_customers/
[vagrant awesome_customers] berks install
[vagrant awesome_customers] berks upload

Finally we got ready to apply the recipe. Let’s prepare a node to apply it:

[vagrant awesome_customers] exit
03_manage_a_basic_web_app $ cd ../
LearnChef $ mkdir 03_manage_a_basic_web_app_client; cd 03_manage_a_basic_web_app_client
03_manage_a_basic_web_app_client $ vagrant init chef/centos-7.0

Enable the private IP address and vagrant up:

# Remove comment out of the following line
config.vm.network "private_network", ip: "192.168.33.30"
03_manage_a_basic_web_app_client $ vagrant up

Now that you have a node running, it’s time to bootstrap it:

03_manage_a_basic_web_app_client $ cd ../03_manage_a_basic_web_app
03_manage_a_basic_web_app $ vagrant ssh
[vagrant ~] cd chef-repo
[vagrant ~] knife bootstrap 192.168.33.30 --ssh-user vagrant --ssh-password 'vagrant' --sudo --use-sudo-password --node-name web_app_rhel --run-list 'recipe[awesome_customers]'

anonymous asked:

You have a selfie with "#uvh" in the description, what is that??

I think that photo ‘s from final fling, which was a night out with m yyear group before the end of school. UVH is short for ut vitam habeant, which is my schools motto, its part of the quote “Ego veni ut vitam habeant, et abundantius habeant” meaning “I have come that they may have life and have it to the full” so uvh means “that they may have life”

ns3 on Centos7初期設定Rootパスワード変更
passwd
ユーザー追加
adduser ****
ユーザーをwheelに追加
usermod -G wheel ****
suをwheelユーザー以外からは拒否
vi /etc/pam.d/suシステムロケール変更
ロケール関係はすべて
localectlで行う。
ロケールを日本にする際は
localectl set-locale LANG=ja_JP.utf8
とする。
またキー配置を日本語キーボードに対応させるため
localectl set-keymaps jp106
とする。次に時刻調整のため、タイムゾーンを変更する
時間関係は
timedatectlで行う。
timedatectl set-timezone Asia/Tokyo
で、日本標準時にあわせる。次にネットワーク関係に移る
インストールに使用したカスタムによっては
自動でネットワークが有効になっていない場合がある
その場合は以下のコマンドからグラフィカルなCUIで変更する
nmtui
このコマンドを実行後、編集するNICを選択->auto startにチェックを入れる。一応の設定は以上である。
なおGUIがある場合はそちらからのほうがはるかに楽である。次にNS-3のインストール方法を示す
今回はtarball形式のns-3をダウンロードし、ビルドする。
まず、必要となるパッケージのインストールから始める
yum group install Development toolsyum install gcc-c++ python python-devel qt4-devel mercurial bzr cmake glibc-devel.i686 glibc-devel.x86_64 doxygen graphviz ImageMagick python-sphinx dia texlive texlive-latex openmpi openmpi-devel tcpdump wireshark sqlite sqlite-devel libxml2 libxml2-devel boost-devel graphviz graphviz-devel python-setuptools-devel git gsl gsl-devel gtk2 gtk2-devel gdb valgrindsudo easy_install pygraphvizrpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpmrpmレポジトリを無効にするため
/etc/yum.repos.d/rpmforge.repo

enable

enable = 0
とする。yum install --enablerepo=rpmforge goocanvas pygtk2-devel p7zip unrar p7zip-pluginsrpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/pygoocanvas-0.14.1-9.el7.nux.x86_64.rpm
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/pygoocanvas-devel-0.14.1-9.el7.nux.x86_64.rpmwget https://www.nsnam.org/release/ns-allinone-3.23.tar.bz2
tar xjf ns-allinone-3.23.tar.bz2
cd  ns-allinone-3.23
./build.py30分ほどかかるのでご飯でも食べようちなみにこれで以下のようになる---- Summary of optional NS-3 features:
Build profile                 : debug
Build directory               :
Python Bindings               : enabled
Python API Scanning Support   : enabled
BRITE Integration             : not enabled (BRITE not enabled (see option --with-brite))
NS-3 Click Integration        : not enabled (nsclick not enabled (see option --with-nsclick))
GtkConfigStore                : enabled
XmlIo                         : enabled
Threading Primitives          : enabled
Real Time Simulator           : enabled
File descriptor NetDevice     : enabled
Tap FdNetDevice               : enabled
Emulation FdNetDevice         : enabled
PlanetLab FdNetDevice         : not enabled (PlanetLab operating system not detected (see option --force-planetlab))
Network Simulation Cradle     : not enabled (NSC not found (see option --with-nsc))
MPI Support                   : not enabled (option --enable-mpi not selected)
NS-3 OpenFlow Integration     : not enabled (OpenFlow not enabled (see option --with-openflow))
SQlite stats data output      : enabled
Tap Bridge                    : enabled
PyViz visualizer              : not enabled (Missing python modules: gtk)
Use sudo to set suid bit      : not enabled (option --enable-sudo not selected)
Build tests                   : not enabled (defaults to disabled)
Build examples                : not enabled (defaults to disabled)
GNU Scientific Library (GSL)  : enabled
Learn Chef#2: How to manage a node

https://learn.chef.io/manage-a-node/rhel/

1. Install ChefDK onto workspace

Do just the same as http://yusuke-nozoe.tumblr.com/post/119840976202/learn-chef-1-learn-the-chef-basics.


    $ cd LearnChef
    $ mkdir 02_learn_to_manage_a_node; cd 02_learn_to_manage_a_node
    $ vagrant init chef/centos-7.0
    # Enable synced folder in Vagrantfile
    $ vagrant up
    $ vagrant ssh
    [vagrant ~] sudo rpm -Uvh /vagrant_data/chefdk-0.6.0-1.el6.x86_64.rpm
    

2. Signup for hosted Chef and Install starter kit

https://learn.chef.io/manage-a-node/rhel/set-up-your-chef-server/

Download the starter kit zip file into the data directory on the host machine, then unzip that in virtual machine.

[vagrant ~] sudo yum install -y unzip
[vagrant ~] unzip /vagrant_data/chef-starter.zip

Now you can see the ~/chef-repo directory exists.

3. Get the apache cookbook and upload to the Chef server

[vagrant ~] cd chef-repo
[vagrant chef-repo] knife cookbook site download learn_chef_httpd
[vagrant chef-repo] tar -zxvf learn_chef_httpd-0.2.0.tar.gz -C cookbooks
[vagrant chef-repo] rm learn_chef_httpd-0.2.0.tar.gz

Then upload it to chef server:

[vagrant chef-repo] knife cookbook upload learn_chef_httpd

4. Bootstrap your node

Let’s create another virtual machine on your host machine:

# on ~/LearnChef
$ mkdir 02_learn_to_manage_a_node_client; cd 02_learn_to_manage_a_node_client
$ vagrant init chef/centos-7.0
## remove comment out of private network in Vagrantfile
# config.vm.network "private_network", ip: "192.168.33.20"
$ vagrant up
$ cd ../02_learn_to_manage_a_node; vagrant ssh
[vagrant ~] cd chef-repo
[vagrant chef-repo] knife bootstrap 192.168.33.20 --ssh-user vagrant --ssh-password 'vagrant' --sudo --use-sudo-password --node-name node1 --run-list 'recipe[learn_chef_httpd]'
[vagrant chef-repo] knife node list
node1
[vagrant chef-repo] exit

Now you can access the website with your browser:

$ open http://192.168.33.20 # => Open browser and see "hello world"

5. Update the cookbook

login to workstation again and edit the chef-repo:

$ vagrant ssh
[vagrant ~] cd chef-repo
[vagrant chef-repo] vi cookbooks/learn_chef_httpd/templates/default/index.html.erb
<html>
  <body>
    <h1>hello from <%= node['fqdn'] %></h1>
  </body>
</html>
[vagrant chef-repo] knife cookbook upload learn_chef_httpd
[vagrant chef-repo] knife ssh 192.168.33.20 'sudo chef-client' --manual-list --ssh-user vagrant --ssh-password 'vagrant'
[vagrant chef-repo] exit
$ open http://192.168.33.20 # => This time you'll see "hello from localhost"