forked from rmros/eve-ng
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall.sh
133 lines (107 loc) · 2.73 KB
/
install.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#!/bin/sh
# Backup current network config
cp /etc/network/interfaces ./interfaces.bak
sudo apt-get install docker.io
# fix docker config conflict
cat > /etc/systemd/system/docker.service.d/service.conf << EOF
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd
EOF
# Json config for docker
cat > /etc/docker/daemon.json << EOF
{
"hosts": ["tcp://127.0.0.1:4243", "unix:///var/run/docker.sock"],
"storage-driver": "overlay2",
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "2"
}
}
EOF
# Fix autoboot for vswitch
cat > /lib/systemd/system/openvswitch-nonetwork.service << EOF
[Unit]
Description=Open vSwitch Internal Unit
PartOf=openvswitch-switch.service
#https://bugs.launchpad.net/ubuntu/+source/openvswitch/+bug/1448254
# Without this all sorts of looping dependencies occur doh!
DefaultDependencies=no
#precedants pulled from isup@ service requirements
After=apparmor.service local-fs.target systemd-tmpfiles-setup.service
#subsequent to this service we need the network to start
Wants=network-pre.target openvswitch-switch.service
Before=network-pre.target openvswitch-switch.service
[Service]
Type=oneshot
RemainAfterExit=yes
EnvironmentFile=-/etc/default/openvswitch-switch
ExecStart=/usr/share/openvswitch/scripts/ovs-ctl start \
--system-id=random $OVS_CTL_OPTS
ExecStop=/usr/share/openvswitch/scripts/ovs-ctl stop
EOF
sudo systemctl daemon-reload && systemctl restart openvswitch-switch;
# Add a new systemd file to ensure apache2 starts
cat > /lib/systemd/system/apache2.service.d/apache2-systemd.conf << EOF
[Unit]
Description=Apache HTTP Server
After=syslog.target network.target
[Service]
Type=forking
RemainAfterExit=no
Restart=always
PIDFile=/var/run/apache2/apache2.pid
[Install]
WantedBy=multi-user.target
EOF
## Modify interfaces to support ovs
sed -i '/Cloud/q' /etc/network/interfaces
cat >> /etc/network/interfaces << EOF
auto pnet1
allow-ovs pnet1
iface pnet1 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet2
allow-ovs pnet2
iface pnet2 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet3
allow-ovs pnet3
iface pnet3 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet4
allow-ovs pnet4
iface pnet4 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet5
allow-ovs pnet5
iface pnet5 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet6
allow-ovs pnet6
iface pnet6 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet7
allow-ovs pnet7
iface pnet7 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet8
allow-ovs pnet8
iface pnet8 inet manual
ovs_type OVSBridge
ovs_ports l2port
auto pnet9
allow-ovs pnet9
iface pnet9 inet manual
ovs_type OVSBridge
ovs_ports l2port
EOF
sudo systemctl restart networking.service