Commit Graph

60 Commits

Author SHA1 Message Date
Takuya ASADA
05db25bfc5 dist: fix yum install error on CentOS dependency rpms
Not able to install boost packages one by one, install them all at once.

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-10-01 18:09:39 +03:00
Shlomi Livne
9e86b6273c dist: add dependency on xfsprogs
Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-30 12:23:59 +03:00
Takuya ASADA
b2630db514 dist: remove rpm dependency to libvirt
This is for testing virtio mode, since we don't officially recommend to use virtio mode we should drop it.

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-25 17:14:37 -07:00
Asias He
e77cea382e rpm: Improve rpm build scripts
This makes we can build in a centos container.
2015-09-23 21:42:51 -07:00
Asias He
ea007485d8 ami: Copy the rpm we just built only
If there previous multiple build/rpms, the build will fail like

cp a.rpm b.rpm c.rpm

c.rpm is not a directory.
2015-09-22 21:06:43 -07:00
Takuya ASADA
9c3db5cfa3 dist: change /var/lib/scylla/*/ permission to 755
Make them readable from other users.

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-22 21:06:42 -07:00
Asias He
91b0019b50 rpm: Setup irq, network queue binding and cpuset
When scylla is deployed on AWS's c4.8xlarge or c4.8xlarge large
instances, we can apply irq and network queue binding to achieve better
performance.

Also make scylla skip using cpu0 which will be busy serving network
interrupts under high workload.
2015-09-22 21:00:59 -07:00
Pekka Enberg
3d0106aa69 dist/docker: Limit Scylla to a single CPU for now
Limit to single CPU to work around abysmal performance...

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-22 05:10:38 -07:00
Avi Kivity
d69cb91bea dist: add libasan and libubsan as dependencies
Fixes mock Fedora 22 build; it needed them for the -fsanitize=vptr
detection.
2015-09-22 04:46:33 -07:00
Takuya ASADA
df995d1815 dist: change license to AGPL
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-22 10:39:39 +02:00
Pekka Enberg
569efa2c4c dist/docker: ScyllaDB Docker image
Add a Dockerfile for building a ScyllaDB Docker image. The image is
based on Fedora 22 and ScyllaDB is installed from our RPM repository.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-22 00:22:01 +03:00
Takuya ASADA
83d05df9b7 dist: move ComboAMI related code to scylla-ami
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-22 00:17:42 +03:00
Shlomi Livne
0758117854 dist: remove conflicts with cassandra21 to allow side by side rpm installation
Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-21 20:58:45 +02:00
Shlomi Livne
a2313bc7b6 dist: update ami base image id to one that supports enhanced networking
Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-21 20:58:45 +02:00
Takuya ASADA
710442f9fa dist: Add CentOS packaging
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-21 13:27:14 +03:00
Gleb Natapov
6b300e517e rpm: set ulimits in systemd scylla config
According to https://bugzilla.redhat.com/show_bug.cgi?id=754285
limits.conf is ignored by systemd during service launch. Set limits
in systemd unit file instead.
2015-09-20 10:46:57 +03:00
Shlomi Livne
4ba3580fa7 dist: aws ami install scylla-tools
Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-19 10:16:33 +03:00
Shlomi Livne
b820fa1e58 dist: aws ami workaround for packer throwing an error at build time
Using the base fedora22 image there are many updates - for an unknown
reason after doing all the rpm installs we are getting

    amazon-ebs:
    amazon-ebs: Complete!
    amazon-ebs: Failed to execute operation: Access denied
==> amazon-ebs: Terminating the source AWS instance...
==> amazon-ebs: No AMIs to cleanup
==> amazon-ebs: Deleting temporary keypair...
Build 'amazon-ebs' errored: Script exited with non-zero exit status: 1

The workaround is to create fedora22 image that already pulled the
updates

Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-19 01:54:02 +03:00
Shlomi Livne
55dc4c2d83 dist: rpmbuild builds source rpm, mock builds binary rpm
- no need to create the binary rpm twice - we are using the mock version
- this is causing  issues on jenkins as we build rpms on it only via mock

Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-19 01:53:59 +03:00
Shlomi Livne
18215e7a99 dist: fix a bug in ami build script
Need to copy the scylla-jmx.rpm into the ami build directory

Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-19 01:48:53 +03:00
Shlomi Livne
536f557c22 dist: ami script will build jmx rpm if not available
v2
- add an error message if scylla-jmx is not checked out

Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-17 18:21:15 +03:00
Shlomi Livne
30d216e77e dist: fix generating archive with wrong file name for rpm
the tar file prefix needs to be only the version without the release
without this bug I get
.
.
.

Finish: build setup for scylla-server-0.8-20150917.2d99476.fc21.src.rpm
Start: rpmbuild scylla-server-0.8-20150917.2d99476.fc21.src.rpm
Building target platforms: x86_64
Building for target x86_64
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.fA7nBm
+ umask 022
+ cd /builddir/build/BUILD
+ cd /builddir/build/BUILD
+ rm -rf scylla-server-0.8
+ /usr/bin/tar -xf
/builddir/build/SOURCES/scylla-server-0.8-20150917.2d99476.tar
+ cd scylla-server-0.8
/var/tmp/rpm-tmp.fA7nBm: line 33: cd: scylla-server-0.8: No such file or
directory

RPM build errors:
error: Bad exit status from /var/tmp/rpm-tmp.fA7nBm (%prep)
    Bad exit status from /var/tmp/rpm-tmp.fA7nBm (%prep)
ERROR:
Exception(build/rpmbuild/SRPMS/scylla-server-0.8-20150917.2d99476.fc21.src.rpm)
Config(fedora-21-x86_64) 4 minutes 17 seconds

Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-09-17 12:50:47 +03:00
Pekka Enberg
246df4e325 dist/redhat: Fix RPM package home page URL
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-17 11:51:29 +03:00
Takuya ASADA
74dafdf8eb dist: add scylla-jmx for AMI
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-16 15:40:12 +03:00
Asias He
0091d2fc43 rpm: Fix duplicated log message in syslog
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - Got GossipDigestSyn Reply
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - local heartbeat version 761 greater than 760 for 172.31.14.220
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - Sending a GossipDigestACK2 to 172.31.15.223:0
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - Got GossipDigestACK2 Reply
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - Performing status check ...
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - failure_detector: now=3138723072797, tlast=3137731235729, t=991837068, mean=1.00929e+09, phi=0.982712
Sep 09 02:43:34  scylla[7097]: [shard 0] gossip - failure_detector: PHI for 172.31.15.223 : 0.982712
Sep 09 02:43:34  scylla_run[7088]: TRACE   [shard 0] gossip - Got GossipDigestSyn Reply
Sep 09 02:43:34  scylla_run[7088]: TRACE   [shard 0] gossip - local heartbeat version 761 greater than 760 for 172.31.14.220
Sep 09 02:43:34  scylla_run[7088]: TRACE   [shard 0] gossip - Sending a GossipDigestACK2 to 172.31.15.223:0
Sep 09 02:43:34  scylla_run[7088]: TRACE   [shard 0] gossip - Got GossipDigestACK2 Reply
Sep 09 02:43:34  scylla_run[7088]: TRACE   [shard 0] gossip - Performing status check ...
Sep 09 02:43:34  scylla_run[7088]: DEBUG   [shard 0] gossip - failure_detector: now=3138723072797, tlast=3137731235729, t=991837068, mean=1.00929e+09, phi=0.982712
Sep 09 02:43:34  scylla_run[7088]: TRACE   [shard 0] gossip - failure_detector: PHI for 172.31.15.223 : 0.982712

Fixes #321
2015-09-16 11:51:44 +03:00
Pekka Enberg
9790cafe49 dist/redhat: Use generated version number in spec file
Fix the hard-coded version number from RPM spec file by using the
SCYLLA-VERSION-GEN script.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-14 11:35:32 +03:00
Takuya ASADA
be2b1cbbb1 dist: support Instance Store as RAID disks
This patch enables to use Instance Store disks for RAID, usable on c3/m3.

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 14:29:22 +00:00
Takuya ASADA
77ea7a4203 dist: do not try to restart when scylla-server fails to startup
It tries to launch again and again, may good for product but bad for developing

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 14:29:15 +00:00
Takuya ASADA
a0157db54a dist: configure large coredump on AMI
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 14:28:59 +00:00
Takuya ASADA
763e8d3f59 dist: install debuginfo on AMI
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 14:28:53 +00:00
Takuya ASADA
7c48bad0ab dist: handle userdata parameters and connect reflector to receive seed list on AMI instance
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 14:28:44 +00:00
Takuya ASADA
b5d47c2b00 dist: we don't need copy of sysconfig file on ami directory anymore, since dir settings in yaml
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 14:28:37 +00:00
Takuya ASADA
1a11314fdc dist: use UUID for mounting RAID disk
Fixes #302

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-10 12:39:36 +03:00
Takuya ASADA
e42382a9d5 dist: add mock to RPM build prerequisites
fixes #313.

Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-09 12:30:21 +03:00
Takuya ASADA
27c325503d dist: configure rpc_address and seeds to local ip address
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 22:53:28 +00:00
Takuya ASADA
96bfa9c326 dist: logging to syslog
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 22:53:28 +00:00
Takuya ASADA
a49aee5083 dist: drop --datadir and --commitlog-directory, set /var/lib/scylla as default in scylla.yaml
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 22:53:28 +00:00
Takuya ASADA
b97884286a dist: build rpms in build/ dir
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 22:53:28 +00:00
Takuya ASADA
8fa868d4e9 dist: use mock rpm instead of rpmbuild
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 15:41:13 +03:00
Takuya ASADA
45502b7110 dist: Dynamically configure scylla.yaml on EC2 instance
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 15:41:13 +03:00
Takuya ASADA
a5dcc39494 dist: fix scylla_run to specify '--network-mode posix' when NETWORK_MODE is posix
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 15:40:08 +03:00
Pekka Enberg
4f5e4a7195 dist/redhat/build_rpm: Use mock to build RPMs
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-03 11:55:01 +03:00
Pekka Enberg
e536d57872 dist/redhat/scylla-server.spec: Limit ninja-build jobs
Our C++ compilation takes up so much memory that we cannot really use
RPM defaults. Limit the number of jobs to 2 for now to fix SIGBUS errors
in VMs as well as swap storm when building with mock.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-03 11:55:01 +03:00
Pekka Enberg
ed78ace390 dist/redhat/scylla-server.spec: Add python3 to build dependencies
Fixes the following build error in clean Fedora chroot when building
with mock:

  /var/tmp/rpm-tmp.xx23K7: ./configure.py: /usr/bin/python3: bad interpreter: No such file or directory
  error: Bad exit status from /var/tmp/rpm-tmp.xx23K7 (%build)

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-03 11:33:27 +03:00
Pekka Enberg
dd861e104d dist/redhat/scylla-server.spec: Kill boost-test dependency
Spotted by Gleb in issue #260.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-02 16:37:44 +03:00
Pekka Enberg
94b80f4dd2 dist/redhat/scylla-server.spec: Simplify DPDK build
Seastar builds DPDK by itself so there's no need to invoke make
ourselves. This ensures that the DPDK configuration we build is correct.

Spotted by Avi.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-01 14:41:30 +03:00
Pekka Enberg
eab436b356 dist/redhat/scylla-server.spec: Only build scylla executable
There's no need to build tests as they're not shipped. Speed up RPM
generation by limiting build to the "scylla" executable.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-01 14:38:24 +03:00
Pekka Enberg
bcb8c9fe34 dist/redhat: Specify options file absolute path for scripts/scylla_run
Fix Scylla service startup issues on Fedora 21 by specifying an absolute
path for options file.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-01 14:38:24 +03:00
Pekka Enberg
e32b5cbafd dist/redhat/scylla-server.spec: Package scylla.yaml
Fix server startup by including scylla.yaml in the generated RPM.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-01 14:38:24 +03:00
Pekka Enberg
027cd5860d dist/redhat/scylla-server.spec: Fix "scylla" user home directory
Fix typo in macro usage.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
2015-09-01 14:38:24 +03:00